aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/CodeGen/SelectionDAGISel.h5
-rw-r--r--include/llvm/CodeGen/SelectionDAGNodes.h12
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