lto-partition.c (promote_symbol): Write to dump file sooner, include alias promoting too.
* lto-partition.c (promote_symbol): Write to dump file sooner, include alias promoting too. From-SVN: r244159
This commit is contained in:
parent
24d3f3251c
commit
5406184ce7
2 changed files with 13 additions and 6 deletions
|
@ -1,5 +1,8 @@
|
|||
2017-01-06 Nathan Sidwell <nathan@acm.org>
|
||||
|
||||
* lto-partition.c (promote_symbol): Write to dump file sooner,
|
||||
include alias promoting too.
|
||||
|
||||
* lto-partition.c (lto_balanced_map): Reformat/respell comment.
|
||||
(may_need_named_section_p): Likewise.
|
||||
(rename_statics): Likewise.
|
||||
|
|
|
@ -987,11 +987,15 @@ promote_symbol (symtab_node *node)
|
|||
TREE_PUBLIC (node->decl) = 1;
|
||||
DECL_VISIBILITY (node->decl) = VISIBILITY_HIDDEN;
|
||||
DECL_VISIBILITY_SPECIFIED (node->decl) = true;
|
||||
ipa_ref *ref;
|
||||
if (symtab->dump_file)
|
||||
fprintf (symtab->dump_file,
|
||||
"Promoting as hidden: %s (%s)\n", node->name (),
|
||||
IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (node->decl)));
|
||||
|
||||
/* Promoting a symbol also promotes all trasparent aliases with exception
|
||||
/* Promoting a symbol also promotes all transparent aliases with exception
|
||||
of weakref where the visibility flags are always wrong and set to
|
||||
!PUBLIC. */
|
||||
ipa_ref *ref;
|
||||
for (unsigned i = 0; node->iterate_direct_aliases (i, ref); i++)
|
||||
{
|
||||
struct symtab_node *alias = ref->referring;
|
||||
|
@ -1000,13 +1004,13 @@ promote_symbol (symtab_node *node)
|
|||
TREE_PUBLIC (alias->decl) = 1;
|
||||
DECL_VISIBILITY (alias->decl) = VISIBILITY_HIDDEN;
|
||||
DECL_VISIBILITY_SPECIFIED (alias->decl) = true;
|
||||
if (symtab->dump_file)
|
||||
fprintf (symtab->dump_file,
|
||||
"Promoting alias as hidden: %s\n",
|
||||
IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (node->decl)));
|
||||
}
|
||||
gcc_assert (!alias->weakref || TREE_PUBLIC (alias->decl));
|
||||
}
|
||||
|
||||
if (symtab->dump_file)
|
||||
fprintf (symtab->dump_file,
|
||||
"Promoting as hidden: %s\n", node->name ());
|
||||
}
|
||||
|
||||
/* Return true if NODE needs named section even if it won't land in
|
||||
|
|
Loading…
Add table
Reference in a new issue