(find_reloads): Ignore alternatives that will not be reloadable due to

PREFERRED_RELOAD_CLASS.

From-SVN: r7257
This commit is contained in:
Richard Kenner 1994-05-06 18:55:32 -04:00
parent a2cd7b4554
commit 5e6aa5131b
1 changed files with 11 additions and 0 deletions

View File

@ -2953,6 +2953,17 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
&& operand_mode[i] != VOIDmode)
losers++;
/* If we can't reload this value at all, reject this
alternative. Note that we could also lose due to
LIMIT_RELOAD_RELOAD_CLASS, but we don't check that
here. */
if (! CONSTANT_P (operand)
&& (PREFERRED_RELOAD_CLASS (operand,
(enum reg_class) this_alternative[i])
== NO_REGS))
bad = 1;
/* We prefer to reload pseudos over reloading other things,
since such reloads may be able to be eliminated later.
If we are reloading a SCRATCH, we won't be generating any