GR16_ sub-register class should be GR8_, not GR8. That is, it should only be 8-bit...
authorEvan Cheng <evan.cheng@apple.com>
Thu, 9 Aug 2007 18:05:17 +0000 (18:05 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 9 Aug 2007 18:05:17 +0000 (18:05 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40970 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86RegisterInfo.td

index dba96669ae857d5296360a507856760f4ce40a6b..a5b218999c4cb5c714f47c8384bcc6910fba6b63 100644 (file)
@@ -417,13 +417,14 @@ def GR64 : RegisterClass<"X86", [i64], 64,
 }
 
 
-// GR16, GR32 subclasses which contain registers that have R8 sub-registers.
+// GR16, GR32 subclasses which contain registers that have GR8 sub-registers.
 // These should only be used for 32-bit mode.
+def GR8_ : RegisterClass<"X86", [i8], 8, [AL, CL, DL, BL, AH, CH, DH, BH]>;
 def GR16_ : RegisterClass<"X86", [i16], 16, [AX, CX, DX, BX]> {
-  let SubRegClassList = [GR8];
+  let SubRegClassList = [GR8_];
 }
 def GR32_ : RegisterClass<"X86", [i32], 32, [EAX, ECX, EDX, EBX]> {
-  let SubRegClassList = [GR8, GR16];
+  let SubRegClassList = [GR8_, GR16_];
 }
 
 // Scalar SSE2 floating point registers.