On Thu, May 07, 2020 at 10:23:24AM +0200, Eric Botcazou wrote:
> > Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, plus
> > tested with yes,df checking build/regtest on x86_64-linux (which previously
> > failed), ok for trunk?
> >
> > 2020-05-06 Jakub Jelinek <[email protected]>
> >
> > PR bootstrap/94961
> > PR rtl-optimization/94516
> > * combine-stack-adj.c (try_apply_stack_adjustment): Call
> > df_notes_rescan after calling remove_reg_equal_equiv_notes.
>
> Do you need to backport this onto some branches? Otherwise, it would
> probably
Still undecided about that.
> be better to do in remove_reg_equal_equiv_notes what is done in remove_note.
But I can surely do
if (ret)
df_notes_rescan (insn);
before
return ret;
in remove_reg_equal_equiv_notes.
Though, combine.c doesn't need that, as it shortly afterward the
remove_reg_equal_equiv_notes call calls full df_insn_rescan, postreload.c
has
if (reg_state[regno].offset != const0_rtx
/* Previous REG_EQUIV / REG_EQUAL notes for PREV
are now invalid. */
&& remove_reg_equal_equiv_notes (prev))
df_notes_rescan (prev);
and those are the only two callers of this function besides the new one
in combine-stack-adj.c.
Jakub