Dave Voutila
0059507374
Fix futex(8) usage on OpenBSD.
2025-03-11 10:28:48 -04:00
Laytan
28c643d23f
riscv compiler support
2024-09-01 21:42:47 +02:00
Laytan Laats
b7b3ada3b1
UL_COMPARE_AND_WAIT_SHARED is macOS 10.15+
2024-08-18 19:31:52 +02:00
Laytan Laats
03426175ae
add workaround for kernel panics on MacOS
2024-07-15 22:45:16 +02:00
gingerBill
a8f84c87ae
Add the permanent and temporary arenas directly on the Thread
2024-07-15 01:05:29 +01:00
gingerBill
d1450e3d88
Fix styling issues
2024-07-14 14:44:22 +01:00
Colin Davidson
64feb7599e
move to isize
2024-07-14 00:33:40 -07:00
Colin Davidson
cdede4928c
move to a growing queue
2024-07-13 23:16:22 -07:00
Andreas T Jonsson
58f07698e8
Added arm64 support for NetBSD
2024-06-05 10:18:47 +02:00
Andreas T Jonsson
b72c2edabb
Merge branch 'master' into netbsd
2024-05-10 09:04:52 +02:00
Feoramund
1165d65c94
Minimally support compiling Odin on FreeBSD arm64
...
This is enough to get Odin itself compiling and the demo running.
2024-05-05 07:26:45 -04:00
Andreas T Jonsson
3000508c02
Switched to native futex on NetBSD
2024-04-25 21:50:34 +02:00
Andreas T Jonsson
80067a959b
Added thread name
...
Call pthread_setname_np with the correct number of arguments on NetBSD.
2024-04-17 09:42:41 +02:00
Andreas T Jonsson
4558f3992a
Initial commit of NetBSD port
2024-04-16 14:27:29 +02:00
gingerBill
3bc7c51325
Merge pull request #3283 from laytan/darwin-new-wait-on-address-api
...
darwin: use new wait on address API if possible
2024-03-27 11:20:32 +00:00
gingerBill
600ca83386
Merge pull request #3326 from rick-masters/fix_fields_wait_signal
...
Fix fields_wait_signal futex.
2024-03-25 13:29:08 +00:00
gingerBill
e5629dafd0
Potentially fix a race condition with parapoly types (related to #3328 )
2024-03-25 13:23:43 +00:00
rick-masters
6d4f30de1a
Fix fields_wait_signal futex.
2024-03-24 16:28:55 +00:00
Laytan Laats
9c455b2213
darwin: use new wait on address API if possible
2024-03-15 21:43:16 +01:00
avanspector
d4d9f55556
Update threading.cpp
2024-03-01 00:41:28 +01:00
avanspector
24c8b15409
small fixes
2024-02-25 02:38:35 +01:00
avanspector
028a79e66c
Update threading.cpp
2024-02-25 02:34:41 +01:00
avanspector
824c831190
Implement futex
2024-02-24 23:46:55 +01:00
Slendi
c178f7199d
Get Odin to compile on Haiku
...
This patch makes Odin to compile on Haiku which is a good first step.
Now, all that's needed to do is to figure out how to do futexes, which
I am blaming for the program crashing.
2024-02-15 15:51:28 +02:00
gingerBill
c5c2a4d09d
Fix typo
2024-02-13 17:13:39 +00:00
gingerBill
d496dbf3a0
Fix race condition with #soa
2024-02-13 16:54:41 +00:00
gingerBill
cbfb32c34c
Fix race condition with regards to #soa arrays by using the fields mutex
2024-02-13 16:21:41 +00:00
Stan Irvin-Wilmot
7b53dbeb8a
fix loop condition on compare_exhange_strong result in semaphore_wait - it was backwards so would loop on success and bail on fail
2024-01-10 15:53:00 +00:00
Paco Pascal
d9fab5e824
Return value of _umtx_op on FreeBSD wasn't checked correctly
2023-11-18 20:56:22 -05:00
gingerBill
8b4c530062
Disable HAS_VALGRIND logic for BlockingMutex ( fixes #2703 )
2023-08-16 11:02:09 +01:00
gingerBill
6909e0d774
Minor changes to Semaphore to make it trivially copyable
2023-01-18 15:41:39 +00:00
gingerBill
4a8564aff7
Update threading.cpp to have helgrind annotations
2023-01-16 19:23:13 +00:00
gingerBill
15469758de
Merge branch 'master' into compiler-improvements-2023-01
2023-01-10 16:25:38 +00:00
Colin Davidson
a58650728e
fix futex error handling
2023-01-05 01:27:37 -08:00
gingerBill
d06a0e7093
Improve the PtrSet to be as simple and small as possible
2023-01-04 13:30:27 +00:00
gingerBill
c7a704d345
Use RwMutex for the Scope
2023-01-03 15:26:47 +00:00
gingerBill
0fb3032b73
General improves to alloc_ast_node and other unnecessary checks
2023-01-03 14:45:09 +00:00
gingerBill
bc9ee8e1a4
Remove loops within futex signals on Linux
2023-01-02 22:13:49 +00:00
gingerBill
52b319dbfd
Fix darwin's futex implementation in the compiler
2023-01-02 21:53:41 +00:00
gingerBill
0e040be941
Add define for darwin
2023-01-02 17:49:16 +00:00
gingerBill
9737b65d9c
Explicitly call store for futex
2023-01-02 17:18:59 +00:00
gingerBill
c293f5b7eb
Remove unneeded mutex
2023-01-02 16:56:05 +00:00
gingerBill
da479c7628
Minor style change
2023-01-02 00:35:12 +00:00
gingerBill
3c90a05957
Replace condition+mutex with futex
2023-01-02 00:26:17 +00:00
gingerBill
5c519f0e8d
Remove the synchronization primitive init/destroy calls
2023-01-01 16:19:21 +00:00
gingerBill
74e6d9144e
Get around the std::atomic issue
2023-01-01 16:15:35 +00:00
gingerBill
20d451396d
Begin work on futex-ifying the threading primitives
2023-01-01 15:06:57 +00:00
gingerBill
60d0390ef8
Unify compiler Futex interface
2023-01-01 14:48:31 +00:00
Colin Davidson
27ba1d596c
rework openbsd futexes a little
2022-12-29 12:00:16 -08:00
Colin Davidson
98e5523f2f
cover openbsd too
2022-12-29 11:46:43 -08:00