summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2017-12-27 22:26:01 +0000
committerCraig Topper <craig.topper@intel.com>2017-12-27 22:26:01 +0000
commit520d055f66277541337c686944f47fb871bdd25b (patch)
tree0f6243d399d814f4c08f75664d751c30bc83f8ce /clang/lib/Basic
parent5bd93e99e2b656aca528190e60c8b098585dcb9a (diff)
downloadbcm5719-llvm-520d055f66277541337c686944f47fb871bdd25b.tar.gz
bcm5719-llvm-520d055f66277541337c686944f47fb871bdd25b.zip
[X86] Don't accidentally enable PKU on cannon lake and icelake or CLWB on cannonlake.
We have cannonlake and icelake inheriting from skylake server in a switch using fallthroughs. But they aren't perfect supersets of skylake server. llvm-svn: 321504
Diffstat (limited to 'clang/lib/Basic')
-rw-r--r--clang/lib/Basic/Targets/X86.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Basic/Targets/X86.cpp b/clang/lib/Basic/Targets/X86.cpp
index 097d9178c68..3efba26a837 100644
--- a/clang/lib/Basic/Targets/X86.cpp
+++ b/clang/lib/Basic/Targets/X86.cpp
@@ -152,8 +152,10 @@ bool X86TargetInfo::initFeatureMap(
setFeatureEnabledImpl(Features, "avx512dq", true);
setFeatureEnabledImpl(Features, "avx512bw", true);
setFeatureEnabledImpl(Features, "avx512vl", true);
- setFeatureEnabledImpl(Features, "pku", true);
- setFeatureEnabledImpl(Features, "clwb", true);
+ if (Kind == CK_SkylakeServer) {
+ setFeatureEnabledImpl(Features, "pku", true);
+ setFeatureEnabledImpl(Features, "clwb", true);
+ }
LLVM_FALLTHROUGH;
case CK_SkylakeClient:
setFeatureEnabledImpl(Features, "xsavec", true);
OpenPOWER on IntegriCloud