summaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-16 17:15:11 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-16 17:15:11 +0000
commitd7401838f94babd4165c62f2d81893502918c0ba (patch)
treedea6e2717e4d542e86bb9d06e16d59fe24986dbf /gcc/toplev.c
parentada77d456c193e503e494ebdafa747f51d32c1d3 (diff)
downloadgcc-d7401838f94babd4165c62f2d81893502918c0ba.tar.gz
PR middle-end/15700
* varasm.c (struct alias_pair): Rename from struct output_def_pair. (alias_pairs): Rename from output_defs. (find_decl_and_mark_needed): Split out from assemble_alias. (do_assemble_alias): New. (assemble_output_def): Remove. (finish_aliases_1, finish_aliases_2): New. (process_pending_assemble_output_defs): Remove. (assemble_alias): Defer aliases for which we don't yet have a non-external decl for the target symbol. * passes.c (rest_of_decl_compilation): Register variables with cgraph. * cgraphunit.c (cgraph_finalize_compilation_unit): Use finish_aliases_1. * toplev.c (compile_file): Use finish_aliases_2 instead of process_pending_assemble_output_defs. * tree.h (finish_aliases_1, finish_aliases_2): Declare. (process_pending_assemble_output_defs): Remove. * gcc.c-torture/compile/20040323-1.c: Don't xfail for solaris. (_rtld_global): New. * gcc.dg/weak/weak-3.c (ffoox1f, ffoox1g): Define. * gcc.dg/weak/weak-9.c (notf1, notf2, notf3, notf4): Define. * gcc.dg/alias-3.c: New. * gcc.dg/alias-4.c: New. * gcc.dg/alias-5.c: New. * gcc.dg/alias-6.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96564 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 855e04adeb2..5eb0d0deac9 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -1009,8 +1009,8 @@ compile_file (void)
return;
lang_hooks.decls.final_write_globals ();
-
cgraph_varpool_assemble_pending_decls ();
+ finish_aliases_2 ();
/* This must occur after the loop to output deferred functions.
Else the coverage initializer would not be emitted if all the
@@ -1045,9 +1045,6 @@ compile_file (void)
expander can also generate them. */
process_pending_assemble_externals ();
- /* Flush any pending equate directives. */
- process_pending_assemble_output_defs ();
-
/* Attach a special .ident directive to the end of the file to identify
the version of GCC which compiled this code. The format of the .ident
string is patterned after the ones produced by native SVR4 compilers. */