aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2011-07-28 18:07:39 -0400
committerDJ Delorie <dj@gcc.gnu.org>2011-07-28 18:07:39 -0400
commit13a234421d1a68af668600893b31034c36b0a6e4 (patch)
tree1b48a43c811ded13c479a5f2f3fcfefbce189089
parent6c6c79a9390d10c3b24fd445099cbc9be36b8c40 (diff)
downloadgcc-13a234421d1a68af668600893b31034c36b0a6e4.zip
gcc-13a234421d1a68af668600893b31034c36b0a6e4.tar.gz
gcc-13a234421d1a68af668600893b31034c36b0a6e4.tar.bz2
m32c.c (m32c_secondary_reload_class): Allow PSI registers to be reloaded in HI classes when the target is HI.
* config/m32c/m32c.c (m32c_secondary_reload_class): Allow PSI registers to be reloaded in HI classes when the target is HI. From-SVN: r176903
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/m32c/m32c.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1874a3b..3711288 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-07-28 DJ Delorie <dj@redhat.com>
+
+ * config/m32c/m32c.c (m32c_secondary_reload_class): Allow PSI
+ registers to be reloaded in HI classes when the target is HI.
+
2011-07-28 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c: Replace v1, v2, lb, ub with
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index 7c359c9..4ae7228 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -845,7 +845,7 @@ m32c_secondary_reload_class (int rclass, enum machine_mode mode, rtx x)
if (reg_classes_intersect_p (rclass, CR_REGS)
&& GET_CODE (x) == REG
&& REGNO (x) >= SB_REGNO && REGNO (x) <= SP_REGNO)
- return TARGET_A16 ? HI_REGS : A_REGS;
+ return (TARGET_A16 || mode == HImode) ? HI_REGS : A_REGS;
return NO_REGS;
}