aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-08-16 01:07:53 +0000
committerChris Lattner <sabre@nondot.org>2004-08-16 01:07:53 +0000
commit303603f75876c1cb407002f0a3a110fe4c202b31 (patch)
treec086d8af75ff0d84f5fa0333177f28c616167659
parent174f2264649d9ae062bdb0a038131c2836596be5 (diff)
Flags and TSFlags were (thankfully) never used, so remove them. But wait,
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
-rw-r--r--include/llvm/Target/MRegisterInfo.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/include/llvm/Target/MRegisterInfo.h b/include/llvm/Target/MRegisterInfo.h
index a28f2c3189..8ec2dde297 100644
--- a/include/llvm/Target/MRegisterInfo.h
+++ b/include/llvm/Target/MRegisterInfo.h
@@ -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 {