diff options
| author | Craig Topper <craig.topper@gmail.com> | 2016-06-11 03:27:37 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2016-06-11 03:27:37 +0000 |
| commit | b9b86fcfff63bac596714ed7979599714c436cf5 (patch) | |
| tree | 4de25cf813117d97bf2f34ffbcefa76f64d9792c /llvm/lib/Target | |
| parent | 334aa07915cf1f70f3389a4c4801f77a746b0a93 (diff) | |
| download | bcm5719-llvm-b9b86fcfff63bac596714ed7979599714c436cf5.tar.gz bcm5719-llvm-b9b86fcfff63bac596714ed7979599714c436cf5.zip | |
[AVX512] No need to check for BWI being enabled before lowering v32i16 and v64i8 shuffles. If we get this far the types are already legal which means BWI must be enabled.
llvm-svn: 272449
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index d15cfecebfb..521008c50ca 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -11889,20 +11889,13 @@ static SDValue lower512BitVectorShuffle(SDValue Op, SDValue V1, SDValue V2, case MVT::v16i32: return lowerV16I32VectorShuffle(Op, V1, V2, Subtarget, DAG); case MVT::v32i16: - if (Subtarget.hasBWI()) - return lowerV32I16VectorShuffle(Op, V1, V2, Subtarget, DAG); - break; + return lowerV32I16VectorShuffle(Op, V1, V2, Subtarget, DAG); case MVT::v64i8: - if (Subtarget.hasBWI()) - return lowerV64I8VectorShuffle(Op, V1, V2, Subtarget, DAG); - break; + return lowerV64I8VectorShuffle(Op, V1, V2, Subtarget, DAG); default: llvm_unreachable("Not a valid 512-bit x86 vector type!"); } - - // Otherwise fall back on splitting. - return splitAndLowerVectorShuffle(DL, VT, V1, V2, Mask, DAG); } // Lower vXi1 vector shuffles. |

