Flags and TSFlags were (thankfully) never used, so remove them. But wait,
authorChris Lattner <sabre@nondot.org>
Mon, 16 Aug 2004 01:07:53 +0000 (01:07 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 16 Aug 2004 01:07:53 +0000 (01:07 +0000)
not so fast, add some fields for spill slot size and alignment

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15803 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/MRegisterInfo.h

index a28f2c31890848c6d7bf99228ee29f47a9ab71ca..8ec2dde297dfadcef1f5f7b0b6f473f4bd115731 100644 (file)
@@ -33,10 +33,10 @@ class MachineInstr;
 /// Registers that this does not apply to simply should set this to null.
 ///
 struct MRegisterDesc {
-  const char     *Name;       // Assembly language name for the register
-  const unsigned *AliasSet;   // Register Alias Set, described above
-  unsigned        Flags;      // Flags identifying register properties (below)
-  unsigned        TSFlags;    // Target Specific Flags
+  const char     *Name;         // Assembly language name for the register
+  const unsigned *AliasSet;     // Register Alias Set, described above
+  unsigned char SpillSize;      // Size of this register in bytes
+  unsigned char SpillAlignment; // Alignment of stack slot for this reg
 };
 
 class TargetRegisterClass {
@@ -194,6 +194,18 @@ public:
     return get(RegNo).Name;
   }
 
+  /// getSpillSize - Return the size required of a stack slot used to spill
+  /// register into.
+  unsigned getSpillSize(unsigned RegNo) const {
+    return get(RegNo).SpillSize;
+  }
+
+  /// getSpillAlignment - Return the alignment required by a stack slot used to
+  /// spill register into.
+  unsigned getSpillAlignment(unsigned RegNo) const {
+    return get(RegNo).SpillAlignment;
+  }
+
   /// getNumRegs - Return the number of registers this target has
   /// (useful for sizing arrays holding per register information)
   unsigned getNumRegs() const {