aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2001-04-10 02:47:32 +0000
committerAndrew Macleod <amacleod@gcc.gnu.org>2001-04-10 02:47:32 +0000
commit55107ee39c2c539883270a2a9e050a4ec406ac58 (patch)
tree73cf310d19ebcac964b72a8ebb75329acf749c06
parentfa9518de0271175955abe4cce0b29788dd4e4aa3 (diff)
downloadgcc-55107ee39c2c539883270a2a9e050a4ec406ac58.zip
gcc-55107ee39c2c539883270a2a9e050a4ec406ac58.tar.gz
gcc-55107ee39c2c539883270a2a9e050a4ec406ac58.tar.bz2
function.c (purge_single_hard_subreg_set): Only check REGNO if the subreg was a hard register.
2001-04-10 Andrew MacLeod <amacleod@redhat.com> * function.c (purge_single_hard_subreg_set): Only check REGNO if the subreg was a hard register. Pseudos are left as subregs. From-SVN: r41217
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/function.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2a45476..dc5b07c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2001-04-10 Andrew MacLeod <amacleod@redhat.com>
+
+ * function.c (purge_single_hard_subreg_set): Only check REGNO if
+ the subreg was a hard register. Pseudos are left as subregs.
+
2001-04-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
diff --git a/gcc/function.c b/gcc/function.c
index ee18258..a561d8e 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -3456,7 +3456,7 @@ purge_single_hard_subreg_set (pattern)
}
- if (REGNO (reg) < FIRST_PSEUDO_REGISTER)
+ if (GET_CODE (reg) == REG && REGNO (reg) < FIRST_PSEUDO_REGISTER)
{
reg = gen_rtx_REG (mode, REGNO (reg) + offset);
SET_DEST (pattern) = reg;