Skip to content
Snippets Groups Projects
Commit bec35caa authored by Surya Kumari Jangala's avatar Surya Kumari Jangala
Browse files

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  <jskumari@linux.ibm.com>

gcc/
	PR rtl-optimization/105586
	* sched-rgn.cc (save_state_for_fallthru_edge): New function.
	(schedule_region): Use it for all blocks.

gcc/testsuite/
	PR rtl-optimization/105586
	* gcc.target/powerpc/pr105586.c: New test.
parent a961ad1b
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment