diff options
author | Chris Lattner <sabre@nondot.org> | 2005-08-19 18:51:57 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-08-19 18:51:57 +0000 |
commit | 03ba7b9f25b60b1e95caacb34b0a7e8fc05e860e (patch) | |
tree | ed4f10932c6af94bc1a5dbd65dbc95725d85b617 | |
parent | cbec3b00bd70a29d1451f4d87579840b1560e87e (diff) |
Put register classes into namespaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22925 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/SparcV9/SparcV9RegisterInfo.td | 2 | ||||
-rw-r--r-- | lib/Target/X86/X86RegisterInfo.td | 15 |
2 files changed, 9 insertions, 8 deletions
diff --git a/lib/Target/SparcV9/SparcV9RegisterInfo.td b/lib/Target/SparcV9/SparcV9RegisterInfo.td index 3ca88c441d..a248bc5a2c 100644 --- a/lib/Target/SparcV9/SparcV9RegisterInfo.td +++ b/lib/Target/SparcV9/SparcV9RegisterInfo.td @@ -43,7 +43,7 @@ let Namespace = "SparcV9" in { // FIXME: the register order should be defined in terms of the preferred // allocation order... // -def IntRegs : RegisterClass<i64, 64, [G0, G1, G2, G3, G4, G5, G6, G7, +def IntRegs : RegisterClass<"V9", i64, 64, [G0, G1, G2, G3, G4, G5, G6, G7, O0, O1, O2, O3, O4, O5, O6, O7, L0, L1, L2, L3, L4, L5, L6, L7, I0, I1, I2, I3, I4, I5, I6, I7]>; diff --git a/lib/Target/X86/X86RegisterInfo.td b/lib/Target/X86/X86RegisterInfo.td index 30190fc18c..55352edc28 100644 --- a/lib/Target/X86/X86RegisterInfo.td +++ b/lib/Target/X86/X86RegisterInfo.td @@ -72,9 +72,9 @@ let Namespace = "X86" in { // dependences between upper and lower parts of the register. BL and BH are // last because they are call clobbered. Both Athlon and P4 chips suffer this // issue. -def R8 : RegisterClass<i8, 8, [AL, CL, DL, AH, CH, DH, BL, BH]>; +def R8 : RegisterClass<"X86", i8, 8, [AL, CL, DL, AH, CH, DH, BL, BH]>; -def R16 : RegisterClass<i16, 16, [AX, CX, DX, SI, DI, BX, BP, SP]> { +def R16 : RegisterClass<"X86", i16, 16, [AX, CX, DX, SI, DI, BX, BP, SP]> { let Methods = [{ iterator allocation_order_end(MachineFunction &MF) const { if (hasFP(MF)) // Does the function dedicate EBP to being a frame ptr? @@ -85,7 +85,7 @@ def R16 : RegisterClass<i16, 16, [AX, CX, DX, SI, DI, BX, BP, SP]> { }]; } -def R32 : RegisterClass<i32, 32, [EAX, ECX, EDX, ESI, EDI, EBX, EBP, ESP]> { +def R32 : RegisterClass<"X86", i32, 32, [EAX, ECX, EDX, ESI, EDI, EBX, EBP, ESP]> { let Methods = [{ iterator allocation_order_end(MachineFunction &MF) const { if (hasFP(MF)) // Does the function dedicate EBP to being a frame ptr? @@ -99,8 +99,8 @@ def R32 : RegisterClass<i32, 32, [EAX, ECX, EDX, ESI, EDI, EBX, EBP, ESP]> { // FIXME: These registers can contain both integer and fp values. We should // figure out the right way to deal with that. For now, since they'll be used // for scalar FP, they are being declared f64 -def RXMM : RegisterClass<f64, 32, [XMM0, XMM1, XMM2, XMM3, - XMM4, XMM5, XMM6, XMM7]>; +def RXMM : RegisterClass<"X86", f64, 32, + [XMM0, XMM1, XMM2, XMM3, XMM4, XMM5, XMM6, XMM7]>; // FIXME: This sets up the floating point register files as though they are f64 // values, though they really are f80 values. This will cause us to spill @@ -108,12 +108,13 @@ def RXMM : RegisterClass<f64, 32, [XMM0, XMM1, XMM2, XMM3, // faster on common hardware. In reality, this should be controlled by a // command line option or something. -def RFP : RegisterClass<f64, 32, [FP0, FP1, FP2, FP3, FP4, FP5, FP6]>; +def RFP : RegisterClass<"X86", f64, 32, [FP0, FP1, FP2, FP3, FP4, FP5, FP6]>; // Floating point stack registers (these are not allocatable by the // register allocator - the floating point stackifier is responsible // for transforming FPn allocations to STn registers) -def RST : RegisterClass<f64, 32, [ST0, ST1, ST2, ST3, ST4, ST5, ST6, ST7]> { +def RST : RegisterClass<"X86", f64, 32, + [ST0, ST1, ST2, ST3, ST4, ST5, ST6, ST7]> { let Methods = [{ iterator allocation_order_end(MachineFunction &MF) const { return begin(); |