From: J"orn Rennecke Date: Fri, 5 Mar 1999 15:07:56 +0000 (+0000) Subject: reload.c (find_reloads_subreg_address): Actually create the USE for the register... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0ba9b9e6bff8387b7b72d6e2be5aa125a675e05e;p=gcc.git reload.c (find_reloads_subreg_address): Actually create the USE for the register, not the new memory location. * reload.c (find_reloads_subreg_address): Actually create the USE for the register, not the new memory location. From-SVN: r25605 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 968ea5ec57a..c4231bde4ff 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Feb 25 21:52:54 1999 J"orn Rennecke + + * reload.c (find_reloads_subreg_address): Actually create the USE + for the register, not the new memory location. + Fri Mar 5 21:41:07 1999 J"orn Rennecke * reload1.c (emit_reload_insns): If pseudo that can't be replaced diff --git a/gcc/reload.c b/gcc/reload.c index 66b8de5cc68..e424d74554a 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -5658,14 +5658,15 @@ find_reloads_subreg_address (x, force_replace, opnum, type, } XEXP (tem, 0) = plus_constant (XEXP (tem, 0), offset); PUT_MODE (tem, GET_MODE (x)); - x = tem; - find_reloads_address (GET_MODE (x), &x, XEXP (x, 0), &XEXP (x, 0), - opnum, ADDR_TYPE (type), ind_levels, insn); + find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0), + &XEXP (tem, 0), opnum, ADDR_TYPE (type), + ind_levels, insn); /* If this is not a toplevel operand, find_reloads doesn't see this substitution. We have to emit a USE of the pseudo so that delete_output_reload can see it. */ if (replace_reloads && recog_operand[opnum] != x) emit_insn_before (gen_rtx_USE (VOIDmode, SUBREG_REG (x)), insn); + x = tem; } } }