* 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 <jh@suse.cz>
PR target/12070
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)
{
node->next_needed = cgraph_varpool_nodes_queue;
cgraph_varpool_nodes_queue = node;
+ notice_global_symbol (decl);
}
node->finalized = true;