From babfba5e8fd7be50e394d426be2db07c477e538d Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 29 May 2022 13:48:20 +0100 Subject: [PATCH] Add rdtsc.odin --- core/simd/x86/rdtsc.odin | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 core/simd/x86/rdtsc.odin diff --git a/core/simd/x86/rdtsc.odin b/core/simd/x86/rdtsc.odin new file mode 100644 index 000000000..0527fc084 --- /dev/null +++ b/core/simd/x86/rdtsc.odin @@ -0,0 +1,19 @@ +//+build i386, amd64 +package simd_x86 + +_rdtsc :: #force_inline proc "c" () -> u64 { + return rdtsc() +} + +__rdtscp :: #force_inline proc "c" (aux: ^u32) -> u64 { + return rdtscp(aux) +} + +@(default_calling_convention="c") +@(private) +foreign _ { + @(link_name="llvm.x86.rdtsc") + rdtsc :: proc() -> u64 --- + @(link_name="llvm.x86.rdtscp") + rdtscp :: proc(aux: rawptr) -> u64 --- +} \ No newline at end of file