[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

Nate Begeman natebegeman at mac.com
Thu Aug 18 00:30:27 PDT 2005



Changes in directory llvm/lib/CodeGen/SelectionDAG:

SelectionDAG.cpp updated: 1.148 -> 1.149
---
Log message:

Add support for target DAG nodes that take 4 operands, such as PowerPC's
rlwinm.


---
Diffs of the changes:  (+8 -0)

 SelectionDAG.cpp |    8 ++++++++
 1 files changed, 8 insertions(+)


Index: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.148 llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.149
--- llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.148	Wed Aug 17 22:31:02 2005
+++ llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp	Thu Aug 18 02:30:15 2005
@@ -1810,6 +1810,14 @@
   N->setValueTypes(VT);
   N->setOperands(Op1, Op2, Op3);
 }
+void SelectionDAG::SelectNodeTo(SDNode *N, MVT::ValueType VT,
+                                unsigned TargetOpc, SDOperand Op1,
+                                SDOperand Op2, SDOperand Op3, SDOperand Op4) {
+  RemoveNodeFromCSEMaps(N);
+  N->MorphNodeTo(ISD::BUILTIN_OP_END+TargetOpc);
+  N->setValueTypes(VT);
+  N->setOperands(Op1, Op2, Op3, Op4);
+}
 
 /// ReplaceAllUsesWith - Modify anything using 'From' to use 'To' instead.
 /// This can cause recursive merging of nodes in the DAG.






More information about the llvm-commits mailing list