don't try to use __cpuid() on arm64

This commit is contained in:
Henry Dooley
2021-11-04 18:52:25 -07:00
parent adb5928767
commit 3d0cd6f0dc

View File

@@ -146,10 +146,17 @@ void report_windows_product_type(DWORD ProductType) {
#endif
void odin_cpuid(int leaf, int result[]) {
#if defined(GB_COMPILER_MSVC)
__cpuid(result, leaf);
#else
__get_cpuid(leaf, (unsigned int*)&result[0], (unsigned int*)&result[1], (unsigned int*)&result[2], (unsigned int*)&result[3]);
#if defined(GB_CPU_ARM)
return;
#elif defined(GB_CPU_X86)
#if defined(GB_COMPILER_MSVC)
__cpuid(result, leaf);
#else
__get_cpuid(leaf, (unsigned int*)&result[0], (unsigned int*)&result[1], (unsigned int*)&result[2], (unsigned int*)&result[3]);
#endif
#endif
}