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.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index a7531a8417..851e99b0d4 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -1815,6 +1815,15 @@ void SelectionDAG::SelectNodeTo(SDNode *N, MVT::ValueType VT,
N->setValueTypes(VT);
N->setOperands(Op1, Op2);
}
+void SelectionDAG::SelectNodeTo(SDNode *N,
+ MVT::ValueType VT1, MVT::ValueType VT2,
+ unsigned TargetOpc, SDOperand Op1,
+ SDOperand Op2) {
+ RemoveNodeFromCSEMaps(N);
+ N->MorphNodeTo(ISD::BUILTIN_OP_END+TargetOpc);
+ N->setValueTypes(VT1, VT2);
+ N->setOperands(Op1, Op2);
+}
void SelectionDAG::SelectNodeTo(SDNode *N, MVT::ValueType VT,
unsigned TargetOpc, SDOperand Op1,
SDOperand Op2, SDOperand Op3) {