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

Andrew Lenharth alenhar2 at cs.uiuc.edu
Mon Jan 23 13:51:30 PST 2006



Changes in directory llvm/include/llvm/CodeGen:

SelectionDAG.h updated: 1.86 -> 1.87
SelectionDAGNodes.h updated: 1.91 -> 1.92
---
Log message:

another couple selects

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

 SelectionDAG.h      |   20 ++++++++++++++++++++
 SelectionDAGNodes.h |   18 ++++++++++++++++++
 2 files changed, 38 insertions(+)


Index: llvm/include/llvm/CodeGen/SelectionDAG.h
diff -u llvm/include/llvm/CodeGen/SelectionDAG.h:1.86 llvm/include/llvm/CodeGen/SelectionDAG.h:1.87
--- llvm/include/llvm/CodeGen/SelectionDAG.h:1.86	Mon Jan 23 14:58:48 2006
+++ llvm/include/llvm/CodeGen/SelectionDAG.h	Mon Jan 23 15:51:14 2006
@@ -318,6 +318,10 @@
                          SDOperand Op1, SDOperand Op2, SDOperand Op3,
                          SDOperand Op4, SDOperand Op5, SDOperand Op6,
 			 SDOperand Op7);
+  SDOperand SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT::ValueType VT, 
+                         SDOperand Op1, SDOperand Op2, SDOperand Op3,
+                         SDOperand Op4, SDOperand Op5, SDOperand Op6,
+			 SDOperand Op7, SDOperand Op8);
   SDOperand SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT::ValueType VT1, 
                          MVT::ValueType VT2, SDOperand Op1, SDOperand Op2);
   SDOperand SelectNodeTo(SDNode *N, unsigned TargetOpc, MVT::ValueType VT1,
@@ -384,6 +388,22 @@
     return getNode(ISD::BUILTIN_OP_END+Opcode, VT, Ops);
   }
   SDOperand getTargetNode(unsigned Opcode, MVT::ValueType VT,
+                          SDOperand Op1, SDOperand Op2, SDOperand Op3,
+                          SDOperand Op4, SDOperand Op5, SDOperand Op6,
+                          SDOperand Op7, SDOperand Op8) {
+    std::vector<SDOperand> Ops;
+    Ops.reserve(8);
+    Ops.push_back(Op1);
+    Ops.push_back(Op2);
+    Ops.push_back(Op3);
+    Ops.push_back(Op4);
+    Ops.push_back(Op5);
+    Ops.push_back(Op6);
+    Ops.push_back(Op7);
+    Ops.push_back(Op8);
+    return getNode(ISD::BUILTIN_OP_END+Opcode, VT, Ops);
+  }
+  SDOperand getTargetNode(unsigned Opcode, MVT::ValueType VT,
                           std::vector<SDOperand> &Ops) {
     return getNode(ISD::BUILTIN_OP_END+Opcode, VT, Ops);
   }


Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.91 llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.92
--- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.91	Mon Jan 23 14:58:48 2006
+++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h	Mon Jan 23 15:51:14 2006
@@ -856,6 +856,24 @@
     Op4.Val->Uses.push_back(this); Op5.Val->Uses.push_back(this);
     Op6.Val->Uses.push_back(this);
   }
+  void setOperands(SDOperand Op0, SDOperand Op1, SDOperand Op2, SDOperand Op3,
+                   SDOperand Op4, SDOperand Op5, SDOperand Op6, SDOperand Op7) {
+    assert(NumOperands == 0 && "Should not have operands yet!");
+    OperandList = new SDOperand[8];
+    OperandList[0] = Op0;
+    OperandList[1] = Op1;
+    OperandList[2] = Op2;
+    OperandList[3] = Op3;
+    OperandList[4] = Op4;
+    OperandList[5] = Op5;
+    OperandList[6] = Op6;
+    OperandList[7] = Op7;
+    NumOperands = 8;
+    Op0.Val->Uses.push_back(this); Op1.Val->Uses.push_back(this);
+    Op2.Val->Uses.push_back(this); Op3.Val->Uses.push_back(this);
+    Op4.Val->Uses.push_back(this); Op5.Val->Uses.push_back(this);
+    Op6.Val->Uses.push_back(this); Op7.Val->Uses.push_back(this);
+  }
 
   void addUser(SDNode *User) {
     Uses.push_back(User);






More information about the llvm-commits mailing list