aboutsummaryrefslogtreecommitdiff
path: root/gcc/output.h
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2006-12-12 03:58:52 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2006-12-11 19:58:52 -0800
commitc47c29c8964d7c80329574f4a3b9c70f2fa533b4 (patch)
tree39fa7bd559e89365079d4e0441db0929ccb97dd5 /gcc/output.h
parent864abd46caa11641fe0588e31d1e19135c29f476 (diff)
downloadgcc-c47c29c8964d7c80329574f4a3b9c70f2fa533b4.zip
gcc-c47c29c8964d7c80329574f4a3b9c70f2fa533b4.tar.gz
gcc-c47c29c8964d7c80329574f4a3b9c70f2fa533b4.tar.bz2
re PR middle-end/17982 (stop calling assemble_external before final assembly output time)
2006-12-11 H.J. Lu <hongjiu.lu@intel.com> PR middle-end/17982 PR middle-end/20218 * cgraphunit.c (cgraph_optimize): Remove call to process_pending_assemble_externals. * config/elfos.h (ASM_OUTPUT_EXTERNAL): New. * config/ia64/hpux.h (TARGET_ASM_FILE_END): Removed. * config/ia64/ia64.c (ia64_asm_output_external): Rewritten. (ia64_hpux_add_extern_decl): Removed. (ia64_hpux_file_end): Likewise. (extern_func_list): Likewise. (extern_func_head): Likewise. * output.h (assemble_external): Update comments. (default_elf_asm_output_external): New. (maybe_assemble_visibility): New. * toplev.c (compile_file): Update comment. * varasm.c (assemble_external): Always put it on pending_assemble_externals. (maybe_assemble_visibility): Make it extern and return int. (default_elf_asm_output_external): New. From-SVN: r119764
Diffstat (limited to 'gcc/output.h')
-rw-r--r--gcc/output.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/output.h b/gcc/output.h
index 3cfe32c..5f87cff 100644
--- a/gcc/output.h
+++ b/gcc/output.h
@@ -204,9 +204,9 @@ extern void assemble_variable (tree, int, int, int);
DONT_OUTPUT_DATA is from assemble_variable. */
extern void align_variable (tree decl, bool dont_output_data);
-/* Output something to declare an external symbol to the assembler.
- (Most assemblers don't need this, so we normally output nothing.)
- Do nothing if DECL is not external. */
+/* Queue for outputing something to declare an external symbol to the
+ assembler. (Most assemblers don't need this, so we normally output
+ nothing.) Do nothing if DECL is not external. */
extern void assemble_external (tree);
/* Assemble code to leave SIZE bytes of zeros. */
@@ -619,6 +619,10 @@ extern void default_file_start (void);
extern void file_end_indicate_exec_stack (void);
extern bool default_valid_pointer_mode (enum machine_mode);
+extern void default_elf_asm_output_external (FILE *file, tree,
+ const char *);
+extern int maybe_assemble_visibility (tree);
+
extern int default_address_cost (rtx);
/* dbxout helper functions */