reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to RELOAD_FOR_INSN.

* reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
	RELOAD_FOR_INSN.

From-SVN: r20559
This commit is contained in:
J"orn Rennecke 1998-06-18 09:33:39 +00:00 committed by Joern Rennecke
parent 276d5ee0ca
commit f9df0a1d52
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
RELOAD_FOR_INSN.
Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (c-lang.o): Depend on output.h.

View File

@ -3574,11 +3574,13 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
a SCRATCH). In this case, we only need have the reload live
through the insn itself, but not for any of our input or output
reloads.
But we must not accidentally narrow the scope of an existing
RELOAD_OTHER reload - leave these alone.
In any case, anything needed to address this operand can remain
however they were previously categorized. */
if (goal_alternative_earlyclobber[i])
if (goal_alternative_earlyclobber[i] && operand_type[i] != RELOAD_OTHER)
operand_type[i]
= (find_reg_note (insn, REG_UNUSED, recog_operand[i])
? RELOAD_FOR_INSN : RELOAD_OTHER);