bb-reorder: Fix for ICEs caused by 69ca5f3a98

After the previous patch we are left with an unreachable BB.  This will
ICE if either we have -fschedule-fusion, or we do not have peephole2.

2020-09-15  Segher Boessenkool  <segher@kernel.crashing.org>

	PR rtl-optimization/96475
	* bb-reorder.c (duplicate_computed_gotos): If we did anything, run
	cleanup_cfg.
This commit is contained in:
Segher Boessenkool 2020-09-14 18:19:47 +00:00
parent c9de716a59
commit bab5813816

View File

@ -2760,6 +2760,10 @@ duplicate_computed_gotos (function *fun)
if (computed_jump_p (BB_END (bb)) && can_duplicate_block_p (bb))
changed |= maybe_duplicate_computed_goto (bb, max_size);
/* Some blocks may have become unreachable. */
if (changed)
cleanup_cfg (0);
/* Duplicating blocks will redirect edges and may cause hot blocks
previously reached by both hot and cold blocks to become dominated
only by cold blocks. */