core/simd/x86: Use the none calling convention for intrinsics

The LLVM intrinsics that live under `llvm.x86` are not actual functions,
so trying to invoke them as such using the platform's native C
calling convention causes incorrect types to be emitted in the IR.

Thanks to laytanl for assistance in testing.
This commit is contained in:
Yawning Angel
2024-01-07 20:04:40 +09:00
parent cd65a15d81
commit 8d7c37e384
11 changed files with 11 additions and 11 deletions
+1 -1
View File
@@ -11,7 +11,7 @@ __rdtscp :: #force_inline proc "c" (aux: ^u32) -> u64 {
return rdtscp(aux)
}
@(private, default_calling_convention="c")
@(private, default_calling_convention="none")
foreign _ {
@(link_name="llvm.x86.rdtsc")
rdtsc :: proc() -> u64 ---