From 73d074b4e2c7e9a3954d0b08f048ebccd6c3e671 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Thu, 15 Nov 2001 01:34:12 +0000 Subject: 2001-11-11 Daniel Jacobowitz * bfd-in.h (bfd_elf32_discard_info): Add prototype. (bfd_elf64_discard_info): Likewise. * bfd-in2.h: Regenerate. * elf-bfd.h (struct elf_reloc_cookie): New. (struct elf_backend_data): Add elf_backend_discard_info, elf_backend_ignore_discarded_relocs, and elf_backend_write_section. (_bfd_elf32_reloc_symbol_deleted_p): Add prototype. (_bfd_elf64_reloc_symbol_deleted_p): Likewise. * elf32-mips.c (_bfd_elf32_mips_discard_info): New. (_bfd_elf32_mips_ignore_discarded_relocs): New. (_bfd_elf32_mips_write_section): New. (elf_backend_discard_info): Define. (elf_backend_ignore_discarded_relocs): Define. (elf_backend_write_section): Define. * elfcode.h (elf_bfd_discard_info): Define. (elf_reloc_symbol_deleted_p): Define. * elflink.h (elf_link_input_bfd): Check elf_section_ignore_discarded_relocs. Call bed->elf_backend_write_section if available. (elf_reloc_symbol_deleted_p): New. (elf_bfd_discard_info): New. (elf_section_ignore_discarded_relocs): New. * elfxx-target.h (elf_backend_discard_info): Define. (elf_backend_ignore_discarded_relocs): Define. (elf_backend_write_section): Define. (elfNN_bed): Add elf_backend_discard_info, elf_backend_ignore_discarded_relocs, and elf_backend_write_section. * libbfd-in.h (_bfd_discard_section_stabs): Add prototype. * libbfd.h: Regenerate. * stabs.c (_bfd_discard_section_stabs): New. 2001-11-11 Daniel Jacobowitz * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New. (struct ld_emulation_xfer_struct): Use it. --- bfd/libbfd-in.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'bfd/libbfd-in.h') diff --git a/bfd/libbfd-in.h b/bfd/libbfd-in.h index 23b7ad9..c739b4e 100644 --- a/bfd/libbfd-in.h +++ b/bfd/libbfd-in.h @@ -446,6 +446,11 @@ extern bfd_reloc_status_type _bfd_relocate_contents extern boolean _bfd_link_section_stabs PARAMS ((bfd *, PTR *, asection *, asection *, PTR *)); +/* Eliminate stabs for discarded functions and symbols. */ +extern boolean _bfd_discard_section_stabs + PARAMS ((bfd *, asection *, PTR, + boolean (*) (bfd_vma, PTR), PTR)); + /* Write out the .stab section when linking stabs in sections. */ extern boolean _bfd_write_section_stabs -- cgit v1.1