aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRask Ingemann Lambertsen <rask@sygehus.dk>2007-09-25 03:40:30 +0200
committerDJ Delorie <dj@gcc.gnu.org>2007-09-24 21:40:30 -0400
commitc6004917e961d38ce7919faf9d541d572f876654 (patch)
treef220a3c97ee5d48328c37a140baf71b43978889f /gcc
parent18ff3013c2600a5138fbd51d5a90af1d3101ce1d (diff)
downloadgcc-c6004917e961d38ce7919faf9d541d572f876654.zip
gcc-c6004917e961d38ce7919faf9d541d572f876654.tar.gz
gcc-c6004917e961d38ce7919faf9d541d572f876654.tar.bz2
re PR target/33184 (m32c: ostream.tcc:92: error: unable to find a register to spill in class 'A_REGS')
2007-08-26 Rask Ingemann Lambertsen <rask@sygehus.dk> PR target/33184 * config/m32c/m32c.c (m32c_eh_return_data_regno): Leave an address register for reload. From-SVN: r128741
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/m32c/m32c.c5
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 07b24d7..ec21e93 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-09-24 Rask Ingemann Lambertsen <rask@sygehus.dk>
+
+ PR target/33184
+ * config/m32c/m32c.c (m32c_eh_return_data_regno): Leave an address
+ register for reload.
+
2007-09-24 Danny Smith <dannysmith@user.sourceforge.net>
PR c++/14688
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index de98311..74de416 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -1127,7 +1127,10 @@ m32c_eh_return_data_regno (int n)
case 0:
return A0_REGNO;
case 1:
- return A1_REGNO;
+ if (TARGET_A16)
+ return R3_REGNO;
+ else
+ return R1_REGNO;
default:
return INVALID_REGNUM;
}