summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-02-21 07:55:48 +0000
committerChris Lattner <sabre@nondot.org>2010-02-21 07:55:48 +0000
commit4e5d6788b305dae97dc09cc231b6a5497b5f96ea (patch)
treea7141416fe27de539fe79e5bfff0b12a0ccc6951
parent1e29fcd067bec4aa17f9b3bb817f6cba66a4e417 (diff)
downloadbcm5719-llvm-4e5d6788b305dae97dc09cc231b6a5497b5f96ea.tar.gz
bcm5719-llvm-4e5d6788b305dae97dc09cc231b6a5497b5f96ea.zip
when a match fails and we have to rollback, make sure to keep 'N' in
sync with the top of stack. This fixes a bunch of failures on larger testcases. llvm-svn: 96732
-rw-r--r--llvm/include/llvm/CodeGen/DAGISelHeader.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/include/llvm/CodeGen/DAGISelHeader.h b/llvm/include/llvm/CodeGen/DAGISelHeader.h
index 1e808ed217d..42583ec18b1 100644
--- a/llvm/include/llvm/CodeGen/DAGISelHeader.h
+++ b/llvm/include/llvm/CodeGen/DAGISelHeader.h
@@ -760,6 +760,7 @@ SDNode *SelectCodeCommon(SDNode *NodeToMatch, const unsigned char *MatcherTable,
const MatchScope &LastScope = MatchScopes.back();
RecordedNodes.resize(LastScope.NumRecordedNodes);
NodeStack.resize(LastScope.NodeStackSize);
+ N = NodeStack.back();
if (LastScope.NumMatchedMemRefs != MatchedMemRefs.size())
MatchedMemRefs.resize(LastScope.NumMatchedMemRefs);
OpenPOWER on IntegriCloud