diff options
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-manip.c | 4 |
2 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ea90541..8cad980 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,14 @@ 2010-06-14 Alexandre Oliva <aoliva@redhat.com> + PR debug/43650 + PR debug/44181 + PR debug/44247 + * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Skip + debug stmts. + (canonicalize_loop_ivs): Likewise. + +2010-06-14 Alexandre Oliva <aoliva@redhat.com> + PR debug/43656 * haifa-sched.c (setup_insn_reg_pressure_info, update_register_pressure): Reject debug insns. diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c index 219c71b..c6dc8ed 100644 --- a/gcc/tree-ssa-loop-manip.c +++ b/gcc/tree-ssa-loop-manip.c @@ -1081,7 +1081,7 @@ tree_transform_and_unroll_loop (struct loop *loop, unsigned factor, /* Finally create the new counter for number of iterations and add the new exit instruction. */ - bsi = gsi_last_bb (exit_bb); + bsi = gsi_last_nondebug_bb (exit_bb); exit_if = gsi_stmt (bsi); create_iv (exit_base, exit_step, NULL_TREE, loop, &bsi, false, &ctr_before, &ctr_after); @@ -1217,7 +1217,7 @@ canonicalize_loop_ivs (struct loop *loop, tree *nit, bool bump_in_latch) gsi_insert_seq_on_edge_immediate (loop_preheader_edge (loop), stmts); } - gsi = gsi_last_bb (bump_in_latch ? loop->latch : loop->header); + gsi = gsi_last_nondebug_bb (bump_in_latch ? loop->latch : loop->header); create_iv (build_int_cst_type (type, 0), build_int_cst (type, 1), NULL_TREE, loop, &gsi, bump_in_latch, &var_before, NULL); |