[llvm-commits] CVS: llvm/include/llvm/CodeGen/SelectionDAG.h SelectionDAGNodes.h

Nate Begeman natebegeman at mac.com
Thu Aug 18 00:26:01 PDT 2005



Changes in directory llvm/include/llvm/CodeGen:

SelectionDAG.h updated: 1.41 -> 1.42
SelectionDAGNodes.h updated: 1.57 -> 1.58
---
Log message:

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


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

 SelectionDAG.h      |    2 ++
 SelectionDAGNodes.h |    9 +++++++++
 2 files changed, 11 insertions(+)


Index: llvm/include/llvm/CodeGen/SelectionDAG.h
diff -u llvm/include/llvm/CodeGen/SelectionDAG.h:1.41 llvm/include/llvm/CodeGen/SelectionDAG.h:1.42
--- llvm/include/llvm/CodeGen/SelectionDAG.h:1.41	Wed Aug 17 13:59:17 2005
+++ llvm/include/llvm/CodeGen/SelectionDAG.h	Thu Aug 18 02:25:46 2005
@@ -226,6 +226,8 @@
                     SDOperand Op1, SDOperand Op2);
   void SelectNodeTo(SDNode *N, MVT::ValueType VT, unsigned TargetOpc,
                     SDOperand Op1, SDOperand Op2, SDOperand Op3);
+  void SelectNodeTo(SDNode *N, MVT::ValueType VT, unsigned TargetOpc,
+                    SDOperand Op1, SDOperand Op2, SDOperand Op3, SDOperand Op4);
   
   SDOperand getTargetNode(unsigned Opcode, MVT::ValueType VT,
                           SDOperand Op1) {


Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.57 llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.58
--- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.57	Wed Aug 17 18:44:54 2005
+++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h	Thu Aug 18 02:25:46 2005
@@ -664,6 +664,15 @@
     Op0.Val->Uses.push_back(this); Op1.Val->Uses.push_back(this);
     Op2.Val->Uses.push_back(this);
   }
+  void setOperands(SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3) {
+    Operands.reserve(4);
+    Operands.push_back(Op0);
+    Operands.push_back(Op1);
+    Operands.push_back(Op2);
+    Operands.push_back(Op3);
+    Op0.Val->Uses.push_back(this); Op1.Val->Uses.push_back(this);
+    Op2.Val->Uses.push_back(this); Op3.Val->Uses.push_back(this);
+  }
   void addUser(SDNode *User) {
     Uses.push_back(User);
   }






More information about the llvm-commits mailing list