Increase ISD::ParamFlags to 64 bits. Increase the ByValSize
[oota-llvm.git] / include / llvm / CodeGen / ScheduleDAG.h
index fdd57003571183254c6f5fdf82e5e9bb112eacfc..e86d08492aa212deda052a5daab827e4c439cff7 100644 (file)
@@ -28,7 +28,7 @@ namespace llvm {
   class MachineModuleInfo;
   class MachineRegisterInfo;
   class MachineInstr;
-  class MRegisterInfo;
+  class TargetRegisterInfo;
   class SelectionDAG;
   class SelectionDAGISel;
   class TargetInstrInfo;
@@ -243,7 +243,7 @@ namespace llvm {
     MachineBasicBlock *BB;                // Current basic block
     const TargetMachine &TM;              // Target processor
     const TargetInstrInfo *TII;           // Target instruction information
-    const MRegisterInfo *MRI;             // Target processor register info
+    const TargetRegisterInfo *TRI;        // Target processor register info
     MachineFunction *MF;                  // Machine function
     MachineRegisterInfo &RegInfo;         // Virtual/real register map
     MachineConstantPool *ConstPool;       // Target constant pool
@@ -272,6 +272,7 @@ namespace llvm {
     ///
     static bool isPassiveNode(SDNode *Node) {
       if (isa<ConstantSDNode>(Node))       return true;
+      if (isa<ConstantFPSDNode>(Node))     return true;
       if (isa<RegisterSDNode>(Node))       return true;
       if (isa<GlobalAddressSDNode>(Node))  return true;
       if (isa<BasicBlockSDNode>(Node))     return true;
@@ -314,13 +315,14 @@ namespace llvm {
     static unsigned CountResults(SDNode *Node);
 
     /// CountOperands - The inputs to target nodes have any actual inputs first,
-    /// followed by optional memory operands chain operand, then flag operands.
-    /// Compute the number of actual operands that  will go into the machine
-    /// instr.
+    /// followed by special operands that describe memory references, then an
+    /// optional chain operand, then flag operands.  Compute the number of
+    /// actual operands that will go into the resulting MachineInstr.
     static unsigned CountOperands(SDNode *Node);
 
-    /// CountMemOperands - Find the index of the last MemOperandSDNode
-    static unsigned CountMemOperands(SDNode *Node);
+    /// ComputeMemOperandsEnd - Find the index one past the last
+    /// MemOperandSDNode operand
+    static unsigned ComputeMemOperandsEnd(SDNode *Node);
 
     /// EmitNode - Generate machine code for an node and needed dependencies.
     /// VRBaseMap contains, for each already emitted node, the first virtual