diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0a16ea8fc33..ab237e8a96d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-04-17 Eric Botcazou + + * dbxout.c (dbxout_block): Reinstate test on TREE_USED. + * tree-ssa-live.c (remove_unused_scope_block_p): Update TREE_USED bit. + 2009-04-17 Richard Guenther * tree-ssa-structalias.c (get_constraint_for_component_ref): diff --git a/gcc/dbxout.c b/gcc/dbxout.c index dc63c7c80c4..2182d78c203 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -3594,7 +3594,7 @@ dbxout_block (tree block, int depth, tree args) while (block) { /* Ignore blocks never expanded or otherwise marked as real. */ - if (TREE_ASM_WRITTEN (block)) + if (TREE_USED (block) && TREE_ASM_WRITTEN (block)) { int did_output; int blocknum = BLOCK_NUMBER (block); diff --git a/gcc/tree-ssa-live.c b/gcc/tree-ssa-live.c index fa247458e92..5f3b9d86cc5 100644 --- a/gcc/tree-ssa-live.c +++ b/gcc/tree-ssa-live.c @@ -595,6 +595,8 @@ remove_unused_scope_block_p (tree scope) /* Verfify that only blocks with source location set are entry points to the inlined functions. */ gcc_assert (BLOCK_SOURCE_LOCATION (scope) == UNKNOWN_LOCATION); + + TREE_USED (scope) = !unused; return unused; }