diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-06-13 18:35:29 +0000 |
---|---|---|
committer | Mark Mitchell <mark@codesourcery.com> | 1999-06-13 18:35:29 +0000 |
commit | cc961bd38f7bf8b2b879945655b4ed051f79de5f (patch) | |
tree | 0e1e0fddf78de9c1b4571ce99b9a177ccba29c69 /bfd | |
parent | b58b72f6c3787eb4f4630657a33c30341fd0b01f (diff) | |
download | gdb-cc961bd38f7bf8b2b879945655b4ed051f79de5f.tar.gz |
* elflink.h (elf_link_remove_section_and_adjust_dynindices):
Remove abfd parameter. Use _bfd_strip_section_from_output.
(bfd_elf_size_dynamic_sections): Adjust callers accordingly.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 4 | ||||
-rw-r--r-- | bfd/elflink.h | 24 |
2 files changed, 10 insertions, 18 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e75acf0cb73..107a08c8e7e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,9 @@ 1999-06-13 Mark Mitchell <mark@codesourcery.com> + * elflink.h (elf_link_remove_section_and_adjust_dynindices): + Remove abfd parameter. Use _bfd_strip_section_from_output. + (bfd_elf_size_dynamic_sections): Adjust callers accordingly. + * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function. * elflink.c (_bfd_elf_link_adjust_dynindx): Define it. * elflink.h (elf_link_remove_section_and_adjust_dynindices): New diff --git a/bfd/elflink.h b/bfd/elflink.h index 88fd05c200f..369a0a22431 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -55,7 +55,7 @@ static boolean elf_collect_hash_codes static boolean elf_link_read_relocs_from_section PARAMS ((bfd *, Elf_Internal_Shdr *, PTR, Elf_Internal_Rela *)); static void elf_link_remove_section_and_adjust_dynindices - PARAMS ((bfd *, struct bfd_link_info *, asection *)); + PARAMS ((struct bfd_link_info *, asection *)); /* Given an ELF BFD, add symbols to the global hash table as appropriate. */ @@ -2408,20 +2408,14 @@ compute_bucket_count (info) subsequent entries. */ static void -elf_link_remove_section_and_adjust_dynindices (abfd, info, section) - bfd *abfd; +elf_link_remove_section_and_adjust_dynindices (info, section) struct bfd_link_info *info; asection *section; { asection **spp; /* Remove the section from the output list. */ - for (spp = &abfd->sections; - *spp != section->output_section; - spp = &(*spp)->next) - ; - *spp = section->output_section->next; - --abfd->section_count; + _bfd_strip_section_from_output (section); if (elf_section_data (section->output_section)->dynindx) { @@ -2648,9 +2642,7 @@ NAME(bfd_elf,size_dynamic_sections) (output_bfd, soname, rpath, verdefs = asvinfo.verdefs; if (verdefs == NULL) - elf_link_remove_section_and_adjust_dynindices (output_bfd, - info, - s); + elf_link_remove_section_and_adjust_dynindices (info, s); else { unsigned int cdefs; @@ -2843,9 +2835,7 @@ NAME(bfd_elf,size_dynamic_sections) (output_bfd, soname, rpath, (PTR) &sinfo); if (elf_tdata (output_bfd)->verref == NULL) - elf_link_remove_section_and_adjust_dynindices (output_bfd, - info, - s); + elf_link_remove_section_and_adjust_dynindices (info, s); else { Elf_Internal_Verneed *t; @@ -2945,9 +2935,7 @@ NAME(bfd_elf,size_dynamic_sections) (output_bfd, soname, rpath, if (dynsymcount == 0 || (verdefs == NULL && elf_tdata (output_bfd)->verref == NULL)) { - elf_link_remove_section_and_adjust_dynindices (output_bfd, - info, - s); + elf_link_remove_section_and_adjust_dynindices (info, s); /* The DYNSYMCOUNT might have changed if we were going to output a dynamic symbol table entry for S. */ dynsymcount = elf_hash_table (info)->dynsymcount; |