diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-01-06 17:00:59 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-01-06 17:00:59 +0000 |
| commit | bd3c6824d494d008d6ff148ed20ca0e1726bb62f (patch) | |
| tree | 3b0ebf1e431b8b7c2f4819b4b568a61a73dde6f3 | |
| parent | de70a8807fae86da7c58b59d63326203cc95b489 (diff) | |
| download | bcm5719-llvm-bd3c6824d494d008d6ff148ed20ca0e1726bb62f.tar.gz bcm5719-llvm-bd3c6824d494d008d6ff148ed20ca0e1726bb62f.zip | |
[X86][SSE] Simplify float domain requirement in unary shuffle matching.
The AVX1-only limit is never actually required in matchUnaryVectorShuffle
llvm-svn: 291244
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index a255c502046..aed6134edaf 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -25961,8 +25961,7 @@ static bool matchUnaryVectorShuffle(MVT MaskVT, ArrayRef<int> Mask, unsigned &Shuffle, MVT &SrcVT, MVT &DstVT) { unsigned NumMaskElts = Mask.size(); unsigned MaskEltSize = MaskVT.getScalarSizeInBits(); - bool FloatDomain = MaskVT.isFloatingPoint() || - (!Subtarget.hasAVX2() && MaskVT.is256BitVector()); + bool FloatDomain = MaskVT.isFloatingPoint(); // Match against a VZEXT_MOVL instruction, SSE1 only supports 32-bits (MOVSS). if (((MaskEltSize == 32) || (MaskEltSize == 64 && Subtarget.hasSSE2())) && |

