summaryrefslogtreecommitdiff
path: root/ld/ldemul.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2005-07-15 12:19:15 +0000
committerAlan Modra <amodra@bigpond.net.au>2005-07-15 12:19:15 +0000
commitfde0a363c3808536e48eb7afeb9193ea2705b9b3 (patch)
treef5e138545fbba3a13d1ffc45a7f2bced4d1a71d6 /ld/ldemul.h
parent6dbaacf1109bee562003db5b38b662d146505194 (diff)
downloadbinutils-redhat-fde0a363c3808536e48eb7afeb9193ea2705b9b3.tar.gz
* ldemul.c (ldemul_do_assignments): New function.
(do_assignments_default): New function. * ldemul.h (ldemul_do_assignments): Declare. (do_assignments_default): Declare. (struct ld_emulation_xfer_struct): Add do_assignments. * ldlang.c (lang_do_assignments) Call ldemul_do_assignments. * emultempl/aix.em (ld_*_emulation): Init do_assignments field. * emultempl/armcoff.em: Likewise. * emultempl/beos.em: Likewise. * emultempl/generic.em: Likewise. * emultempl/gld960.em: Likewise. * emultempl/gld960c.em: Likewise. * emultempl/linux.em: Likewise. * emultempl/lnk960.em: Likewise. * emultempl/m68kcoff.em: Likewise. * emultempl/pe.em: Likewise. * emultempl/sunos.em: Likewise. * emultempl/ticoff.em: Likewise. * emultempl/vanilla.em: Likewise. * emultempl/elf32.em: Likewise, to call gld*_provide_init_fini_syms. (gld*_find_exp_assignment): Adjust bfd_elf_record_link_assignment call.
Diffstat (limited to 'ld/ldemul.h')
-rw-r--r--ld/ldemul.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/ld/ldemul.h b/ld/ldemul.h
index 1170c0a021..1a42cb63de 100644
--- a/ld/ldemul.h
+++ b/ld/ldemul.h
@@ -1,6 +1,6 @@
/* ld-emul.h - Linker emulation header file
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001,
- 2002, 2003, 2004
+ 2002, 2003, 2004, 2005
Free Software Foundation, Inc.
This file is part of GLD, the Gnu Linker.
@@ -35,6 +35,8 @@ extern void ldemul_after_allocation
(void);
extern void ldemul_before_allocation
(void);
+extern void ldemul_do_assignments
+ (void);
extern void ldemul_set_output_arch
(void);
extern char *ldemul_choose_target
@@ -77,6 +79,8 @@ extern void after_allocation_default
(void);
extern void before_allocation_default
(void);
+extern void do_assignments_default
+ (void);
extern void set_output_arch_default
(void);
extern void syslib_default
@@ -117,6 +121,9 @@ typedef struct ld_emulation_xfer_struct {
/* Run before allocating output sections. */
void (*before_allocation) (void);
+ /* Run to set special symbols at the same time as link script syms. */
+ void (*do_assignments) (void);
+
/* Return the appropriate linker script. */
char * (*get_script) (int *isfile);