aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAG.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAG.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index 3643f77f93..d95b387ead 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -1359,14 +1359,13 @@ SDOperand SelectionDAG::getNode(unsigned Opcode, MVT::ValueType VT,
SDOperand SelectionDAG::getNode(unsigned Opcode, MVT::ValueType VT,
SDOperand N1, SDOperand N2, SDOperand N3,
SDOperand N4) {
- assert(Opcode == ISD::STORE && "Only stores should use this");
-
- SDNode *N = new SDNode(Opcode, N1, N2, N3, N4);
- N->setValueTypes(VT);
-
- // FIXME: memoize NODES
- AllNodes.push_back(N);
- return SDOperand(N, 0);
+ std::vector<SDOperand> Ops;
+ Ops.reserve(4);
+ Ops.push_back(N1);
+ Ops.push_back(N2);
+ Ops.push_back(N3);
+ Ops.push_back(N4);
+ return getNode(Opcode, VT, Ops);
}
SDOperand SelectionDAG::getSrcValue(const Value *V, int Offset) {