summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2019-10-31 19:04:52 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2019-10-31 19:05:04 +0000
commit04813ded982bd74dc4c7116344cb9d28b8f565a3 (patch)
treec6857a73f5be3de9f0574d6b8a6805dfe58c0eed /llvm/lib
parentdb542455dc0f5873851e220bf72a8394767c61fb (diff)
downloadbcm5719-llvm-04813ded982bd74dc4c7116344cb9d28b8f565a3.tar.gz
bcm5719-llvm-04813ded982bd74dc4c7116344cb9d28b8f565a3.zip
Revert rG0e252ae19ff8d99a59d64442c38eeafa5825d441 : [X86] Enable YMM memcmp with AVX1
Breaks build bots Differential Revision: https://reviews.llvm.org/D69658
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86TargetTransformInfo.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
index afbe965ff4f..2f899b3947b 100644
--- a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
+++ b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
@@ -3444,9 +3444,10 @@ X86TTIImpl::enableMemCmpExpansion(bool OptSize, bool IsZeroCmp) const {
// version is not as fast for three way compare (see #33329).
const unsigned PreferredWidth = ST->getPreferVectorWidth();
if (PreferredWidth >= 512 && ST->hasAVX512()) Options.LoadSizes.push_back(64);
- if (PreferredWidth >= 256 && ST->hasAVX()) Options.LoadSizes.push_back(32);
+ if (PreferredWidth >= 256 && ST->hasAVX2()) Options.LoadSizes.push_back(32);
if (PreferredWidth >= 128 && ST->hasSSE2()) Options.LoadSizes.push_back(16);
- // All GPR and vector loads can be unaligned.
+ // All GPR and vector loads can be unaligned. SIMD compare requires integer
+ // vectors (SSE2/AVX2).
Options.AllowOverlappingLoads = true;
}
if (ST->is64Bit()) {
OpenPOWER on IntegriCloud