From ddba74567c9f6e9cf4596ea9b052d254a0ee50f6 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 17 Feb 2024 12:00:15 +0100 Subject: Dep/g3d: Support ARM with MSVC --- dep/g3dlite/source/System.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'dep/g3dlite/source/System.cpp') diff --git a/dep/g3dlite/source/System.cpp b/dep/g3dlite/source/System.cpp index 4a75d320b8d..1c7d913929c 100644 --- a/dep/g3dlite/source/System.cpp +++ b/dep/g3dlite/source/System.cpp @@ -79,7 +79,7 @@ #endif // SIMM include -#if !defined(__aarch64__) +#if !defined(_M_ARM) && !defined(_M_ARM64) && !defined(_M_HYBRID_X86_ARM64) && !defined(_M_ARM64EC) && !defined(__aarch64__) #include #endif @@ -211,6 +211,10 @@ void System::init() { arch = "ARM"; break; + case PROCESSOR_ARCHITECTURE_ARM64: + arch = "ARM64"; + break; + default: arch = "Unknown"; break; @@ -1690,8 +1694,12 @@ std::string System::currentTimeString() { // Windows 64-bit void System::cpuid(CPUIDFunction func, uint32& eax, uint32& ebx, uint32& ecx, uint32& edx) { +#if !defined(_M_ARM) && !defined(_M_ARM64) && !defined(_M_HYBRID_X86_ARM64) && !defined(_M_ARM64EC) int regs[4] = {eax, ebx, ecx, edx}; __cpuid(regs, func); +#else + int regs[4] = { 0, 0, 0, 0 }; +#endif eax = regs[0]; ebx = regs[1]; ecx = regs[2]; -- cgit v1.2.3