* varasm.c (assemble_alias): Set it.
* cgraphunit.c (cgraph_assemble_pending_functions): Check it and
avoid calling cgraph_expand_function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97284
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-03-30 Richard Henderson <rth@redhat.com>
+
+ * cgraph.h (struct cgraph_node): Add alias.
+ * varasm.c (assemble_alias): Set it.
+ * cgraphunit.c (cgraph_assemble_pending_functions): Check it and
+ avoid calling cgraph_expand_function.
+
2005-03-30 Tom Tromey <tromey@redhat.com>
* tree.def (FILE_TYPE): Removed.
bool analyzed;
/* Set when function is scheduled to be assembled. */
bool output;
+ /* Set for aliases once they got through assemble_alias. */
+ bool alias;
};
struct cgraph_edge GTY((chain_next ("%h.next_caller"), chain_prev ("%h.prev_caller")))
cgraph_nodes_queue = cgraph_nodes_queue->next_needed;
n->next_needed = NULL;
- if (!n->global.inlined_to && !DECL_EXTERNAL (n->decl))
+ if (!n->global.inlined_to
+ && !n->alias
+ && !DECL_EXTERNAL (n->decl))
{
cgraph_expand_function (n);
output = true;
/* Allow aliases to aliases. */
if (TREE_CODE (decl) == FUNCTION_DECL)
- cgraph_node (decl);
+ cgraph_node (decl)->alias = true;
else
cgraph_varpool_node (decl)->alias = true;