aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2003-11-18 23:59:08 -0800
committerRichard Henderson <rth@gcc.gnu.org>2003-11-18 23:59:08 -0800
commitd4c32b6fcae6547e1ab8ab8c36faa59389ef54c2 (patch)
treed835696b07cba3edf9b4313055087dc1fe3a87fc
parent43d8d958ceabe3fa77308f115e2e616d307b9b3d (diff)
downloadgcc-d4c32b6fcae6547e1ab8ab8c36faa59389ef54c2.zip
gcc-d4c32b6fcae6547e1ab8ab8c36faa59389ef54c2.tar.gz
gcc-d4c32b6fcae6547e1ab8ab8c36faa59389ef54c2.tar.bz2
i386.c (print_reg): Handle QI and HI modes for non Q regs.
* config/i386/i386.c (print_reg): Handle QI and HI modes for non Q regs. From-SVN: r73730
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0184f43..931f74c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-11-19 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (print_reg): Handle QI and HI modes for
+ non Q regs.
+
2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
* config/config.gcc (powerpc-*-darwin*): Add libgcc build
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 744f521..8060371 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -7072,12 +7072,17 @@ print_reg (rtx x, int code, FILE *file)
/* FALLTHRU */
case 16:
case 2:
+ normal:
fputs (hi_reg_name[REGNO (x)], file);
break;
case 1:
+ if (REGNO (x) >= ARRAY_SIZE (qi_reg_name))
+ goto normal;
fputs (qi_reg_name[REGNO (x)], file);
break;
case 0:
+ if (REGNO (x) >= ARRAY_SIZE (qi_high_reg_name))
+ goto normal;
fputs (qi_high_reg_name[REGNO (x)], file);
break;
default: