Peter Targett's backwards compatibility and other arc fixes.
[binutils-gdb.git] / bfd / ChangeLog
index 17ec1b673836f15420911ba2f58c791e03bc6136..66d8fb7099a2ed048d56791e092bab1862b26452 100644 (file)
@@ -1,3 +1,200 @@
+2001-05-12  Peter Targett  <peter.targett@arccores.com>
+
+       * cpu-arc.c (arch_info_struct): Add entry 'base' representing old
+       name for 'arc5' core versions.
+       (bfd_arc_arch): Make bfd_mach_arc_6 default.
+
+       * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default
+       architecture.
+       (arc_elf_final_write_processing): Make bfd_mach_arc_6 default.
+
+2001-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
+       sections as well.
+       (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
+       to .gnu.linkonce.t.FOO text section.
+
+2001-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix
+       fields, change sec into secinfo.
+       (struct sec_merge_info): Add chain, remove last fields.
+       (struct sec_merge_sec_info): Add next, sec, psecinfo fields.
+       (sec_merge_hash_lookup): If lookup could not use a string only
+       because it has bad alignment, mark the old string for deletion.
+       (sec_merge_add): Add secinfo argument. Don't compute entry's
+       position, instead record the section.
+       (sec_merge_emit): Update for the sec into secinfo change in
+       struct sec_merge_hash_entry.
+       (_bfd_merge_section): Only record the section for merging, defer
+       putting strings into the hash table.
+       (cmplengthentry, last4_eq, last_eq, record_section, merge_strings,
+       _bfd_merge_sections): New functions.
+       (_bfd_merged_section_offset): Update for the sec_merge_hash_entry
+       changes.
+       * libbfd-in.h (_bfd_merge_sections): Add prototype.
+       (_bfd_nolink_bfd_merge_sections): Define.
+       * libbfd.h: Likewise.
+       (bfd_generic_merge_sections): Add prototype.
+       * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections.
+       (struct bfd_target): Likewise.
+       * bfd.c (bfd_merge_sections): Define.
+       * bfd-in2.h: Rebuilt.
+       * elf.c (_bfd_elf_merge_sections): New function.
+       * elf-bfd.h (_bfd_elf_merge_sections): Add prototype.
+       * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define.
+       * reloc.c (bfd_generic_merge_sections): New function.
+       * vms.c (vms_bfd_merge_sections): New function.
+       * aout-adobe.c (aout_32_bfd_merge_sections): Define.
+       * aout-target.h (MY_bfd_merge_sections): Define.
+       * aout-tic30.c (MY_bfd_merge_sections): Define.
+       * binary.c (binary_bfd_merge_sections): Define.
+       * bout.c (b_out_bfd_merge_sections): Define.
+       * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define.
+       * coffcode.c (coff_bfd_merge_sections): Define.
+       * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define.
+       * i386msdos.c (msdos_bfd_merge_sections): Define.
+       * i386os9k.c (os9k_bfd_merge_sections): Define.
+       * ieee.c (ieee_bfd_merge_sections): Define.
+       * ihex.c (ihex_bfd_merge_sections): Define.
+       * nlm-target.h (nlm_bfd_merge_sections): Define.
+       * oasys.c (oasys_bfd_merge_sections): Define.
+       * ppcboot.c (ppcboot_bfd_merge_sections): Define.
+       * som.c (som_bfd_merge_sections): Define.
+       * srec.c (srec_bfd_merge_sections): Define.
+       * tekhex.c (tekhex_bfd_merge_sections): Define.
+       * versados.c (versados_bfd_merge_sections): Define.
+       * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define.
+
+2001-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr'
+       to be unsigned long, in order to match its use.
+
+2001-05-10  H.J. Lu  <hjl@gnu.org>
+
+       * linker.c (_bfd_generic_link_add_one_symbol): Check loop on
+       indirect symbols.
+
+2001-05-09  H.J. Lu  <hjl@gnu.org>
+
+       * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate
+       versymhdr->sh_size bytes for extversym instead of hdr->sh_size.
+       Remove the unused veriable `dynver'.
+
+2001-05-08  Ian Lance Taylor  <ian@zembu.com>
+
+       * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is
+       NULL or is not COFF.
+       (coff_i386_rtype_to_howto): Don't dump core if output section
+       owner is not COFF.
+
+2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+       * ecoff.c (bfd_debug_section): Fix initialization.
+       * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it
+       is always a positive integer. Cast away sign mismatch.
+       * elf32-mips.c: Fix misleading comment and typo.
+       (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use
+       correct data type.
+       * elflink.c: Fix typo.
+       (_bfd_elf_create_dynamic_sections): Remove superfluous initialization.
+       * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch.
+
+2001-05-04  Richard Henderson  <rth@redhat.com>
+
+       * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true.
+
+2001-05-04  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * elf32-arm.h (elf32_arm_final_link_relocate): Set
+        EF_ARM_HASENTRY if the start address is set.
+
+2001-05-03  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * targets.c (_bfd_target_vector_entries): Compute value based on
+       the size of the _bfd_target_vector and not bfd_target_vector.
+
+2001-05-03  H.J. Lu  <hjl@gnu.org>
+
+       * elfcode.h: Include "libiberty.h".
+
+       * elflink.h (elf_link_add_object_symbols): Set
+       elf_dt_name (abfd) to basename of the bfd filename.
+       (NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename
+       of the bfd filename.
+
+2001-05-03  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute.
+       (elf_generic_info_to_howto_rel): Likewise.
+       * coff-alpha.c (reloc_nil): Likewise.
+       (alpha_ecoff_bad_format_hook): Likewise.
+       (alpha_adjust_reloc_out): Likewise.
+       (alpha_bfd_reloc_type_lookup): Likewise.
+       (alpha_convert_external_reloc): Likewise.
+       * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise.
+       (elf64_alpha_reloc_bad): Likewise.
+       (elf64_alpha_reloc_gpdisp): Likewise.
+       (elf64_alpha_bfd_reloc_type_lookup): Likewise.
+       (elf64_alpha_info_to_howto): Likewise.
+       (elf64_alpha_add_symbol_hook): Likewise.
+       (elf64_alpha_create_got_section): Likewise.
+       (elf64_alpha_is_local_label_name): Likewise.
+       (elf64_alpha_merge_ind_symbols): Likewise.
+       * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise.
+       (mips_elf64_get_reloc_upper_bound): Likewise.
+       * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise.
+       (nlm_alpha_get_public_offset): Likewise.
+
+2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
+
+        * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain
+       about overflow in R_OPENRISC_LO_16_IN_INSN and
+       R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c
+
+2001-04-30  H.J. Lu  <hjl@gnu.org>
+
+       * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1
+       only for ELF_LINK_FORCED_LOCAL.
+       * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
+       * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise.
+       * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
+
+       * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL
+       if the symbol has hidden or internal visibility.
+
+2001-04-30  Alan Modra  <amodra@one.net.au>
+
+       * elf32-hppa.c (final_link_relocate): Branch to .+8 for
+       calls to undefined weak symbols.
+
+2001-04-30  Andreas Jaeger  <aj@suse.de>, Andreas Schwab <schwab@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for
+       R_X86_64_GOTPCREL, don't use assignments instead of comparisons.
+
+2001-04-27  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap
+       out handled entries.
+       (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
+       (elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
+       (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
+       GOT32.
+
+2001-04-27  Sean McNeil <sean@mcneil.com>
+
+       * config.bfd: Add arm-vxworks target.
+       * coff-arm (coff_arm_relocate_section): Add in symbol value to
+       addend (fro VXworks targets).
+
+2001-04-26  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is
+       valid.
+
 2001-04-25  Frank Ch. Eigler  <fche@redhat.com>
 
        * bfd-in.h (bfd_cache_close): Declare newly exported function.
        (cpu-openrisc.lo, elf32-openrisc.lo): New rules.
        * Makefile.in: Regenerated.
        * config.bfd: (openrisc-*-elf): New target.
-       * configure.in (bfd_elf32_openrisc_vec): New vector. 
+       * configure.in (bfd_elf32_openrisc_vec): New vector.
        * configure: Regenerated.
        * libbfd.h: Regenerated.
        * bfd-in2.h: Regenerated.
        * reloc.c: Add OpenRISC relocations.
-       * targets.c (bfd_elf32_openrisc_vec): Declare. 
+       * targets.c (bfd_elf32_openrisc_vec): Declare.
        (bfd_target_vect): Add bfd_elf32_openrisc_vec.
        * archures.c (enum bfd_architecture): Add bfd_arch_openrisc.
        (bfd_openrisc_arch): Declare.