ipa.c (function_and_variable_visibility): First remember function was global and...
authorJan Hubicka <jh@suse.cz>
Thu, 22 Aug 2013 15:56:01 +0000 (15:56 +0000)
committerJan Hubicka <hubicka@gcc.gnu.org>
Thu, 22 Aug 2013 15:56:01 +0000 (15:56 +0000)
* ipa.c (function_and_variable_visibility): First remember function was global
and then make it local.

From-SVN: r201924

gcc/ChangeLog
gcc/ipa.c

index 08c4e31..ea3c14a 100644 (file)
@@ -1,3 +1,8 @@
+2013-08-22  Jan Hubicka  <jh@susue.cz>
+
+       * ipa.c (function_and_variable_visibility): First remember function was global
+       and then make it local.
+
 2013-08-22  Julian Brown  <julian@codesourcery.com>
 
        * configure.ac: Add aarch64 to list of arches which use "nop" in
index 7e8a82c..370032b 100644 (file)
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -968,10 +968,10 @@ function_and_variable_visibility (bool whole_program)
          && !vnode->symbol.weakref)
        {
          gcc_assert (in_lto_p || whole_program || !TREE_PUBLIC (vnode->symbol.decl));
-         symtab_make_decl_local (vnode->symbol.decl);
          vnode->symbol.unique_name = ((vnode->symbol.resolution == LDPR_PREVAILING_DEF_IRONLY
                                       || vnode->symbol.resolution == LDPR_PREVAILING_DEF_IRONLY_EXP)
                                       && TREE_PUBLIC (vnode->symbol.decl));
+         symtab_make_decl_local (vnode->symbol.decl);
          if (vnode->symbol.same_comdat_group)
            symtab_dissolve_same_comdat_group_list ((symtab_node) vnode);
          vnode->symbol.resolution = LDPR_PREVAILING_DEF_IRONLY;