diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2004-04-13 23:27:43 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@gcc.gnu.org> | 2004-04-13 23:27:43 +0000 |
commit | 9532c14fb5503b0e7f5ceb988fe1d71ad122c96b (patch) | |
tree | 2c3bb45f92559cc98b9e47b327a6e8c58d0b48ad /gcc | |
parent | d5a46acb57a7dfd7d9caad33f6c0cb6a56c48dba (diff) | |
download | gcc-9532c14fb5503b0e7f5ceb988fe1d71ad122c96b.zip gcc-9532c14fb5503b0e7f5ceb988fe1d71ad122c96b.tar.gz gcc-9532c14fb5503b0e7f5ceb988fe1d71ad122c96b.tar.bz2 |
reload1.c (emit_reload_insns): Set reg_has_output_reload to one after setting reg_last_reload_reg for optional...
* reload1.c (emit_reload_insns): Set reg_has_output_reload to one
after setting reg_last_reload_reg for optional output reloads.
From-SVN: r80666
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/reload1.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ae06d12..face0c9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-04-13 Ulrich Weigand <uweigand@de.ibm.com> + + * reload1.c (emit_reload_insns): Set reg_has_output_reload to one + after setting reg_last_reload_reg for optional output reloads. + 2004-04-12 Fariborz Jahanian <fjahanian@apple.com> * config/rs6000/altivec.h (vec_mergeh, vec_mergel): diff --git a/gcc/reload1.c b/gcc/reload1.c index ce7bf83..56f02c9 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -7324,6 +7324,10 @@ emit_reload_insns (struct insn_chain *chain) CLEAR_HARD_REG_BIT (reg_reloaded_died, src_regno); } reg_last_reload_reg[nregno] = src_reg; + /* We have to set reg_has_output_reload here, or else + forget_old_reloads_1 will clear reg_last_reload_reg + right away. */ + reg_has_output_reload[nregno] = 1; } } else |