]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR bootstrap/50822 (Solaris/SPARC bootstrap failure with Sun as: invalid assembler...
authorJan Hubicka <jh@suse.cz>
Sat, 12 Nov 2011 13:19:55 +0000 (14:19 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sat, 12 Nov 2011 13:19:55 +0000 (13:19 +0000)
PR bootstrap/50822
* cgraphunit.c (output_weakrefs): Output really only weakrefs.

From-SVN: r181311

gcc/ChangeLog
gcc/cgraphunit.c

index 9f0505b7063ba4dc2f881d6ea9133773fcd32eb5..f64897845c0acd84e939a9145fd5d600ae2ff242 100644 (file)
@@ -1,3 +1,8 @@
+2011-11-12  Jan Hubicka  <jh@suse.cz>
+
+       PR bootstrap/50822
+       * cgraphunit.c (output_weakrefs): Output really only weakrefs.
+
 2011-11-12  Nathan Sidwell  <nathan@acm.org>
 
        * gcov.c (struct name_map): New.
index e401b8f2f2b354a8dfa27289736468c2076e0104..40bcf8fc9ef964a6f9bd14de7cced2b220a87ff1 100644 (file)
@@ -2101,13 +2101,15 @@ output_weakrefs (void)
   struct varpool_node *vnode;
   for (node = cgraph_nodes; node; node = node->next)
     if (node->alias && DECL_EXTERNAL (node->decl)
-        && !TREE_ASM_WRITTEN (node->decl))
+        && !TREE_ASM_WRITTEN (node->decl)
+       && lookup_attribute ("weakref", DECL_ATTRIBUTES (node->decl)))
       assemble_alias (node->decl,
                      node->thunk.alias ? DECL_ASSEMBLER_NAME (node->thunk.alias)
                      : get_alias_symbol (node->decl));
   for (vnode = varpool_nodes; vnode; vnode = vnode->next)
     if (vnode->alias && DECL_EXTERNAL (vnode->decl)
-        && !TREE_ASM_WRITTEN (vnode->decl))
+        && !TREE_ASM_WRITTEN (vnode->decl)
+       && lookup_attribute ("weakref", DECL_ATTRIBUTES (vnode->decl)))
       assemble_alias (vnode->decl,
                      vnode->alias_of ? DECL_ASSEMBLER_NAME (vnode->alias_of)
                      : get_alias_symbol (vnode->decl));