gingerBill
b04bc21ec6
Merge pull request #704 from oskarnp/log_thread_id
...
Add .Thread_Id option to log package
2020-07-22 22:27:53 +01:00
Oskar Nordquist
36cac87387
Add .Thread_Id option to log package
2020-07-22 17:42:01 +02:00
Oskar Nordquist
a7e38dc063
Implement os.current_thread_id() for Darwin (assumes OSX 10.6 / iOS 3.2 and later)
2020-07-22 17:38:13 +02:00
gingerBill
3a1492fc99
Add sync.Wait_Group
2020-07-15 00:25:37 +01:00
gingerBill
7ae54ae3b4
Add -no-dynamic-literals to disallow dynamic array and map literals
2020-07-14 23:01:34 +01:00
gingerBill
b2beb9512f
Add thread.join_multiple
2020-07-14 21:08:04 +01:00
gingerBill
96ad6d2084
Improve sync.Channel behaviour
2020-07-14 18:43:50 +01:00
gingerBill
6565a49e34
Remove fmt from sync/channel.odin
2020-07-14 16:39:47 +01:00
gingerBill
ce85b73eca
Add sync.Once
2020-07-14 16:38:54 +01:00
gingerBill
fc65aee307
Update sync.Channel
2020-07-14 16:37:29 +01:00
jharler
f9a6777e3a
Added "sep" parameter to logging procs
2020-07-13 08:22:41 -04:00
Clay Murray
83eabe2140
Fix pthread_t on Macos.
...
From some testing with directly using C code, pthread_t on macos is 8 bytes.
This is my test code:
```
#include <assert.h>
#include <stdio.h>
#include <pthread.h>
void* PosixThreadMainRoutine(void* data)
{
// Do some work here.
for (int i = 0; i < 2000000000; i++) {
}
return NULL;
}
pthread_t LaunchThread()
{
// Create the thread using POSIX routines.
pthread_attr_t attr;
pthread_t posixThreadID;
int returnVal;
returnVal = pthread_attr_init(&attr);
assert(!returnVal);
returnVal = pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE);
assert(!returnVal);
int threadError = pthread_create(&posixThreadID, &attr, &PosixThreadMainRoutine, NULL);
returnVal = pthread_attr_destroy(&attr);
assert(!returnVal);
if (threadError != 0)
{
// Report an error.
}
return posixThreadID;
}
int main() {
pthread_t t = LaunchThread();
void ** ret;
printf("%d, %d\n", sizeof(t), sizeof(pthread_t));
int val = pthread_join(t, ret);
printf("%d", val);
return 0;
}
```
running this on macos reports `8, 8`.
Then I made the proposed changes and errors I was having with threads completely went away.
2020-07-11 18:22:56 -06:00
gingerBill
c4067372dd
Fix double declaration
2020-07-10 22:28:48 +01:00
gingerBill
b4e976364a
Add path_unix.odin
2020-07-10 08:42:59 +01:00
gingerBill
642afa4f88
Fix new package path
2020-07-10 08:42:22 +01:00
gingerBill
f65fa0e4a6
Merge pull request #339 from dotbmp/master
...
"core:path" Path library and "core:strings" `split` Utilities
2020-07-10 08:25:24 +01:00
gingerBill
65b9dbe13f
Clean-up OS constants; Clean-up procs_wasm32.odin
2020-07-09 17:21:40 +01:00
gingerBill
94ba182691
Add sync.Benaphore
2020-07-08 23:16:54 +01:00
gingerBill
5b7c83d871
Add strings.pop_byte strings.pop_rune
2020-07-08 23:15:48 +01:00
gingerBill
4059542afb
Merge pull request #673 from kevinw/patch-2
...
add `#config` to odin parser
2020-07-08 23:08:31 +01:00
Mikkel Hjortshoej
d749f5c704
Fix typo
2020-07-02 16:13:49 +02:00
Mikkel Hjortshoej
83f553cd89
Revert to old format and fix : when no file opt specified
2020-07-02 16:11:41 +02:00
Mikkel Hjortshoej
730f9ee0b3
Fix misplaced line number (was wrongly formatted and before procedure)
2020-07-02 15:31:40 +02:00
gingerBill
51e50d3e31
Add intrinsics.type_proc_parameter_type; Add intrinsics.type_proc_return_type
2020-07-01 22:35:38 +01:00
gingerBill
92363da58e
Add -show-system-calls; Update runtime for windows_386; Fix some minor bugs
2020-06-30 10:09:58 +01:00
gingerBill
0ea64182f1
Begin work on windows 386
2020-06-29 17:35:33 +01:00
gingerBill
8478b887a5
Add mem.check_zero and mem.check_zero_ptr
2020-06-29 16:17:40 +01:00
gingerBill
86448ee044
Add raw_data to replace cases in which &x[0] was used
2020-06-29 15:58:24 +01:00
gingerBill
56a52a1d06
Add sync.condition_wait_for_timeout for unix
2020-06-27 12:21:31 +01:00
gingerBill
858c5f8fd8
Update thread_unix logic
2020-06-27 11:36:48 +01:00
gingerBill
f92b4c7849
Update sys/unix; Rename thread.create_and_start
2020-06-27 11:26:38 +01:00
gingerBill
9fdebebd28
Add sync.Barrier; Add sync.Blocking_Mutex for unix
2020-06-27 11:23:37 +01:00
gingerBill
2b18f43b65
Update sys/windows; Add sync.Blocking_Mutex (windows only at the moment)
2020-06-27 00:59:40 +01:00
gingerBill
53e1512978
Add more exception handling stuff to sys/windows
2020-06-26 20:42:17 +01:00
gingerBill
b5f9c95ce7
Remove foreign import for -vet
2020-06-26 20:33:47 +01:00
gingerBill
231f91304a
Keep previous behaviour for sync but move to sys/windows
2020-06-26 20:30:33 +01:00
gingerBill
d7b3f3a0e7
Revert sync_windows.odin
2020-06-26 20:22:48 +01:00
gingerBill
bb81d4869f
Update sys/windows
2020-06-26 20:09:31 +01:00
gingerBill
b633a42bc2
Revert channel.odin
2020-06-26 19:16:17 +01:00
gingerBill
6bd05ef5d7
Begin migration from sys/win32 to sys/windows
2020-06-26 19:11:34 +01:00
gingerBill
251a3a690e
Add optional sep parameter to fmt.*print and fmt.*println procedures
2020-06-25 15:00:50 +01:00
gingerBill
a6edcf4f18
Fix ABI typo bug; Add pop_safe and pop_front_safe
2020-06-22 21:03:57 +01:00
gingerBill
2a598aa061
Update sync.Channel
2020-06-22 17:45:01 +01:00
gingerBill
2b27300387
Fix LLVM code gen bug
2020-06-22 16:57:21 +01:00
gingerBill
0db1ebb4e5
-vet sync/channel.odin
2020-06-22 16:01:26 +01:00
gingerBill
f00123742c
Add experimental sync.Channel
2020-06-22 15:54:35 +01:00
gingerBill
509e8b512f
Add time.read_cycle_counter
2020-06-22 15:54:19 +01:00
gingerBill
2562df5387
Remove unused imports in thread.odin
2020-06-22 13:35:44 +01:00
gingerBill
0ab356aa4e
Fix sync and thread on *nix
2020-06-22 13:32:58 +01:00
gingerBill
b3c51a8b44
Add thread.run* shorthand procedures; Thread.init_context use new Maybe concept
2020-06-22 13:28:37 +01:00