aboutsummaryrefslogtreecommitdiff
path: root/gcc/passes.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2009-03-28 13:04:38 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2009-03-28 12:04:38 +0000
commit257eb6e3ef00aa111907c4b9411aaa81cdc80396 (patch)
tree69b155323bbc7a05d3f5fd2ca7a7962ead5a3ce3 /gcc/passes.c
parentb7551676632af6f5641aaeb500acc566c4e20922 (diff)
downloadgcc-257eb6e3ef00aa111907c4b9411aaa81cdc80396.zip
gcc-257eb6e3ef00aa111907c4b9411aaa81cdc80396.tar.gz
gcc-257eb6e3ef00aa111907c4b9411aaa81cdc80396.tar.bz2
cgraph.c (dump_cgraph_node): Add replace output flag by process.
* cgraph.c (dump_cgraph_node): Add replace output flag by process. * cgraph.h (cgraph_node): Likewise. * cgraphunit.c (cgraph_process_new_functions): Set process flag. (cgraph_reset_node): Use process flag. (cgraph_mark_functions_to_output): Likewise. (cgraph_expand_function): Likewise. (cgraph_expand_all_functions): Likewise. (cgraph_output_in_order): Likewise. * dwarf2out.c (reference_to_unused): Likewise. * passes.c do_per_function_toporder): Likewise. From-SVN: r145178
Diffstat (limited to 'gcc/passes.c')
-rw-r--r--gcc/passes.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/passes.c b/gcc/passes.c
index 4358b82..b77b518 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -878,11 +878,14 @@ do_per_function_toporder (void (*callback) (void *data), void *data)
order = GGC_NEWVEC (struct cgraph_node *, cgraph_n_nodes);
nnodes = cgraph_postorder (order);
for (i = nnodes - 1; i >= 0; i--)
+ order[i]->process = 1;
+ for (i = nnodes - 1; i >= 0; i--)
{
struct cgraph_node *node = order[i];
/* Allow possibly removed nodes to be garbage collected. */
order[i] = NULL;
+ node->process = 0;
if (node->analyzed && (node->needed || node->reachable))
{
push_cfun (DECL_STRUCT_FUNCTION (node->decl));