blob: 2efd35f200fb84b8d2061bed7d2fbd1c13936f43 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#+private
package time
import "base:intrinsics"
@require import "core:sys/unix"
_get_tsc_frequency :: proc "contextless" () -> (freq: u64, ok: bool) {
when ODIN_ARCH == .amd64 {
unix.sysctlbyname("machdep.tsc.frequency", &freq) or_return
} else when ODIN_ARCH == .arm64 {
freq = u64(intrinsics.read_cycle_counter_frequency())
} else {
return
}
ok = true
return
}
|