[Bug bootstrap/50689] AIX bootstrap failure from cgraphunit.c aliases change
hubicka at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Oct 14 12:51:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50689
--- Comment #4 from Jan Hubicka <hubicka at gcc dot gnu.org> 2011-10-14 12:50:54 UTC ---
Thanks. I am testing the following patch. Could you, please, verify that it
soves the problem on AIX? I am quite convinced the aliases should be output
correctly with this change.
Index: cgraphunit.c
===================================================================
--- cgraphunit.c (revision 179919)
+++ cgraphunit.c (working copy)
@@ -1798,7 +1798,6 @@ cgraph_expand_function (struct cgraph_no
announce_function (decl);
node->process = 0;
- assemble_thunks_and_aliases (node);
gcc_assert (node->lowered);
/* Generate RTL for the body of DECL. */
@@ -1808,6 +1807,14 @@ cgraph_expand_function (struct cgraph_no
gcc_assert (TREE_ASM_WRITTEN (decl));
current_function_decl = NULL;
gcc_assert (!cgraph_preserve_function_body_p (node));
+
+ /* It would make a lot more sense to output thunks before function body to
get more
+ forward and lest backwarding jumps. This is however would need solving
problem
+ with comdats. See PR48668. Also aliases must come after function itself
to
+ make one pass assemblers, like one on AIX happy. See PR 50689.
+ FIXME: Perhaps thunks should be move before function IFF they are not in
comdat
+ groups. */
+ assemble_thunks_and_aliases (node);
cgraph_release_function_body (node);
/* Eliminate all call edges. This is important so the GIMPLE_CALL no longer
points to the dead function body. */
More information about the Gcc-bugs
mailing list