diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index e113dbc6760..6ea5ee15d02 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -6393,7 +6393,8 @@ static bool getFauxShuffleMask(SDValue N, SmallVectorImpl<int> &Mask, return false; SmallVector<int, 64> SubMask; SmallVector<SDValue, 2> SubInputs; - if (!resolveTargetShuffleInputs(Sub, SubInputs, SubMask, DAG)) + if (!resolveTargetShuffleInputs(Sub, SubInputs, SubMask, DAG) || + SubMask.size() != NumSubElts) return false; Ops.push_back(Src); for (SDValue &SubInput : SubInputs) { |