diff options
author | Chris Lattner <sabre@nondot.org> | 2005-01-13 17:58:35 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-01-13 17:58:35 +0000 |
commit | 8a496fcffdcba757412fc5cc6c772260ccfde000 (patch) | |
tree | d403b25ab3f206810f7cc5de6f97ec0b4c33e156 | |
parent | 41c56c03f7464c94bac11e56046f014d49f5bcf4 (diff) |
Add a new node type, add comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19525 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/CodeGen/SelectionDAGISel.h | 5 | ||||
-rw-r--r-- | include/llvm/CodeGen/SelectionDAGNodes.h | 12 |
2 files changed, 13 insertions, 4 deletions
diff --git a/include/llvm/CodeGen/SelectionDAGISel.h b/include/llvm/CodeGen/SelectionDAGISel.h index 5fc6f31cd6..77fd05ac65 100644 --- a/include/llvm/CodeGen/SelectionDAGISel.h +++ b/include/llvm/CodeGen/SelectionDAGISel.h @@ -21,6 +21,7 @@ namespace llvm { class SelectionDAG; class SelectionDAGLowering; + class SDOperand; class SSARegMap; class MachineBasicBlock; class MachineFunction; @@ -49,8 +50,8 @@ public: virtual void InstructionSelectBasicBlock(SelectionDAG &SD) = 0; - void CopyValueToVirtualRegister(SelectionDAGLowering &SDL, - Value *V, unsigned Reg); + SDOperand CopyValueToVirtualRegister(SelectionDAGLowering &SDL, + Value *V, unsigned Reg); void SelectBasicBlock(BasicBlock *BB, MachineFunction &MF, FunctionLoweringInfo &FuncInfo); diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h index 2ca6e1509c..2957a51401 100644 --- a/include/llvm/CodeGen/SelectionDAGNodes.h +++ b/include/llvm/CodeGen/SelectionDAGNodes.h @@ -44,8 +44,16 @@ namespace ISD { /// SelectionDAG. /// enum NodeType { - // Leaf nodes - EntryToken, Constant, ConstantFP, GlobalAddress, FrameIndex, ConstantPool, + // EntryToken - This is the marker used to indicate the start of the region. + EntryToken, + + // Token factor - This node is takes multiple tokens as input and produces a + // single token result. This is used to represent the fact that the operand + // operators are independent of each other. + TokenFactor, + + // Various leaf nodes. + Constant, ConstantFP, GlobalAddress, FrameIndex, ConstantPool, BasicBlock, ExternalSymbol, // CopyToReg - This node has chain and child nodes, and an associated |