From ce43b04688dd91d93a9e9b4a4327eae11bf7feab Mon Sep 17 00:00:00 2001 From: flysand7 Date: Fri, 10 Nov 2023 05:33:25 +1100 Subject: [PATCH] time on arm64 --- core/sys/linux/sys.odin | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/core/sys/linux/sys.odin b/core/sys/linux/sys.odin index e271a30b9..49022da76 100644 --- a/core/sys/linux/sys.odin +++ b/core/sys/linux/sys.odin @@ -754,7 +754,7 @@ vfork :: proc "contextless" () -> Pid { when ODIN_ARCH != .arm64 { return Pid(syscall(SYS_vfork)) } else { - ret := Pid(syscall(SYS_clone, Signal.SIGCHLD)) + return Pid(syscall(SYS_clone, Signal.SIGCHLD)) } } @@ -2179,8 +2179,14 @@ gettid :: proc "contextless" () -> Pid { Available since Linux 1.0. */ time :: proc "contextless" (tloc: ^uint) -> (Errno) { - ret := syscall(SYS_time, tloc) - return Errno(-ret) + when ODIN_ARCH != .arm64 { + ret := syscall(SYS_time, tloc) + return Errno(-ret) + } else { + ts: Time_Spec + ret := syscall(SYS_clock_gettime, Clock_Id.REALTIME, ts) + tloc^ = ts.time_sec + } } /*