diff options
Diffstat (limited to 'Source/Core/Common/ArmCPUDetect.cpp')
| -rw-r--r-- | Source/Core/Common/ArmCPUDetect.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/Core/Common/ArmCPUDetect.cpp b/Source/Core/Common/ArmCPUDetect.cpp index a603ff03fd..1cee6ad77b 100644 --- a/Source/Core/Common/ArmCPUDetect.cpp +++ b/Source/Core/Common/ArmCPUDetect.cpp @@ -8,6 +8,7 @@ #include <string> #include <thread> +#ifndef __APPLE__ #ifndef _WIN32 #ifndef __FreeBSD__ #include <asm/hwcap.h> @@ -15,6 +16,7 @@ #include <sys/auxv.h> #include <unistd.h> #endif +#endif #include <fmt/format.h> @@ -71,7 +73,17 @@ void CPUInfo::Detect() vendor = CPUVendor::ARM; bFlushToZero = true; -#ifdef _WIN32 +#ifdef __APPLE__ + num_cores = std::thread::hardware_concurrency(); + + // M-series CPUs have all of these + bFP = true; + bASIMD = true; + bAES = true; + bSHA1 = true; + bSHA2 = true; + bCRC32 = true; +#elif defined(_WIN32) num_cores = std::thread::hardware_concurrency(); // Windows does not provide any mechanism for querying the system registers on ARMv8, unlike Linux |
