diff options
Diffstat (limited to 'gcc/ipa-visibility.cc')
-rw-r--r-- | gcc/ipa-visibility.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/ipa-visibility.cc b/gcc/ipa-visibility.cc index 21f0c47..f903d3d 100644 --- a/gcc/ipa-visibility.cc +++ b/gcc/ipa-visibility.cc @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>. */ -/* This file implements two related passes: +/* This file implements two related passes: - pass_data_ipa_function_and_variable_visibility run just after symbol table, references and callgraph are built @@ -158,7 +158,7 @@ comdat_can_be_unshared_p_1 (symtab_node *node) /* COMDAT functions must be shared only if they have address taken, otherwise we can produce our own private implementation with - -fwhole-program. + -fwhole-program. Return true when turning COMDAT function static cannot lead to wrong code when the resulting object links with a library defining same COMDAT. @@ -353,7 +353,7 @@ can_replace_by_local_alias (symtab_node *node) node = node->get_alias_target (); if (node->weakref) return false; - + return (node->get_availability () > AVAIL_INTERPOSABLE && !decl_binds_to_current_def_p (node->decl) && !node->can_be_discarded_p ()); @@ -390,7 +390,7 @@ update_vtable_references (tree *tp, int *walk_subtrees, } /* In LTO we can remove COMDAT groups and weak symbols. - Either turn them into normal symbols or external symbol depending on + Either turn them into normal symbols or external symbol depending on resolution info. */ static void @@ -769,7 +769,7 @@ function_and_variable_visibility (bool whole_program) enable more optimization. TODO: We can also update virtual tables. */ - if (node->callers + if (node->callers && can_replace_by_local_alias (node)) { cgraph_node *alias = dyn_cast<cgraph_node *> |