File gcc43-better-debuginfo-2.diff of Package gcc43
2008-10-09 Jakub Jelinek <jakub@redhat.com>
* tree-ssa-live.c (remove_unused_locals): Mark all edge's goto_block
as used.
Index: gcc/tree-ssa-live.c
===================================================================
--- gcc/tree-ssa-live.c.orig 2008-02-19 10:56:00.000000000 +0100
+++ gcc/tree-ssa-live.c 2011-10-11 15:10:37.000000000 +0200
@@ -591,6 +591,8 @@ remove_unused_locals (void)
{
block_stmt_iterator bsi;
tree phi, def;
+ edge_iterator ei;
+ edge e;
/* Walk the statements. */
for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi))
@@ -614,6 +616,10 @@ remove_unused_locals (void)
mark_all_vars_used (&arg, NULL);
}
}
+
+ FOR_EACH_EDGE (e, ei, bb->succs)
+ if (e->goto_locus && e->goto_block)
+ TREE_USED (e->goto_block) = true;
}
/* Remove unmarked local vars from unexpanded_var_list. */