From: Craig Topper Date: Sat, 11 Jun 2016 03:27:37 +0000 (+0000) Subject: [AVX512] No need to check for BWI being enabled before lowering v32i16 and v64i8... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=28b7ea9e78fd07cac8be83fb5da166f9daa83328;p=llvm [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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272449 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index d15cfecebfb..521008c50ca 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/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.