summaryrefslogtreecommitdiff
path: root/gcc/config/ia64/hpux.h
diff options
context:
space:
mode:
authorsje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-09 22:03:31 +0000
committersje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-09 22:03:31 +0000
commitd7b7c7549096c1c7b76ce2bfa3c4f148499e0404 (patch)
tree6bc6745fdfa6f27e8e571ab2b3357b8297b44717 /gcc/config/ia64/hpux.h
parent2fa45ffba4a736e4cfb23969d8ec0ae28218b871 (diff)
downloadgcc-d7b7c7549096c1c7b76ce2bfa3c4f148499e0404.tar.gz
* config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
(ASM_FILE_END) New. * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false. * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New. * config/ia64/ia64.c (ia64_asm_output_external): Create list of external functions if TARGET_HPUX_LD is true. (ia64_hpux_add_extern_decl): New, routine to put names on list of external functions. (ia64_hpux_asm_file_end): Put out declarations for external functions if and only if they are used. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56986 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64/hpux.h')
-rw-r--r--gcc/config/ia64/hpux.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h
index 968d0ed9147..0b639d19a60 100644
--- a/gcc/config/ia64/hpux.h
+++ b/gcc/config/ia64/hpux.h
@@ -127,3 +127,14 @@ do { \
#define REGISTER_TARGET_PRAGMAS(PFILE) \
cpp_register_pragma (PFILE, 0, "builtin", ia64_hpux_handle_builtin_pragma)
+
+/* Tell ia64.c that we are using the HP linker and we should delay output of
+ function extern declarations so that we don't output them for functions
+ which are never used (and may not be defined). */
+
+#undef TARGET_HPUX_LD
+#define TARGET_HPUX_LD 1
+
+/* Put out the needed function declarations at the end. */
+
+#define ASM_FILE_END(STREAM) ia64_hpux_asm_file_end(STREAM)