From efe1ed8fb5b151c9c4819ff1fa9af579151e259c Mon Sep 17 00:00:00 2001 From: Kewen Lin Date: Tue, 14 Nov 2023 15:39:24 +0800 Subject: [PATCH] sched: Assert we don't have any chance to get empty blocks att. gcc/ChangeLog: * sched-ebb.cc (schedule_ebb): Assert no empty blocks. * sched-rgn.cc (compute_priorities): Likewise. (schedule_region): Likewise. --- gcc/sched-ebb.cc | 5 ++++- gcc/sched-rgn.cc | 7 ++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/sched-ebb.cc b/gcc/sched-ebb.cc index 110fcdbca4d..9fdfd72b6fc 100644 --- a/gcc/sched-ebb.cc +++ b/gcc/sched-ebb.cc @@ -492,7 +492,10 @@ schedule_ebb (rtx_insn *head, rtx_insn *tail, bool modulo_scheduling) last_bb = BLOCK_FOR_INSN (tail); if (no_real_insns_p (head, tail)) - return BLOCK_FOR_INSN (tail); + { + gcc_unreachable (); + return BLOCK_FOR_INSN (tail); + } gcc_assert (INSN_P (head) && INSN_P (tail)); diff --git a/gcc/sched-rgn.cc b/gcc/sched-rgn.cc index 1c8acf5068a..795c455872e 100644 --- a/gcc/sched-rgn.cc +++ b/gcc/sched-rgn.cc @@ -3025,7 +3025,10 @@ compute_priorities (void) get_ebb_head_tail (EBB_FIRST_BB (bb), EBB_LAST_BB (bb), &head, &tail); if (no_real_insns_p (head, tail)) - continue; + { + gcc_unreachable (); + continue; + } rgn_n_insns += set_priorities (head, tail); } @@ -3160,6 +3163,7 @@ schedule_region (int rgn) if (no_real_insns_p (head, tail)) { + gcc_unreachable (); gcc_assert (first_bb == last_bb); continue; } @@ -3180,6 +3184,7 @@ schedule_region (int rgn) if (no_real_insns_p (head, tail)) { + gcc_unreachable (); gcc_assert (first_bb == last_bb); save_state_for_fallthru_edge (last_bb, bb_state[first_bb->index]); continue; -- 2.39.1