summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/Targets/X86.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2019-05-16 18:28:17 +0000
committerCraig Topper <craig.topper@intel.com>2019-05-16 18:28:17 +0000
commit20040db9a686e9d946cc40acee17d7a00ceeede3 (patch)
treee9618f913cfef2ef0b9ecad71d9b6d97a402325b /clang/lib/Basic/Targets/X86.cpp
parent649bffccca2c6806b180fc44a8e0b5418d966ab1 (diff)
downloadbcm5719-llvm-20040db9a686e9d946cc40acee17d7a00ceeede3.tar.gz
bcm5719-llvm-20040db9a686e9d946cc40acee17d7a00ceeede3.zip
[X86] Stop implicitly enabling avx512vl when avx512bf16 is enabled.
Previously we were doing this so that the 256 bit selectw builtin could be used in the implementation of the 512->256 bit conversion intrinsic. After this commit we now use a masked convert builtin that will emit the intrinsic call and the 256-bit select from custom code in CGBuiltin. Then the header only needs to call that one intrinsic. llvm-svn: 360924
Diffstat (limited to 'clang/lib/Basic/Targets/X86.cpp')
-rw-r--r--clang/lib/Basic/Targets/X86.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/clang/lib/Basic/Targets/X86.cpp b/clang/lib/Basic/Targets/X86.cpp
index b83c9382fc4..44f5fbf5a7d 100644
--- a/clang/lib/Basic/Targets/X86.cpp
+++ b/clang/lib/Basic/Targets/X86.cpp
@@ -661,14 +661,12 @@ void X86TargetInfo::setFeatureEnabledImpl(llvm::StringMap<bool> &Features,
if ((Name.startswith("avx512vbmi") || Name == "avx512bitalg") && Enabled)
Features["avx512bw"] = true;
if (Name == "avx512bf16" && Enabled)
- Features["avx512bw"] = Features["avx512vl"] = true;
+ Features["avx512bw"] = true;
// Also disable VBMI/VBMI2/BITALG if BWI is being disabled.
if (Name == "avx512bw" && !Enabled)
Features["avx512vbmi"] = Features["avx512vbmi2"] =
Features["avx512bf16"] =
Features["avx512bitalg"] = false;
- if (Name == "avx512vl" && !Enabled)
- Features["avx512bf16"] = false;
} else if (Name == "fma") {
if (Enabled)
setSSELevel(Features, AVX, Enabled);
OpenPOWER on IntegriCloud