reload-branch created
Bernd Schmidt
bernds_cb1@t-online.de
Sun Mar 20 19:50:00 GMT 2005
Ulrich Weigand wrote:
> - As mentioned in http://gcc.gnu.org/ml/gcc/2005-01/msg00911.html
> there is a code path in find_reloads that sets rld[].inc to a
> nonzero value even for a platform that doesn't actually *have*
> pre-/post-increment insns, leading to an ICE later on.
>
> The patch below simply avoids setting .inc unless it was already
> set to a nonzero value (by find_inc_amount).
This one I'm not sure about yet.
>
> - As mentioned in http://gcc.gnu.org/ml/gcc/2005-01/msg01112.html
> there are problems with reload ordering when optional reloads
> are disabled, leading to address reload insns being emitted after
> the main insn.
>
> The patch below is the same I suggested in that mail; it considers
> such address reloads to feed into both the optional reload and
> the main insn in scan_rtx.
This problem will probably require more invasive surgery.
> - Finally, there is still a (new) problem in the latest version of
> usable_for_inheritance: if an inherited register is chosen as
> override-in because it is not suitable as reload register due
> to HARD_REGNO_MODE_OK, it isn't even checked against the
> *usable_regs array.
>
> The patch below adds back that check (using inmode, not mode).
This is OK. Would you check it in?
Bernd
More information about the Gcc
mailing list