[X86] combineX86ShufflesRecursively - assert the root mask is legal. NFCI.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 23 Oct 2019 14:33:29 +0000 (07:33 -0700)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 23 Oct 2019 14:33:29 +0000 (07:33 -0700)
llvm/lib/Target/X86/X86ISelLowering.cpp

index ed975e9..9e62858 100644 (file)
@@ -33026,6 +33026,9 @@ static SDValue combineX86ShufflesRecursively(
     ArrayRef<int> RootMask, ArrayRef<const SDNode *> SrcNodes, unsigned Depth,
     bool HasVariableMask, bool AllowVariableMask, SelectionDAG &DAG,
     const X86Subtarget &Subtarget) {
+  assert(RootMask.size() > 0 && (RootMask.size() > 1 || RootMask[0] == 0) &&
+         "Illegal shuffle root mask");
+
   // Bound the depth of our recursive combine because this is ultimately
   // quadratic in nature.
   const unsigned MaxRecursionDepth = 8;