From ba245151fca2c6a5af41378f56952250a1d7672e Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sun, 7 Sep 2003 00:47:19 +0200 Subject: [PATCH] cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized functions. * cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized functions. (cgraph_varpool_finalize_decl): Notice global symbol when needed. From-SVN: r71149 --- gcc/ChangeLog | 4 ++++ gcc/cgraph.c | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 610bbb0a81d..2f265b79629 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -3,6 +3,10 @@ Sun Sep 7 00:22:22 CEST 2003 Jan Hubicka * toplev.c (rest_of_decl_compilation): Do not finalize external virables. + * cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized + functions. + (cgraph_varpool_finalize_decl): Notice global symbol when needed. + Sat Sep 6 23:49:13 CEST 2003 Jan Hubicka PR target/12070 diff --git a/gcc/cgraph.c b/gcc/cgraph.c index 8b4c0ccf13d..4eaa60e8e76 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -239,13 +239,13 @@ cgraph_remove_node (struct cgraph_node *node) void cgraph_mark_reachable_node (struct cgraph_node *node) { - if (!node->reachable && DECL_SAVED_TREE (node->decl)) + if (!node->reachable && node->local.finalized) { + notice_global_symbol (node->decl); node->reachable = 1; node->next_needed = cgraph_nodes_queue; cgraph_nodes_queue = node; - notice_global_symbol (node->decl); /* At the moment frontend automatically emits all nested functions. */ if (node->nested) @@ -486,6 +486,7 @@ cgraph_varpool_finalize_decl (tree decl) { node->next_needed = cgraph_varpool_nodes_queue; cgraph_varpool_nodes_queue = node; + notice_global_symbol (decl); } node->finalized = true; -- 2.30.2