diff options
author | Alan Modra <amodra@gmail.com> | 2005-05-04 11:00:28 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2005-05-04 11:00:28 +0000 |
commit | 8423293d34986cfa218f79b2b2f1ff9bf77d468f (patch) | |
tree | 330cd698b1cb69439de3e3dc7add1d1af4812772 /bfd/linker.c | |
parent | 53e09e0aaf3d13e4b893744e2fe79edde7edfd20 (diff) | |
download | gdb-8423293d34986cfa218f79b2b2f1ff9bf77d468f.zip gdb-8423293d34986cfa218f79b2b2f1ff9bf77d468f.tar.gz gdb-8423293d34986cfa218f79b2b2f1ff9bf77d468f.tar.bz2 |
bfd/
* section.c (struct bfd_section): Replace link_order_head and
link_order_tail with map_head and map_tail union.
(STD_SECTION): Update.
(_bfd_strip_section_from_output): Delete.
* aoutx.h: Update throughout for above changes.
* coff-ppc.c: Likewise.
* cofflink.c: Likewise.
* ecoff.c: Likewise.
* elf-eh-frame.c: Likewise.
* elf-m10300.c: Likewise.
* elf.c: Likewise.
* elf32-arm.c: Likewise.
* elf32-cris.c: Likewise.
* elf32-hppa.c: Likewise.
* elf32-i386.c: Likewise.
* elf32-m32r.c: Likewise.
* elf32-m68hc1x.c: Likewise.
* elf32-m68k.c: Likewise.
* elf32-ppc.c: Likewise.
* elf32-s390.c: Likewise.
* elf32-sh.c: Likewise.
* elf32-vax.c: Likewise.
* elf32-xtensa.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-hppa.c: Likewise.
* elf64-ppc.c: Likewise.
* elf64-s390.c: Likewise.
* elf64-sh64.c: Likewise.
* elf64-x86-64.c: Likewise.
* elflink.c: Likewise.
* elfxx-ia64.c: Likewise.
* elfxx-mips.c: Likewise.
* elfxx-sparc.c: Likewise.
* linker.c: Likewise.
* merge.c: Likewise.
* pdp11.c: Likewise.
* xcofflink.c: Likewise.
* elflink.c (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Split
out from bfd_elf_size_dynamic_sections.
* bfd-in.h (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Declare.
* bfd-in2.h: Regenerate.
ld/
* ldemul.c: Include bfdlink.h.
(ldemul_before_allocation): Assume before_allocation is non-zero.
(before_allocation_default): Call strip_excluded_output_sections.
* ldlang.c (stripped_excluded_sections): New variable.
(lang_add_section): Build input section list for each output
section, attached via map_head and map_tail pointers.
(strip_excluded_output_sections): Make global. Traverse the
input section lists to find which output sections can go. Clear
link_order pointers and set stripped_excluded_sections.
(lang_process): Call strip_excluded_output_sections.
* ldlang.h (strip_excluded_output_sections): Declare.
* ldwrite.c: Update throuhout for link_order_head -> map_head change.
* emultempl/aix.em (before_allocation): Call
strip_excluded_output_sections.
* emultempl/armcoff.em (before_allocation): Likewise.
* emultempl/beos.em (before_allocation): Likewise.
* emultempl/linux.em (before_allocation): Likewise.
* emultempl/pe.em (before_allocation): Likewise.
* emultempl/sunos.em (before_allocation): Likewise.
* emultempl/elf32.em (before_allocation): Likewise. Call
bfd_elf_size_dynsym_hash_dynstr too.
* emultempl/lnk960.em (lnk960_before_allocation): Delete.
(ld_lnk960): Use before_allocation_default.
Diffstat (limited to 'bfd/linker.c')
-rw-r--r-- | bfd/linker.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/bfd/linker.c b/bfd/linker.c index 0505869..8500f4f 100644 --- a/bfd/linker.c +++ b/bfd/linker.c @@ -309,7 +309,7 @@ SUBSUBSECTION of the <<bfd>> structure. Each section in the output file will have a list of - <<link_order>> structures attached to the <<link_order_head>> + <<link_order>> structures attached to the <<map_head.link_order>> field (the <<link_order>> structure is defined in <<bfdlink.h>>). These structures describe how to create the contents of the output section in terms of the contents of @@ -2009,7 +2009,7 @@ _bfd_generic_final_link (bfd *abfd, struct bfd_link_info *info) /* Mark all sections which will be included in the output file. */ for (o = abfd->sections; o != NULL; o = o->next) - for (p = o->link_order_head; p != NULL; p = p->next) + for (p = o->map_head.link_order; p != NULL; p = p->next) if (p->type == bfd_indirect_link_order) p->u.indirect.section->linker_mark = TRUE; @@ -2038,7 +2038,7 @@ _bfd_generic_final_link (bfd *abfd, struct bfd_link_info *info) for (o = abfd->sections; o != NULL; o = o->next) { o->reloc_count = 0; - for (p = o->link_order_head; p != NULL; p = p->next) + for (p = o->map_head.link_order; p != NULL; p = p->next) { if (p->type == bfd_section_reloc_link_order || p->type == bfd_symbol_reloc_link_order) @@ -2094,7 +2094,7 @@ _bfd_generic_final_link (bfd *abfd, struct bfd_link_info *info) /* Handle all the link order information for the sections. */ for (o = abfd->sections; o != NULL; o = o->next) { - for (p = o->link_order_head; p != NULL; p = p->next) + for (p = o->map_head.link_order; p != NULL; p = p->next) { switch (p->type) { @@ -2614,11 +2614,11 @@ bfd_new_link_order (bfd *abfd, asection *section) new->type = bfd_undefined_link_order; - if (section->link_order_tail != NULL) - section->link_order_tail->next = new; + if (section->map_tail.link_order != NULL) + section->map_tail.link_order->next = new; else - section->link_order_head = new; - section->link_order_tail = new; + section->map_head.link_order = new; + section->map_tail.link_order = new; return new; } |