diff options
author | Bernd Schmidt <bernds@redhat.com> | 2001-03-01 13:35:13 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2001-03-01 13:35:13 +0000 |
commit | 1abdf5e7476e4390edf3556d43a5601870cd3418 (patch) | |
tree | afb09d973d05147c11f6bcb3ce6acac977769bc5 /gcc | |
parent | 21e4c9a8db052486c9baf381279d1725048a56f0 (diff) | |
download | gcc-1abdf5e7476e4390edf3556d43a5601870cd3418.zip gcc-1abdf5e7476e4390edf3556d43a5601870cd3418.tar.gz gcc-1abdf5e7476e4390edf3556d43a5601870cd3418.tar.bz2 |
Fix register elimination problem
From-SVN: r40147
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/reload1.c | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 40a88ef..879827b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2001-03-01 Bernd Schmidt <bernds@redhat.com> + * reload1.c (eliminate_regs_in_insn): Restrict the special case + code not to try to optimize adds with anything but a REG destination. + * sched-int.h (struct haifa_insn_data): Add new member priority_known. (INSN_PRIORITY_KNOWN): New accessor macro. * haifa-sched.c (priority): Use it instead of testing priority against diff --git a/gcc/reload1.c b/gcc/reload1.c index 13d609e..077c410 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -3016,6 +3016,7 @@ eliminate_regs_in_insn (insn, replace) currently support: a single set with the source being a PLUS of an eliminable register and a constant. */ if (old_set + && GET_CODE (SET_DEST (old_set)) == REG && GET_CODE (SET_SRC (old_set)) == PLUS && GET_CODE (XEXP (SET_SRC (old_set), 0)) == REG && GET_CODE (XEXP (SET_SRC (old_set), 1)) == CONST_INT |