summaryrefslogtreecommitdiff
path: root/Source/Core/Common/ArmCPUDetect.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2021-05-24 12:39:01 +0200
committerGitHub <noreply@github.com>2021-05-24 12:39:01 +0200
commit51671921c4c010476ec1150703d7d62bfcde630c (patch)
tree61e49480d432fe0db4f37d98abbbe0fc2191cf87 /Source/Core/Common/ArmCPUDetect.cpp
parented331291d120cf45f7f852a7be39909a389baa6e (diff)
parent210f6e7f0d44b199f303182367597f05cefe48f2 (diff)
Merge pull request #9441 from skylersaleh/master
Apple M1 Support for MacOS
Diffstat (limited to 'Source/Core/Common/ArmCPUDetect.cpp')
-rw-r--r--Source/Core/Common/ArmCPUDetect.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/Source/Core/Common/ArmCPUDetect.cpp b/Source/Core/Common/ArmCPUDetect.cpp
index a603ff03fd..4100df9f82 100644
--- a/Source/Core/Common/ArmCPUDetect.cpp
+++ b/Source/Core/Common/ArmCPUDetect.cpp
@@ -8,7 +8,7 @@
#include <string>
#include <thread>
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(__APPLE__)
#ifndef __FreeBSD__
#include <asm/hwcap.h>
#endif
@@ -71,7 +71,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