summaryrefslogtreecommitdiffstats
path: root/src/common/x64
diff options
context:
space:
mode:
authorMorph <39850852+Morph1984@users.noreply.github.com>2020-05-16 13:24:57 +0200
committerMorph <39850852+Morph1984@users.noreply.github.com>2020-06-20 06:31:37 +0200
commitd6474b4aca7f054d00df350c716709475ef0f49b (patch)
tree350f48b2963f2d82b0575865145a386ee61e6988 /src/common/x64
parentMerge pull request #4099 from MerryMage/macOS-build (diff)
downloadyuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar.gz
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar.bz2
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar.lz
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar.xz
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.tar.zst
yuzu-d6474b4aca7f054d00df350c716709475ef0f49b.zip
Diffstat (limited to 'src/common/x64')
-rw-r--r--src/common/x64/cpu_detect.cpp5
-rw-r--r--src/common/x64/cpu_detect.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/common/x64/cpu_detect.cpp b/src/common/x64/cpu_detect.cpp
index c9349a6b4..f35dcb498 100644
--- a/src/common/x64/cpu_detect.cpp
+++ b/src/common/x64/cpu_detect.cpp
@@ -110,6 +110,11 @@ static CPUCaps Detect() {
caps.bmi1 = true;
if ((cpu_id[1] >> 8) & 1)
caps.bmi2 = true;
+ // Checks for AVX512F, AVX512CD, AVX512VL, AVX512DQ, AVX512BW (Intel Skylake-X/SP)
+ if ((cpu_id[1] >> 16) & 1 && (cpu_id[1] >> 28) & 1 && (cpu_id[1] >> 31) & 1 &&
+ (cpu_id[1] >> 17) & 1 && (cpu_id[1] >> 30) & 1) {
+ caps.avx512 = caps.avx2;
+ }
}
}
diff --git a/src/common/x64/cpu_detect.h b/src/common/x64/cpu_detect.h
index 20f2ba234..7606c3f7b 100644
--- a/src/common/x64/cpu_detect.h
+++ b/src/common/x64/cpu_detect.h
@@ -19,6 +19,7 @@ struct CPUCaps {
bool lzcnt;
bool avx;
bool avx2;
+ bool avx512;
bool bmi1;
bool bmi2;
bool fma;