aboutsummaryrefslogtreecommitdiff
path: root/ld/emultempl
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2014-06-13 19:10:57 +0930
committerAlan Modra <amodra@gmail.com>2014-06-13 19:10:57 +0930
commitc72f2fb2bb6a3e1850b081dbfce4040970fae8e6 (patch)
tree956ef2777825e25830add0776f1155ff6181c654 /ld/emultempl
parent07cccc39f31f4b77607fd9487f33e242969475ca (diff)
downloadgdb-c72f2fb2bb6a3e1850b081dbfce4040970fae8e6.zip
gdb-c72f2fb2bb6a3e1850b081dbfce4040970fae8e6.tar.gz
gdb-c72f2fb2bb6a3e1850b081dbfce4040970fae8e6.tar.bz2
Make bfd.link_next field a union
This field of struct bfd is currently only used to chain together linker input files. This patch prepares to use the field to stash the linker hash table, which is always created on the linker output file. bfd/ * bfd.c (struct bfd): Replace link_next with a union. * aoutx.h, * bfd.c, * coff-ppc.c, * coff-rs6000.c, * cofflink.c, * ecoff.c, * elf-m10300.c, * elf32-arm.c, * elf32-avr.c, * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-metag.c, * elf32-microblaze.c, * elf32-nds32.c, * elf32-nios2.c, * elf32-or1k.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-s390.c, * elf32-score.c, * elf32-score7.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c, * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c, * elf64-ppc.c, * elf64-s390.c, * elf64-x86-64.c, * elflink.c, * elfnn-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c, * linker.c, * pdp11.c, * peXXigen.c, * simple.c, * sunos.c, * vms-alpha.c, * xcofflink.c: Update for above. * bfd-in2.h: Regenerate. include/ * bfdlink.h: Update for bfd.link_next change. ld/ * emultempl/cr16elf.em, * emultempl/elf32.em, * emultempl/genelf.em, * emultempl/m68kcoff.em, * emultempl/m68kelf.em, * emultempl/nds32elf.em, * emultempl/pe.em, * emultempl/pep.em, * ldlang.c, * ldmain.c, * pe-dll.c: Update for bfd.link_next change.
Diffstat (limited to 'ld/emultempl')
-rw-r--r--ld/emultempl/cr16elf.em4
-rw-r--r--ld/emultempl/elf32.em6
-rw-r--r--ld/emultempl/genelf.em2
-rw-r--r--ld/emultempl/m68kcoff.em4
-rw-r--r--ld/emultempl/m68kelf.em4
-rw-r--r--ld/emultempl/nds32elf.em6
-rw-r--r--ld/emultempl/pe.em4
-rw-r--r--ld/emultempl/pep.em4
8 files changed, 17 insertions, 17 deletions
diff --git a/ld/emultempl/cr16elf.em b/ld/emultempl/cr16elf.em
index 730235e..02f5220 100644
--- a/ld/emultempl/cr16elf.em
+++ b/ld/emultempl/cr16elf.em
@@ -47,7 +47,7 @@ cr16_elf_after_open (void)
input file with a nonzero .data section. The BFD backend will fill in
these sections with magic numbers which can be used to relocate the
data section at run time. */
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec;
@@ -139,7 +139,7 @@ cr16elf_before_allocation (void)
/* If we are generating embedded relocs, call a special BFD backend
routine to do the work. */
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec, *relsec;
char *errmsg;
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 3ebf3b5..39b4ccd 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1014,7 +1014,7 @@ gld${EMULATION_NAME}_after_open (void)
/* Find an ELF input. */
for (abfd = link_info.input_bfds;
- abfd != (bfd *) NULL; abfd = abfd->link_next)
+ abfd != (bfd *) NULL; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
break;
@@ -1051,7 +1051,7 @@ gld${EMULATION_NAME}_after_open (void)
bfd_boolean warn_eh_frame = FALSE;
asection *s;
- for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
{
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
elfbfd = abfd;
@@ -1459,7 +1459,7 @@ gld${EMULATION_NAME}_before_allocation (void)
if (rpath == NULL)
rpath = (const char *) getenv ("LD_RUN_PATH");
- for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
{
const char *audit_libs = elf_dt_audit (abfd);
diff --git a/ld/emultempl/genelf.em b/ld/emultempl/genelf.em
index 8561c17..5c5e1cb 100644
--- a/ld/emultempl/genelf.em
+++ b/ld/emultempl/genelf.em
@@ -38,7 +38,7 @@ gld${EMULATION_NAME}_after_open (void)
after_open_default ();
if (link_info.relocatable)
- for (ibfd = link_info.input_bfds; ibfd != NULL; ibfd = ibfd->link_next)
+ for (ibfd = link_info.input_bfds; ibfd != NULL; ibfd = ibfd->link.next)
if ((syms = bfd_get_outsymbols (ibfd)) != NULL
&& bfd_get_flavour (ibfd) == bfd_target_elf_flavour)
for (sec = ibfd->sections; sec != NULL; sec = sec->next)
diff --git a/ld/emultempl/m68kcoff.em b/ld/emultempl/m68kcoff.em
index e46889a..1a95d7c 100644
--- a/ld/emultempl/m68kcoff.em
+++ b/ld/emultempl/m68kcoff.em
@@ -67,7 +67,7 @@ gld${EMULATION_NAME}_after_open (void)
|| link_info.relocatable)
return;
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec;
@@ -133,7 +133,7 @@ gld${EMULATION_NAME}_after_allocation (void)
|| link_info.relocatable)
return;
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec, *relsec;
char *errmsg;
diff --git a/ld/emultempl/m68kelf.em b/ld/emultempl/m68kelf.em
index 35b3088..c5cfe77 100644
--- a/ld/emultempl/m68kelf.em
+++ b/ld/emultempl/m68kelf.em
@@ -75,7 +75,7 @@ m68k_elf_after_open (void)
input file with a nonzero .data section. The BFD backend will fill in
these sections with magic numbers which can be used to relocate the
data section at run time. */
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec;
@@ -153,7 +153,7 @@ m68k_elf_after_allocation (void)
/* If we are generating embedded relocs, call a special BFD backend
routine to do the work. */
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
asection *datasec, *relsec;
char *errmsg;
diff --git a/ld/emultempl/nds32elf.em b/ld/emultempl/nds32elf.em
index 96e6aa3..cad6715 100644
--- a/ld/emultempl/nds32elf.em
+++ b/ld/emultempl/nds32elf.em
@@ -105,7 +105,7 @@ nds32_elf_after_open (void)
/* For now, make sure all object files are of the same architecture.
We may try to merge object files with different architecture together. */
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
if (arch_ver == (unsigned int)-1 && E_N1_ARCH != (elf_elfheader (abfd)->e_flags & EF_NDS_ARCH))
arch_ver = elf_elfheader (abfd)->e_flags & EF_NDS_ARCH ;
@@ -125,7 +125,7 @@ nds32_elf_after_open (void)
}
/* Append .ex9.itable section in the last input object file. */
- if (!link_info.relocatable && abfd->link_next == NULL)
+ if (!link_info.relocatable && abfd->link.next == NULL)
{
asection *itable;
struct bfd_link_hash_entry *h;
@@ -165,7 +165,7 @@ nds32_elf_after_open (void)
if (elf_hash_table (&link_info)->dynamic_sections_created
|| link_info.shared || link_info.pie)
{
- for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next)
+ for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
{
if (!(elf_elfheader (abfd)->e_flags & E_NDS32_HAS_PIC))
{
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index 3a37508..0466eb3 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -1433,7 +1433,7 @@ gld_${EMULATION_NAME}_after_open (void)
printf ("-%s\n", sym->root.string);
bfd_hash_traverse (&link_info.hash->table, pr_sym, NULL);
- for (a = link_info.input_bfds; a; a = a->link_next)
+ for (a = link_info.input_bfds; a; a = a->link.next)
printf ("*%s\n",a->filename);
}
#endif
@@ -1444,7 +1444,7 @@ gld_${EMULATION_NAME}_after_open (void)
/* Find a COFF input. */
for (abfd = link_info.input_bfds;
- abfd != (bfd *) NULL; abfd = abfd->link_next)
+ abfd != (bfd *) NULL; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_coff_flavour)
break;
diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em
index 1f78655..6e3ecd8 100644
--- a/ld/emultempl/pep.em
+++ b/ld/emultempl/pep.em
@@ -1391,7 +1391,7 @@ gld_${EMULATION_NAME}_after_open (void)
printf ("-%s\n", sym->root.string);
bfd_hash_traverse (&link_info.hash->table, pr_sym, NULL);
- for (a = link_info.input_bfds; a; a = a->link_next)
+ for (a = link_info.input_bfds; a; a = a->link.next)
printf ("*%s\n",a->filename);
}
#endif
@@ -1402,7 +1402,7 @@ gld_${EMULATION_NAME}_after_open (void)
/* Find a COFF input. */
for (abfd = link_info.input_bfds;
- abfd != (bfd *) NULL; abfd = abfd->link_next)
+ abfd != (bfd *) NULL; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_coff_flavour)
break;