From: Chris Lattner Date: Sun, 21 Feb 2010 07:55:48 +0000 (+0000) Subject: when a match fails and we have to rollback, make sure to keep 'N' in X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=863cc971e85950c3d2408306d03c9d70186356a2;p=oota-llvm.git 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96732 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/CodeGen/DAGISelHeader.h b/include/llvm/CodeGen/DAGISelHeader.h index 1e808ed217d..42583ec18b1 100644 --- a/include/llvm/CodeGen/DAGISelHeader.h +++ b/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);