Increment DFAStateEntryTable index for sentinel entry.
authorBrendon Cahoon <bcahoon@codeaurora.org>
Fri, 3 Feb 2012 21:08:25 +0000 (21:08 +0000)
committerBrendon Cahoon <bcahoon@codeaurora.org>
Fri, 3 Feb 2012 21:08:25 +0000 (21:08 +0000)
When adding the {-1, -1} entry to the DFAStateInputTable, we
need to increment the index used to populate the DFAStateEntryTable.
Otherwise, the entry table will be off by one for each transition
after the {-1, -1} entry. PR11908.

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

utils/TableGen/DFAPacketizerEmitter.cpp

index 2862d0cefc14147cafe07dd2c9a867c4af1bef62..5721121dd73f093cab5f8fbf3cdc4722964b7ced 100644 (file)
@@ -311,8 +311,10 @@ void DFA::writeTableAndAPI(raw_ostream &OS, const std::string &TargetName) {
 
     // If there are no valid transitions from this stage, we need a sentinel
     // transition.
-    if (ValidTransitions == StateEntry[i])
+    if (ValidTransitions == StateEntry[i]) {
       OS << "{-1, -1},";
+      ++ValidTransitions;
+    }
 
     OS << "\n";
   }