summaryrefslogtreecommitdiff
path: root/gcc/sel-sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/sel-sched.c')
-rw-r--r--gcc/sel-sched.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c
index e524d02516f..b1a33beb7d0 100644
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -6483,9 +6483,10 @@ setup_current_loop_nest (int rgn)
static void
purge_empty_blocks (void)
{
- int i ;
+ /* Do not attempt to delete preheader. */
+ int i = sel_is_loop_preheader_p (BASIC_BLOCK (BB_TO_BLOCK (0))) ? 1 : 0;
- for (i = 1; i < current_nr_blocks; )
+ while (i < current_nr_blocks)
{
basic_block b = BASIC_BLOCK (BB_TO_BLOCK (i));