Fix Mozilla LTO build
Jan Hubicka
hubicka@ucw.cz
Thu May 10 21:43:00 GMT 2012
Hi,
Mozilla LTO build broke due because symtab_remove_unreachable_nodes incorrectly removes origins of clones
in some special cases.
Bootstrapped/regtested x97_64-linux and comitted.
Index: ipa.c
===================================================================
--- ipa.c (revision 187375)
+++ ipa.c (working copy)
@@ -310,12 +310,12 @@ symtab_remove_unreachable_nodes (bool be
/* For non-inline clones, force their origins to the boundary and ensure
that body is not removed. */
- while (cnode->clone_of && !cnode->clone_of->symbol.aux
+ while (cnode->clone_of
&& !gimple_has_body_p (cnode->symbol.decl))
{
bool noninline = cnode->clone_of->symbol.decl != cnode->symbol.decl;
cnode = cnode->clone_of;
- if (noninline && !cnode->symbol.aux)
+ if (noninline)
{
pointer_set_insert (body_needed_for_clonning, cnode->symbol.decl);
enqueue_node ((symtab_node)cnode, &first, reachable);
More information about the Gcc-patches
mailing list