Update core:sync/sync2 to have a generic Futex interface, and implement the calls appropriately for each platform

This commit is contained in:
gingerBill
2021-10-09 16:33:28 +01:00
parent d386563344
commit 2ef0e6b8f6
11 changed files with 486 additions and 402 deletions
+2 -7
View File
@@ -2,14 +2,9 @@
//+private
package sync2
// TODO(bill): remove libc
foreign import libc "system:c"
import "core:intrinsics"
_current_thread_id :: proc "contextless" () -> int {
foreign libc {
syscall :: proc(number: i32, #c_vararg args: ..any) -> i32 ---
}
SYS_GETTID :: 186
return int(syscall(SYS_GETTID))
return int(intrinsics.syscall(SYS_GETTID))
}