Richard Sandiford wrote:
> "Ulrich Weigand" writes:
> > Richard Sandiford wrote:
> >> Either way, the idea is that new_spill_reg_store[R] is only valid
> >> for reload registers R that reach the end of the reload sequence.
> >> We really should check that H1 reaches the end before u
Thanks for looking at this.
"Ulrich Weigand" writes:
> Richard Sandiford wrote:
>> Either way, the idea is that new_spill_reg_store[R] is only valid
>> for reload registers R that reach the end of the reload sequence.
>> We really should check that H1 reaches the end before using
>
Richard Sandiford wrote:
> Bernd Schmidt writes:
> >> gcc/
> >>* reload1.c (reload_regs_reach_end_p): Replace with...
> >>(reload_reg_rtx_reaches_end_p): ...this function.
> >>(new_spill_reg_store): Update commentary.
> >>(emit_input_reload_insns): Don't clear new_spill_reg_store h
Back to this...
Bernd Schmidt writes:
>> gcc/
>> * reload1.c (reload_regs_reach_end_p): Replace with...
>> (reload_reg_rtx_reaches_end_p): ...this function.
>> (new_spill_reg_store): Update commentary.
>> (emit_input_reload_insns): Don't clear new_spill_reg_store here.
>>
> gcc/
> * reload1.c (reload_regs_reach_end_p): Replace with...
> (reload_reg_rtx_reaches_end_p): ...this function.
> (new_spill_reg_store): Update commentary.
> (emit_input_reload_insns): Don't clear new_spill_reg_store here.
> (emit_output_reload_insns): Check reload
Bernd Schmidt writes:
> On 10/11/11 14:35, Richard Sandiford wrote:
>> No, reload 1 is inherited by a later instruction. And it's inherited
>> correctly, in terms of the register contents being what we expect.
>> (Reload 1 is the one that survives to the end of the instruction's
>> reload sequenc
On 10/11/11 14:35, Richard Sandiford wrote:
> No, reload 1 is inherited by a later instruction. And it's inherited
> correctly, in terms of the register contents being what we expect.
> (Reload 1 is the one that survives to the end of the instruction's
> reload sequence. Reload 2, in contrast, is
Bernd Schmidt writes:
> On 10/09/11 10:01, Richard Sandiford wrote:
>> Reload 0: GR_REGS, RELOAD_FOR_OUTPUT_ADDRESS (opnum = 0), can't combine,
>> secondary_reload_p
>> reload_reg_rtx: (reg:SI 5 $5)
>> Reload 1: reload_out (SI) = (reg:SI 32 $f0 [1655])
>> MD1_REG, RELOAD_FOR_OUTPU
I'm not completely following this yet, so please bear with me...
On 10/09/11 10:01, Richard Sandiford wrote:
> Reload 0: GR_REGS, RELOAD_FOR_OUTPUT_ADDRESS (opnum = 0), can't combine,
> secondary_reload_p
> reload_reg_rtx: (reg:SI 5 $5)
> Reload 1: reload_out (SI) = (reg:SI 32 $f0 [1655])