On 8/23/22 6:49 AM, Surya Kumari Jangala wrote:
> sched1: Fix -fcompare-debug issue in schedule_region [PR105586]
>
> In schedule_region(), a basic block that does not contain any real insns
> is not scheduled and the dfa state at the entry of the bb is not copied
> to the fallthru basic block. However a DEBUG insn is treated as a real
> insn, and if a bb contains non-real insns and a DEBUG insn, it's dfa
> state is copied to the fallthru bb. This was resulting in
> -fcompare-debug failure as the incoming dfa state of the fallthru block
> is different with -g. We should always copy the dfa state of a bb to
> it's fallthru bb even if the bb does not contain real insns.
>
> 2022-08-22 Surya Kumari Jangala <[email protected]>
>
> gcc/
> PR rtl-optimization/105586
> * sched-rgn.cc (schedule_region): Always copy dfa state to
> fallthru block.
It looks good to me, but I cannot approve it. That said, you're missing
a ChangeLog entry for your new helper function. The ChangeLog mentions
what changed, not why it changed. Maybe something like the following?
gcc/
PR rtl-optimization/105586
* sched-rgn.cc (save_state_for_fallthru_edge): New function.
(schedule_region): Use it for all blocks.
Peter