Fix issue with invalid flat operand number
authorEvandro Menezes <emenezes@codeaurora.org>
Fri, 9 Nov 2012 21:27:03 +0000 (21:27 +0000)
committerEvandro Menezes <emenezes@codeaurora.org>
Fri, 9 Nov 2012 21:27:03 +0000 (21:27 +0000)
Avoid iterating over list of operands beyond the number of operands in it.

PS: this fixes issue with revision #167634.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167635 91177308-0d34-0410-b5e6-96231b3b80d8

utils/TableGen/CodeEmitterGen.cpp

index bcca15cd57e0292f5a651531bba2d81e53a43c5c..3e4f626d4862be32eb91752efb7bc11b7ad09998 100644 (file)
@@ -140,9 +140,7 @@ AddCodeToMergeInOperand(Record *R, BitsInit *BI, const std::string &VarName,
     while (NumberedOp < NumberOps &&
            CGI.Operands.isFlatOperandNotEmitted(NumberedOp))
       ++NumberedOp;
-    // If this operand has not been found, ignore it.
-    if (NumberedOp >= NumberOps)
-      return;
+
     OpIdx = NumberedOp++;
   }