From e419f710eac879d81fdbd8f528fed2bbfa3a816c Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sun, 16 May 2010 19:26:55 +0200 Subject: [PATCH] ipa.c (function_and_variable_visibility): Also bring local all aliases. * ipa.c (function_and_variable_visibility): Also bring local all aliases. From-SVN: r159461 --- gcc/ChangeLog | 5 +++++ gcc/ipa.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 71cf0d3c0d2..94f6358719f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-05-16 Jan Hubicka + + * ipa.c (function_and_variable_visibility): Also bring local all + aliases. + 2010-05-16 Richard Guenther * alias.c (nonoverlapping_memrefs_p): Remove use of diff --git a/gcc/ipa.c b/gcc/ipa.c index 9d2b023a5b0..c8b0d7b385d 100644 --- a/gcc/ipa.c +++ b/gcc/ipa.c @@ -655,8 +655,11 @@ function_and_variable_visibility (bool whole_program) if (!node->local.externally_visible && node->analyzed && !DECL_EXTERNAL (node->decl)) { + struct cgraph_node *alias; gcc_assert (whole_program || !TREE_PUBLIC (node->decl)); cgraph_make_decl_local (node->decl); + for (alias = node->same_body; alias; alias = alias->next) + cgraph_make_decl_local (alias->decl); if (node->same_comdat_group) /* cgraph_externally_visible_p has already checked all other nodes in the group and they will all be made local. We need to