Commit Graph

71 Commits

Author SHA1 Message Date
gingerBill
f0437a4242 Enforce core:builtin and core:intrinsics for imports 2021-08-21 13:44:16 +01:00
gingerBill
df159dbae7 Add some missing files to sync2 for linux and darwin 2021-08-16 15:48:54 +01:00
gingerBill
4035fec784 Add more uses of or_return 2021-08-15 18:13:56 +01:00
gingerBill
3e7aabe6d8 Change uses for parapoly records to use $ always 2021-06-14 11:43:35 +01:00
gingerBill
86649e6b44 Core library clean up: Make range expressions more consistent and replace uses of .. with ..= 2021-06-14 11:15:25 +01:00
gingerBill
fb8ad338d0 Keep -vet happy 2021-06-08 18:26:38 +01:00
gingerBill
8ec2ca9dcd Remove context.thread_id 2021-06-08 15:57:00 +01:00
gingerBill
fe74b479c6 Begin changes to sync2 2021-05-20 21:02:05 +01:00
gingerBill
a580cdbe7b Delete core:sync/sync2/channel* stuff (for the time being) 2021-05-19 10:50:27 +01:00
gingerBill
502ad0c10b sync2.Auto_Reset_Event; Make atomic operations names clearer 2021-05-06 14:00:01 +01:00
gingerBill
ffffb04d85 Remove unused import 2021-04-27 17:21:52 +01:00
gingerBill
17390cd317 Implement sync2.Recursive_Mutex using WaitOnAddress and friends on Windows 2021-04-27 17:19:12 +01:00
gingerBill
7ac80544a1 Max sync2.Sema on windows be i32 for the counter internally. 2021-04-27 16:59:25 +01:00
gingerBill
96b60d8779 Reimplement sync2.Sema on windows with WaitOnAddress primitives 2021-04-27 16:56:11 +01:00
gingerBill
158e4c0b6c Add @(cold) tag 2021-04-22 10:35:37 +01:00
gingerBill
05a181d719 Fix style issues; Use new attribute @(cold) where appropriate in the new sync package 2021-04-14 20:19:02 +01:00
gingerBill
bee8beb2c9 Default to pthreads in sync2 for *nix 2021-04-13 19:04:44 +01:00
gingerBill
4fb4ada2c7 Update sync2 to just use atomic intrinsics rather than the parapoly wrappers 2021-04-12 15:22:40 +01:00
gingerBill
1156bd9dd0 Remove thread stuff from sync2; Cleanup package thread 2021-04-11 18:25:56 +01:00
gingerBill
52c193316b Add Thread stuff to new sync package 2021-04-11 15:36:55 +01:00
gingerBill
2db1fe7429 New redesign of core:sync (stored under core:sync/sync2 for the time being) 2021-04-11 15:18:28 +01:00
gingerBill
b727b6438b Minimize unneeded casts 2021-03-03 14:31:17 +00:00
gingerBill
aa93305015 Replace usage of inline proc with #force_inline proc in the core library 2021-02-23 16:14:47 +00:00
gingerBill
98ad912509 Fix typo 2020-12-27 16:16:04 +00:00
gingerBill
95b94a0f56 Fix sync.Channel code; add thread.run_with_poly_data and run_with_poly_data(2|3|4) procedures 2020-11-10 15:00:40 +00:00
gingerBill
eea3a1ecd3 Improve sync.Channel to encode the direction into the type 2020-11-09 13:05:02 +00:00
Christian Seibold
577be4a8ae Get Odin compiling and produced exe's running on FreeBSD 2020-09-14 15:22:35 -05:00
gingerBill
6158a49618 Make sync.atomic_* operations use when statements instead of switch; Make #panic diverging 2020-08-16 12:34:12 +01:00
gingerBill
804b96a985 Remove unused entities 2020-08-02 15:11:21 +01:00
gingerBill
9cc20954a3 Add sys/windows/synchronization.odin 2020-08-02 15:07:52 +01:00
gingerBill
91ff3e5bca Add sync/channel_*.odin files 2020-08-02 15:05:04 +01:00
gingerBill
6d032e6f1a Update package sync 2020-08-02 15:01:17 +01:00
gingerBill
3a1492fc99 Add sync.Wait_Group 2020-07-15 00:25:37 +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
fc65aee307 Update sync.Channel 2020-07-14 16:37:29 +01:00
gingerBill
94ba182691 Add sync.Benaphore 2020-07-08 23:16:54 +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
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
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
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
2a598aa061 Update sync.Channel 2020-06-22 17:45:01 +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
0ab356aa4e Fix sync and thread on *nix 2020-06-22 13:32:58 +01:00