* elf.c (_bfd_elf_rela_local_sym): New.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index e189fe5947e9041bf95040fcd561c589b34c3ac4..0b3cd6299d3ccbb31169db6ecb390080c3c9b310 100644 (file)
@@ -1,3 +1,292 @@
+2001-11-23  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf.c (_bfd_elf_rela_local_sym): New.
+       * elflink.h (elf_link_input_bfd): Don't consider empty
+       merged sections as removed in relocation tests.
+       * elf-bfd.h (_bfd_elf_rela_local_sym): Add prototype.
+       * elf32-i386.c (elf_i386_relocate_section): Handle relocs
+       against STT_SECTION symbol of SHF_MERGE section.
+       * elf32-arm.h (elf32_arm_relocate_section): Likewise.
+       * elf32-avr.c (elf32_avr_relocate_section): Call
+       _bfd_elf_rela_local_sym.
+       * elf32-cris.c (cris_elf_relocate_section): Likewise.
+       * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
+       * elf32-fr30.c (fr30_final_link_relocate): Likewise.
+       * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
+       * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
+       * elf32-i370.c (i370_elf_relocate_section): Likewise.
+       * elf32-i860.c (elf32_i860_relocate_section): Likewise.
+       * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
+       * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
+       * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
+       * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
+       * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+       * elf32-s390.c (elf_s390_relocate_section): Likewise.
+       * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
+       * elf32-v850.c (v850_elf_relocate_section): Likewise.
+       * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
+       * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
+       * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
+       * elf64-s390.c (elf_s390_relocate_section): Likewise.
+       * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
+       * elf-hppa.h (elf_hppa_relocate_section): Likewise.
+       * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
+       * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
+       * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
+       * elf32-sh.c (sh_elf_relocate_section): Likewise for
+       !partial_inplace relocs. Handle relocs against STT_SECTION
+       symbol of SHF_MERGE for partial_inplace relocs.
+
+2001-11-21  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * po/Make-in (distclean): Move SRC-POTFILES.in and
+       BLD-POTFILES.in to maintainer-clean target.
+
+2001-11-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * elfxx-ia64.c (elfNN_ia64_relocate_section): Test r_symndx rather
+       than sym_sec->output_section to detect relocs against discarded
+       sections.
+
+2001-11-19  H.J. Lu  <hjl@gnu.org>
+
+       * elflink.h (elf_link_input_bfd): Assert r_symndx != 0 when
+       discarding relocations.
+
+2001-11-19  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * section.c (bfd_is_const_section): New macro.  Return true if the
+       given seciton is one of the special, constant, sections.
+       * bfd-in2.h: Regenerate.        
+       * coffgen.c (coff_count_linenumbers): Use bfd_is_const_section.
+       (coff_write_native_symbol): Use bfd_is_const_section.
+
+2001-11-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-hppa.c (clobber_millicode_symbols): Dec dynstr refcount.
+
+       * elf32-hppa.c (elf32_hppa_size_stubs): Don't consider undefined
+       millicode syms as candidates for import stubs.
+
+       * elf32-hppa.c (PLABEL_PLT_ENTRY_SIZE): Delete.
+       (allocate_PIC_calls): Rename to allocate_plt_static.
+       (allocate_dynrelocs): Move most of code handling .plt entries to..
+       (allocate_plt_static): ..here.  Don't drop plabel entries.
+
+2001-11-19  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * mmo.c: Adjust documentation tags to use texinfo 4 features.
+
+2001-11-16  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * section.c (bfd_is_const_section): New macro.  Return true if the
+       section pointer refers to one of the special, constant sections.
+       * bfd-in2.h: Regenerate.
+
+       * coffgen.c (coff_count_linenumbers): Only update the line number
+       count in non-special sections.
+       (coff_write_native_symbol): Only update the line number file
+       position in non-special sections.
+
+2001-11-15  Daniel Jacobowitz  <drow@mvista.com>
+
+       * elflink.h (elf_reloc_symbol_deleted_p): Catch all relocs against
+       local syms from discarded sections.  Update comment.
+
+2001-11-15  Alan Modra  <amodra@bigpond.net.au>
+
+       * po/SRC-POTFILES.in: Regenerate.
+
+       * elflink.h (elf_link_input_bfd): Complain about all relocs
+       against local syms from discarded sections.  K&R fixes.
+       (elf_reloc_symbol_deleted_p): Don't try to swap in external syms.
+       K&R fixes.
+
+2001-11-15  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elf64-sparc.c (sparc64_elf_relocate_section): Disregard
+       overflows in the .stab section.
+
+2001-11-14  Daniel Jacobowitz  <drow@mvista.com>
+
+       * 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-14  Martin Schwidefsky  <schwidefsky@de.ibm.com>
+
+       * elf32-s390.c (elf_s390_relocate_section): Use the "unresolved_reloc"
+       scheme to get rid of an ugly complicated test. 
+       * elf64-s390.c (elf_s390_relocate_section): Likewise.
+
+2001-11-14  Andreas Jaeger  <aj@suse.de>
+
+       * cpu-i386.c (bfd_x86_64_arch_intel_syntax,bfd_x86_64_arch): Use
+       x86-64 for display.
+
+2001-11-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * dwarf2.c (struct line_head) [total_length]: Change type to
+       bfd_vma.
+       (struct dwarf2_debug): Add dwarf_str_buffer and dwarf_str_size.
+       (struct comp_unit): Add stash and offset_size.
+       (read_8_bytes): Return bfd_vma.
+       (read_indirect_string): New.
+       (read_attribute): Handle DW_FORM_strp.
+       (decode_line_info): Support 64-bit DWARF format.
+       (_bfd_dwarf2_find_nearest_line): Likewise.
+       (parse_comp_unit): Set offset_size and stash.
+
+2001-11-13  Keith Walker <keith.walker@arm.com>
+
+       * dwarf2.c (read_attribute_value): New function to handle
+       DW_FORM_indirect.
+       (read_attribute): Use it.
+
+2001-11-13  Geoffrey Keating  <geoffk@redhat.com>
+
+       * dwarf2.c (decode_line_info): Properly deal with unknown standard
+       opcodes.
+
+2001-11-13  John Marshall  <jmarshall@acm.org>
+           Alan Modra  <amodra@bigpond.net.au>
+
+       * section.c (bfd_make_section_anyway): Don't increment section_id
+       and the BFD's section_count if adding the section failed.
+       * vms.c (vms_new_section_hook): Adjust for bfd_make_section_anyway
+       change.
+
+2001-11-12  Orjan Friberg  <orjanf@axis.com>
+
+       * elf32-cris.c (cris_elf_grok_prstatus): Adjust values to match new
+       core dump format.
+
+2001-11-11  H.J. Lu <hjl@gnu.org>
+
+       * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Call
+       _bfd_elf_strtab_size instead of _bfd_stringtab_size.
+
+       * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Change
+       dynstr type to `struct elf_strtab_hash *'.
+
+2001-11-11  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * elf-strtab.c (_bfd_elf_strtab_finalize): Make first variable i
+       size_t.  Rename second i to j.
+
+Sat Nov 10 08:56:02 2001  Jeffrey A Law  (law@cygnus.com)
+
+       * binary.c: Include safe-ctype.h after bfd.h and sysdep.h.
+
+2001-11-10  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-arm.h (elf32_arm_final_link_relocate): Don't copy STN_UNDEF
+       relocs into shared libs.
+       * elf32-cris.c (cris_elf_relocate_section): Likewise.
+       * elf32-i370.c (i370_elf_relocate_section): Likewise.
+       * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
+       * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
+       * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+       * elf32-sh.c (sh_elf_relocate_section): Likewise.
+       * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
+       * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
+       * elf64-s390.c (elf_s390_relocate_section): Likewise.
+       * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
+       * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
+
+       * elf.c (bfd_section_from_r_symndx): New function.
+       * elf-bfd.h (LOCAL_SYM_CACHE_SIZE): Define.
+       (struct sym_sec_cache): New.
+       (bfd_section_from_r_symndx): Declare.
+       (struct bfd_elf_section_data): Change local_dynrel type to PTR.
+       * elflink.h (elf_link_input_bfd): Don't test for removed linkonce
+       relocs when relocatable.  Don't zero entire reloc, just zero the
+       addend and sym.
+       * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add sym_sec.
+       (elf32_hppa_link_hash_table_create): Init it.
+       (elf32_hppa_check_relocs): Track dynamic relocs needed for local
+       syms on a per-section basis as we do for globals.
+       (elf32_hppa_gc_sweep_hook): Update for local_dynrel change.
+       (allocate_dynrelocs): Warning fix.
+       (elf32_hppa_size_dynamic_sections): Don't allocate relocs when
+       section has been discarded.
+       (elf32_hppa_relocate_section): Don't copy STN_UNDEF relocs
+       into shared libs.
+       * elf32-i386.c (struct elf_i386_link_hash_table): Add sym_sec.
+       (elf_i386_link_hash_table_create): Init it.
+       (elf_i386_check_relocs): Track dynamic relocs needed for local
+       syms on a per-section basis as we do for globals.
+       (elf_i386_gc_sweep_hook): Update for local_dynrel change.
+       Remove dead code.
+       (allocate_dynrelocs): Warning fix.
+       (elf_i386_size_dynamic_sections): Don't allocate relocs when
+       section has been discarded.
+       (elf_i386_relocate_section): Don't copy STN_UNDEF relocs
+       into shared libs.
+       * elf32-s390.c (struct elf_s390_link_hash_table): Add sym_sec.
+       (elf_s390_link_hash_table_create): Init it.
+       (elf_s390_check_relocs): Track dynamic relocs needed for local
+       syms on a per-section basis as we do for globals.
+       (elf_s390_gc_sweep_hook): Update for local_dynrel change.
+       Remove dead code.
+       (allocate_dynrelocs): Warning fix.
+       (elf_s390_size_dynamic_sections): Don't allocate relocs when
+       section has been discarded.
+       (elf_s390_relocate_section): Don't copy STN_UNDEF relocs
+       into shared libs.
+       * elf64-ppc.c (struct ppc_link_hash_table): Add sym_sec.
+       (ppc64_link_hash_table_create): Init it.
+       (ppc64_elf_check_relocs): Track dynamic relocs needed for local
+       syms on a per-section basis as we do for globals.
+       (ppc64_elf_gc_sweep_hook): Update for local_dynrel change.
+       (allocate_dynrelocs): Call the correct record_dynamic_dymbol
+       function.  Warning fix.
+       (ppc64_elf_size_dynamic_sections): Don't allocate relocs when
+       section has been discarded.
+       (ppc64_elf_relocate_section): Don't copy STN_UNDEF relocs
+       into shared libs.
+       * elf64-s390.c (struct elf_s390_link_hash_table): Add sym_sec.
+       (elf_s390_link_hash_table_create): Init it.
+       (elf_s390_check_relocs): Track dynamic relocs needed for local
+       syms on a per-section basis as we do for globals.
+       (elf_s390_gc_sweep_hook): Update for local_dynrel change.
+       Remove dead code.
+       (allocate_dynrelocs): Warning fix.
+       (elf_s390_size_dynamic_sections): Don't allocate relocs when
+       section has been discarded.
+       (elf_s390_relocate_section): Don't copy STN_UNDEF relocs
+       into shared libs.
+
 2001-11-08  Martin Schwidefsky  <schwidefsky@de.ibm.com>
 
        * elf32-s390: Major rework that introduces all recent changes to
        (elf_s390_copy_indirect_symbol): New function.
        (elf_s390_create_dynamic_sections): New function.
        (readonly_dynrelocs): New function.
-       * elf64-s390x: Likewise.
+       * elf64-s390.c: Likewise.
 
 2001-11-07  Jakub Jelinek  <jakub@redhat.com>
 
This page took 0.026718 seconds and 4 git commands to generate.