i386.c (print_reg): Abort if REGNO (x) is a virtual register, but only if file =...
authorZack Weinberg <zack@codesourcery.com>
Mon, 20 Oct 2003 18:32:51 +0000 (18:32 +0000)
committerZack Weinberg <zack@gcc.gnu.org>
Mon, 20 Oct 2003 18:32:51 +0000 (18:32 +0000)
* config/i386/i386.c (print_reg): Abort if REGNO (x) is a
virtual register, but only if file == asm_out_file.
* config/i386/i386.h (HI_REGISTER_NAMES): Use "argp", not "",
for ARG_POINTER_REGNUM.

From-SVN: r72712

gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h

index ab034ae1195a72627167896890d4e6a96f3b96f8..5abaefd2e218b1bcfe447934658d68d9b0442158 100644 (file)
@@ -1,3 +1,10 @@
+2003-10-20  Zack Weinberg  <zack@codesourcery.com>
+
+       * config/i386/i386.c (print_reg): Abort if REGNO (x) is a
+       virtual register, but only if file == asm_out_file.
+       * config/i386/i386.h (HI_REGISTER_NAMES): Use "argp", not "",
+       for ARG_POINTER_REGNUM.
+
 2003-10-20  Zack Weinberg  <zack@codesourcery.com>
 
        * c-common.c (registered_builtin_types): New static.
index edc8c0e6863ea5005f96cfde710ef4d08672036a..cfdc7d2895169ffec209784b000e0474d2eb4c3a 100644 (file)
@@ -6884,6 +6884,13 @@ put_condition_code (enum rtx_code code, enum machine_mode mode, int reverse,
 void
 print_reg (rtx x, int code, FILE *file)
 {
+  if ((REGNO (x) == ARG_POINTER_REGNUM
+       || REGNO (x) == FRAME_POINTER_REGNUM
+       || REGNO (x) == FLAGS_REG
+       || REGNO (x) == FPSR_REG)
+      && file == asm_out_file)
+    abort ();
+
   if (ASSEMBLER_DIALECT == ASM_ATT || USER_LABEL_PREFIX[0] == 0)
     putc ('%', file);
 
index 5ad5a141ddf07c38733e05aa0eb65cdf176195c5..53f9bcba6b2ec76098e9ae9cb438679776f26e68 100644 (file)
@@ -2747,8 +2747,8 @@ do {                                                      \
 #undef  HI_REGISTER_NAMES
 #define HI_REGISTER_NAMES                                              \
 {"ax","dx","cx","bx","si","di","bp","sp",                              \
- "st","st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)","",      \
- "flags","fpsr", "dirflag", "frame",                                   \
+ "st","st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)",         \
+ "argp", "flags", "fpsr", "dirflag", "frame",                          \
  "xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7",              \
  "mm0", "mm1", "mm2", "mm3", "mm4", "mm5", "mm6", "mm7"        ,               \
  "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",                 \