diff options
author | Chris Lattner <sabre@nondot.org> | 2006-01-28 10:09:25 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-01-28 10:09:25 +0000 |
commit | 809ec110885ad7cc820889d789b06aaa3ea7358f (patch) | |
tree | 24ffad6a877a33b65dfd1ac14ea3b919fe3f5d6a /lib/CodeGen/SelectionDAG/SelectionDAG.cpp | |
parent | 9b88361befd2a94202dc60ccfb3e31756916a9ca (diff) |
add another method variant
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25744 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAG.cpp')
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index 054a5cc224..1b12d31173 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -317,7 +317,8 @@ void SelectionDAG::RemoveNodeFromCSEMaps(SDNode *N) { Erased = ExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol()); break; case ISD::TargetExternalSymbol: - Erased = TargetExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol()); + Erased = + TargetExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol()); break; case ISD::VALUETYPE: Erased = ValueTypeNodes[cast<VTSDNode>(N)->getVT()] != 0; @@ -416,7 +417,7 @@ SDNode *SelectionDAG::AddNonLeafNodeToCSEMaps(SDNode *N) { } else { std::vector<SDOperand> Ops(N->op_begin(), N->op_end()); SDNode *&ORN = OneResultNodes[std::make_pair(N->getOpcode(), - std::make_pair(N->getValueType(0), Ops))]; + std::make_pair(N->getValueType(0), Ops))]; if (ORN) return ORN; ORN = N; } @@ -687,7 +688,8 @@ SDOperand SelectionDAG::getExternalSymbol(const char *Sym, MVT::ValueType VT) { return SDOperand(N, 0); } -SDOperand SelectionDAG::getTargetExternalSymbol(const char *Sym, MVT::ValueType VT) { +SDOperand SelectionDAG::getTargetExternalSymbol(const char *Sym, + MVT::ValueType VT) { SDNode *&N = TargetExternalSymbols[Sym]; if (N) return SDOperand(N, 0); N = new ExternalSymbolSDNode(true, Sym, VT); @@ -1728,6 +1730,19 @@ UpdateNodeOperands(SDOperand N, SDOperand Op1, SDOperand Op2, } SDOperand SelectionDAG:: +UpdateNodeOperands(SDOperand N, SDOperand Op1, SDOperand Op2, + SDOperand Op3, SDOperand Op4, SDOperand Op5) { + std::vector<SDOperand> Ops; + Ops.push_back(Op1); + Ops.push_back(Op2); + Ops.push_back(Op3); + Ops.push_back(Op4); + Ops.push_back(Op5); + return UpdateNodeOperands(N, Ops); +} + + +SDOperand SelectionDAG:: UpdateNodeOperands(SDOperand InN, const std::vector<SDOperand> &Ops) { SDNode *N = InN.Val; assert(N->getNumOperands() == Ops.size() && |