fix frequency grab

This commit is contained in:
Colin Davidson
2025-06-08 16:16:34 -07:00
parent f1fdd1a8b9
commit b1ed22d84f
2 changed files with 9 additions and 3 deletions
+2 -2
View File
@@ -123,7 +123,7 @@ x86_thread_state32_t :: struct {
}
X86_THREAD_STATE32_COUNT :: size_of(x86_thread_state32_t) / size_of(u32)
x86_thread_state64_t :: struct {
x86_thread_state64_t :: struct #packed {
rax: u64,
rbx: u64,
rcx: u64,
@@ -148,7 +148,7 @@ x86_thread_state64_t :: struct {
}
X86_THREAD_STATE64_COUNT :: size_of(x86_thread_state64_t) / size_of(u32)
arm_thread_state64_t :: struct {
arm_thread_state64_t :: struct #packed {
x: [29]u64,
fp: u64,
lr: u64,
+7 -1
View File
@@ -4,7 +4,13 @@ package time
import "core:sys/unix"
_get_tsc_frequency :: proc "contextless" () -> (freq: u64, ok: bool) {
unix.sysctlbyname("machdep.tsc.frequency", &freq) or_return
if ODIN_ARCH == .amd64 {
unix.sysctlbyname("machdep.tsc.frequency", &freq) or_return
} else if ODIN_ARCH == .arm64 {
unix.sysctlbyname("hw.tbfrequency", &freq) or_return
} else {
return
}
ok = true
return
}