From: Chris Lattner Date: Tue, 18 Jan 2005 19:26:36 +0000 (+0000) Subject: Keep track of the retval type as well. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=4a9b4f1943c6c56c749c8709ed28680408afc577;p=oota-llvm.git Keep track of the retval type as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19670 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index 43f13d71fcd..3da2f5fe7ab 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -218,7 +218,9 @@ void SelectionDAG::DeleteNodeIfDead(SDNode *N, void *NodeSet) { case ISD::SETCC: SetCCs.erase(std::make_pair(std::make_pair(N->getOperand(0), N->getOperand(1)), - cast(N)->getCondition())); + std::make_pair( + cast(N)->getCondition(), + N->getValueType(0)))); break; case ISD::TRUNCSTORE: case ISD::SIGN_EXTEND_INREG: @@ -463,7 +465,8 @@ SDOperand SelectionDAG::getSetCC(ISD::CondCode Cond, MVT::ValueType VT, } } - SetCCSDNode *&N = SetCCs[std::make_pair(std::make_pair(N1, N2), Cond)]; + SetCCSDNode *&N = SetCCs[std::make_pair(std::make_pair(N1, N2), + std::make_pair(Cond, VT))]; if (N) return SDOperand(N, 0); N = new SetCCSDNode(Cond, N1, N2); N->setValueTypes(VT);