* elf.c (bfd_elf_local_sym_name): Avoid crashes with invalid
[binutils-gdb.git] / bfd / ChangeLog
index ed41ba20194e2097c6019e34a06515c89c2006d9..415356ddf5f3aa4da090f72d7ed343408e5c6dce 100644 (file)
@@ -1,3 +1,203 @@
+2004-12-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf.c (bfd_elf_local_sym_name): Avoid crashes with invalid
+       st_shndx on STT_SECTION sections.
+
+2004-12-09  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * elfcode.h (elf_slurp_reloc_table_from_section): Don't canonicalize
+       ELF section symbols.
+
+2004-12-09  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation): For R_MIPS_JALR,
+       return a real value, unless it is a PLT symbol.
+       (mips_elf_perform_relocation): On the RM9000, turn a jal into a
+       bal if possible.
+
+       * elfn32-mips.c (elf_mips_howto_table_rela): Change dst_mask of
+       R_MIPS_JALR entry to 0.
+
+       * archures.c: Define bfd_mach_mips9000.
+       * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_9000.
+       (mips_set_isa_flags): Handle bfd_mach_mips9000.
+       * cpu-mips.c (I_mips9000): Define.
+       (arch_info_struct): Add case for bfd_mach_mips9000.
+       * aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mips9000.
+       * bfd-in2.h: Regenerate.
+
+2004-12-08  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation): Test for R_MIPS_26
+       overflow.
+
+2004-12-07  Ben Elliston  <bje@gnu.org>
+
+       * netbsd-core.c (netbsd_core_file_p): Make `i' unsigned.
+
+2004-12-06  Daniel Jacobowitz  <dan@debian.org>
+
+       Suggested by Fergal Daly <fergal@esatclear.ie>:
+       * simple.c (simple_dummy_multiple_definition): New function.
+       (bfd_simple_get_relocated_section_contents): Use it.
+
+2004-12-03  Jan Beulich  <jbeulich@novell.com>
+
+       * elf.c (elf_find_function): Don't use the last file symbol ever,
+       seen, but the last one seen prior to the symbol being reported.
+       Don't report a filename at all for global symbols when that might
+       be ambiguous/wrong.
+
+2004-12-01  Paul Brook  <paul@codesourcery.com>
+
+       * elf32-arm.c (elf32_arm_copy_private_bfd_data): Set EI_OSABI.
+       (elf32_arm_post_process_headers): Set EI_OSABI depending on ABI
+       version.
+
+2004-12-01  Paul Brook  <paul@codesourcery.com>
+
+       * elflink.c (elf_link_add_object_symbols): Make symbols from discarded
+       sections undefined.
+
+2004-11-30  Paul Brook  <paul@codesourcery.com>
+
+       * elf32-arm.c (struct elf32_arm_link_hash_table): Remove
+       no_pipeline_knowledge
+       (elf32_arm_link_hash_table_create): Ditto.
+       (bfd_elf32_arm_process_before_allocation): Ditto.
+       (elf32_arm_final_link_relocate): Ditto.  Remove oabi relocation
+       handling.
+       * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
+       prototype.
+       * bfd-in2.h: Regenerate.
+
+2004-11-30  Randolph Chung  <tausq@debian.org>
+
+       * elf32-hppa.c (elf32_hppa_grok_prstatus): New function.
+       (elf32_hppa_grok_psinfo): New function.
+       (elf_backend_grok_prstatus): Define.
+       (elf_backend_grok_psinfo): Define.
+
+2004-11-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR 574:
+       * elfcode.h (elf_slurp_symbol_table): Handle STT_TLS.
+
+2004-11-24  Paul Brook  <paul@codesourcery.com>
+
+       * elf.c (assign_section_numbers): Number SHT_GROUP sections first.
+
+2004-11-24  Paul Brook  <paul@codesourcery.com>
+
+       * elf32-arm.c (elf32_arm_swap_symbol_in): New function.
+       (elf32_arm_swap_symbol_out): New function.
+       (elf32_arm_size_info): Add.
+       (elf_backend_size_info): Define.
+
+2004-11-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * hpux-core.c (hpux_core_core_file_p): Use offsetof macro in calls to
+       make_bfd_asection.
+
+2004-11-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-arm.c (elf32_arm_finish_dynamic_sections): Warning fix.
+       * elf32-iq2000.c (iq2000_reloc_type_lookup): C90 function decl.
+       * nlmcode.h (nlm_write_object_contents): Warning fix.
+
+2004-11-18  Bob Wilson  <bob.wilson@acm.org>
+
+       * elf32-xtensa.c (ebb_propose_action): Fix argument order.
+
+2004-11-17  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * elf32-arm.c (PLT_THUMB_STUB_SIZE): Define.
+       (elf32_arm_plt_thumb_stub): New.
+       (struct elf32_arm_link_hash_entry): Add plt_thumb_refcount
+       and plt_got_offset.
+       (elf32_arm_link_hash_traverse): Fix typo.
+       (elf32_arm_link_hash_table): Add obfd.
+       (elf32_arm_link_hash_newfunc): Initialize new fields.
+       (elf32_arm_copy_indirect_symbol): Copy plt_thumb_refcount.
+       (elf32_arm_link_hash_table_create): Initialize obfd.
+       (record_arm_to_thumb_glue): Mark the glue as a local ARM function.
+       (record_thumb_to_arm_glue): Mark the glue as a local Thumb function.
+       (bfd_elf32_arm_get_bfd_for_interworking): Verify that the
+       interworking BFD is not dynamic.
+       (bfd_elf32_arm_process_before_allocation): Handle R_ARM_PLT32.  Do
+       not emit glue for PLT references.
+       (elf32_arm_final_link_relocate): Handle Thumb functions.  Do not
+       emit glue for PLT references.  Support the Thumb PLT prefix.
+       (elf32_arm_gc_sweep_hook): Handle R_ARM_THM_PC22 and
+       plt_thumb_refcount.
+       (elf32_arm_check_relocs): Likewise.
+       (elf32_arm_adjust_dynamic_symbol): Handle Thumb functions and
+       plt_thumb_refcount.
+       (allocate_dynrelocs): Handle Thumb PLT references.
+       (elf32_arm_finish_dynamic_symbol): Likewise.
+       (elf32_arm_symbol_processing): New function.
+       (elf_backend_symbol_processing): Define.
+
+2004-11-16  Richard Sandiford  <rsandifo@redhat.com>
+
+       * elf-bfd.h (eh_cie_fde): Add new fields: add_augmentation_size and
+       add_fde_encoding.  Remove need_relative.
+       * elf-eh-frame.c (extra_augmentation_string_bytes)
+       (extra_augmentation_data_bytes, size_of_output_cie_fde): New functions.
+       (_bfd_elf_discard_section_eh_frame): Consider changing the FDE encoding
+       in cases where the CIE has no existing 'R' augmentation.  Use
+       size_of_output_cie_fde when assigning offsets.  Use the final offset
+       as the new section size.
+       (_bfd_elf_eh_frame_section_offset): Remove need_relative handling.
+       Account for any extra augmentation bytes in the returned offset.
+       (_bfd_elf_write_section_eh_frame): Rework so that the entries are
+       moved before being modified.  Pad growing entries with DW_CFA_nops.
+       Add 'z' and 'R' augmentations as directed by add_augmentation_size
+       and add_fde_encoding.
+
+2004-11-15  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-arm.c (elf32_arm_relocate_section): Use
+       arm_real_reloc_type.
+
+2004-11-16  Richard Sandiford  <rsandifo@redhat.com>
+
+       * elfxx-mips.c (mips_elf_create_dynamic_relocation): Return early
+       for discard relocations; don't add an R_MIPS_NONE to the main body
+       of .rel.dyn.
+
+2004-11-04  Paul Brook  <paul@codesourcery.com>
+
+       * elf-bfd.h (_bfd_elf_slurp_version_tables): Update prototype.
+       * elf.c (_bfd_elf_print_private_bfd_data): Pass extra argument.
+       (_bfd_elf_slurp_version_tables): Add extra argument.  Create extra
+       default version definition for unversioned symbols.
+       * elfcode.h (elf_slurp_symbol_table): Pass extra argument.
+       * elflink.c (elf_link_add_object_symbols): Pass extra argument to
+       _bfd_elf_slurp_version_tables.  Set default version for unversioned
+       imported symbols.
+
+2004-11-15  Paul Brook  <paul@codesourcery.com>
+
+       * elflink.c (elf_link_add_object_symbols): Don't assume version
+       indices are consecutive.
+
+2004-11-14  Richard Sandiford  <rsandifo@redhat.com>
+
+       * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Deal with
+       composite relocations against the personality data.
+
+2004-11-13  Paul Brook  <paul@codesourcery.com>
+
+       * bfd/elf32-arm.c (elf32_arm_final_link_relocate): Resolve
+       R_ARM_PREL31 relocations to PLT entries.
+       (elf32_arm_relocate_section, elf32_arm_gc_sweep_hook): Ditto.
+       (elf32_arm_check_relocs): Ditto.
+
+2004-11-12  Bob Wilson  <bob.wilson@acm.org>
+
+       * xtensa-isa.c (xtensa_interface_class_id): New.
+
 2004-11-11  Bob Wilson  <bob.wilson@acm.org>
 
        * elf32-xtensa.c (property_table_compare): Remove assertion about