summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/bfd/ChangeLog-2005
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/bfd/ChangeLog-2005')
-rw-r--r--binutils-2.25/bfd/ChangeLog-20055275
1 files changed, 5275 insertions, 0 deletions
diff --git a/binutils-2.25/bfd/ChangeLog-2005 b/binutils-2.25/bfd/ChangeLog-2005
new file mode 100644
index 00000000..7c9b0d3b
--- /dev/null
+++ b/binutils-2.25/bfd/ChangeLog-2005
@@ -0,0 +1,5275 @@
+2005-12-31 Valeriy E. Ushakov <uwe@NetBSD.org>
+ Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * elf32-sh.c (sh_elf_relocate_section): Don't reset relocation
+ for R_SH_REL32 in shared objects if the symbol is locally called.
+
+2005-12-31 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Adjust relocs against
+ opd section sym when opd has been edited. Use correct addend
+ when determining branch 'y' bit and branch overflow. Adjust and
+ save opd relocs for ld -r too.
+
+2005-12-30 Eric Christopher <echristo@apple.com>
+
+ * elfxx-mips.c (mips_elf_record_global_got_symbol): Add assert
+ to verify we have a got.
+ (_bfd_mips_elf_check_relocs): Add R_MIPS_TLS_GOTTPREL to relocs
+ needing a GOT.
+
+2005-12-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * configure.host (hppa*64*-*-hpux*): Set host64 to true.
+
+2005-12-29 Nick Clifton <nickc@redhat.com>
+
+ * hash.c (bfd_hash_set_default_size): Add more entries to the
+ hash_size_primes table.
+
+ * stabs.c (_bfd_link_section_stabs): Use bfd_hash_table_init
+ rather than bfd_hash_table_init_n(...,251) so that the size of the
+ hash table can be controlled by the user.
+
+2005-12-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Use info->executable
+ instead of !info->shared.
+
+2005-12-27 Jan-Benedict Glaw <jbglaw@lug-owl.de>
+
+ * vaxlinux.h: New file. (TRAD_CORE_EXTRA_SIZE_ALLOWED): Define.
+ (HOST_MACHINE_ARCH): Define. This allows cross-building vax-linux
+ hosted binutils.
+
+2005-12-27 Nathan Sidwell <nathan@codesourcery.com>
+
+ * elf32-mt.c (mt_elf_merge_private_bfd_data): Do not allow mixing
+ object files from different mt variants.
+
+2005-12-27 Leif Ekblad <leif@rdos.net>
+
+ * config.bfd: Add support for RDOS targets.
+
+2005-12-27 Marty Leisner <leisner@rochester.rr.com>
+
+ * dwarf2.c (lookup_symbol_in_function_table): Check for a function
+ name before passing it to strcmp.
+
+2005-12-27 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (elf_find_function): Don't ignore section syms.
+ Simplify filename logic.
+
+2005-12-27 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (add_stub_sym): Pass info rather than htab.
+ Use different names for pic vs non-pic, '.' instead of '_'.
+ (allocate_dynrelocs): Adjust add_stub_sym call.
+
+2005-12-27 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (bfd_section_from_shdr): Treat invalid reloc sections as
+ normal sections rather than returning false.
+
+2005-12-27 Alan Modra <amodra@bigpond.net.au>
+
+ * coff-h8300.c (h8300_reloc16_extra_cases): Use input section
+ "output_offset" instead of link order "offset".
+ * coff-h8500.c (extra_case): Likewise.
+ * coff-w65.c (w65_reloc16_extra_cases): Likewise.
+ * coff-z80.c (extra_case): Likewise.
+ * coff-z8k.c (extra_case): Likewise.
+ * linker.c (default_indirect_link_order): Likewise, "size" too.
+ * ecoff.c (ecoff_indirect_link_order): Likewise.
+
+2005-12-27 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2005-12-24 Alan Modra <amodra@bigpond.net.au>
+
+ * aix5ppc-core.c: Remove duplicate prototypes.
+ (xcoff64_core_file_matches_executable_p): Provide implementation
+ for !AIX_5_CORE.
+ * corefile.c (generic_core_file_matches_executable_p): Correct
+ syntax error in prototype.
+ * libbfd-in.h (generic_core_file_matches_executable_p): Delete.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2005-12-23 Michael Weiser <michael@weiser.dinsnail.net>
+
+ PR 1150
+ * elf-bfd.h (struct elf_backend_data): New field
+ 'elf_backend_ignore_undef_symbol'.
+ * elfxx-target.h (elf_backend_ignore_undef_symbol): Define to NULL
+ if not already defined.
+ (elfNN_bed): Initialise the elf_backend_ignore_undef_symbol field.
+ * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): New function.
+ * elfxx-mips.h (elf_backend_ignore_undef_symbol): Define and
+ prototype.
+ * elflink.c (elf_link_output_extsym): Check
+ elf_backend_ignore_undef_symbol before reporting an undefined
+ symbol in a shared library.
+
+2005-12-23 Joel Brobecker <brobecker@adacore.com>
+
+ * corefile.c (generic_core_file_matches_executable_p): New function.
+ * libbfd-in.h (generic_core_file_matches_executable_p): Add
+ declaration.
+ * libbfd.h: Regenerate.
+ * hpux-core.c: ANSIfy function declarations and prototypes.
+ (thread_section_p): Manually expand bfd_section_name macro
+ to make it clear that parameter ABFD is not used.
+ (hpux_core_core_file_matches_executable_p): Delete, replaced
+ by macro pointing to generic_core_file_matches_executable_p.
+
+ * aix386-core.c: Replace core_file_matches_executable_p null
+ implementation by generic_core_file_matches_executable_p by
+ using a macro.
+ * aix5ppc-core.c: Likewise.
+ * cisco-core.c: Likewise.
+ * hppabsd-core.c: Likewise.
+ * irix-core.c: Likewise.
+ * lynx-core.c: Likewise.
+ * mach-o.c: Likewise.
+ * netbsd-core.c: Likewise.
+ * osf-core.c: Likewise.
+ * ptrace-core.c: Likewise.
+ * sco5-core.c: Likewise.
+ * trad-core.c: Likewise.
+
+2005-12-19 David Heine <dlheine@tensilica.com>
+
+ * elf32-xtensa.c (action_list_count, xlate_map_entry, xlate_map,
+ xlate_offset_with_removed_text, build_xlate_map, free_xlate_map): New.
+ (check_section_ebb_pcrels_fit): Build new xlate_map, use it and free it
+ when finished.
+
+2005-12-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ Second part of ms1 to mt renaming.
+ * archures.c (bfd_arch_mt): Renamed.
+ (bfd_mt_arch): Renamed.
+ (bfd_archures_list): Adjusted.
+ * bfd-in2.h: Rebuilt.
+ * config.bfd (mt): Remove special case targ_archs.
+ (mt-*-elf): Rename bfd_elf32_mt_vec.
+ * configure: Rebuilt.
+ * configure.in (bfd_elf32_mt_vec): Renamed.
+ (selarchs) Remove mt special case.
+ * cpu-mt.c (arch_info_struct): Adjust.
+ (bfd_mt_arch): Renamed, adjust.
+ * elf32-mt.c (mt_reloc_type_lookup, mt_info_to_howto_rela,
+ mt_elf_relocate_hi16, mt_final_link_relocate, mt_relocate_section,
+ mt_elf_howto_table): Renamed, adjusted.
+ (mt_elf_gc_mark_hook, mt_elf_gc_sweep_hook, mt_elf_check_relocs,
+ elf32_mt_machine, mt_elf_object_p, mt_elf_set_private_flags,
+ mt_elf_copy_private_bfd_data, mt_elf_merge_private_bfd_data,
+ mt_elf_print_private_bfd_data): Renamed, adjusted.
+ (TARGET_BIG_SYM, TARGET_BIG_NAME, ELF_ARCH, ELF_MACHINE_CODE,
+ ELF_MAXPAGESIZE, elf_info_to_howto, elf_backend_relocate_section,
+ bfd_elf32_bfd_reloc_type_lookup, elf_backend_gc_mark_hook,
+ elf_backend_gc_sweep_hook, elf_backend_check_relocs,
+ eld_backend_object_p, bfd_elf32_bfd_set_private_flags,
+ bfd_elf32_bfd_copy_private_bfd_data,
+ bfd_elf32_bfd_merge_private_bfd_data,
+ bfd_elf32_bfd_print_private_bfd_data): Adjusted.
+ * libbfd.h: Regenerated.
+ * reloc.c (BFD_RELOC_MT_PC16, BFD_RELOC_MT_HI16,
+ BFD_RELOC_MT_LO16, BFD_RELOC_MT_GNU_VTINHERIT,
+ BFD_RELOC_MT_GNU_VTENTRY, BFD_RELOC_MT_PCINSN8): Renamed.
+ * targets.c (bfd_elf32_mt_vec): Renamed.
+ (_bfd_target_vector): Adjusted.
+
+2005-12-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/2008
+ * elf.c (_bfd_elf_setup_sections): Return FALSE if
+ elf_linked_to_section will be set to NULL.
+
+ * format.c (bfd_check_format_matches): Don't check the default
+ target twice.
+
+2005-12-13 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Force tail calls in
+ shared libs to resolve locally.
+
+2005-12-12 Paul Brook <paul@codesourcery.com>
+
+ * bfd-in2.h: Regenerate.
+ * elf32-arm.c (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PCREL_CALL and
+ BFD_RELOC_ARM_PCREL_JUMP.
+ (check_use_blx): New function.
+ (bfd_elf32_arm_process_before_allocation): Don't allocate glue if
+ using BLX.
+ (elf32_arm_final_link_relocate): Perform bl<->blx conversion for
+ R_ARM_CALL and R_ARM_THM.
+ (elf32_arm_get_eabi_attr_int): New function.
+ (elf32_arm_size_dynamic_sections): Call check_use_blx.
+ * libbfd.h: Regenerate.
+ * reloc.c: Add BFD_RELOC_ARM_PCREL_CALL and BFD_RELOC_ARM_PCREL_JUMP.
+
+2005-12-12 Nathan Sidwell <nathan@codesourcery.com>
+
+ * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES,
+ BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Replace ms1 with mt.
+ (cpu_mt.lo, elf32-mt.lo): Update target and dependency names.
+ * Makefile.in: Rebuilt.
+ * config.bfd: Replace ms1 arch with mt.
+ * configure.in: Replace ms1 files with mt files.
+ * configure: Rebuilt.
+ * elf32-mt.c: Renamed from elf32-ms1.c. Update include files.
+ * cpu-mt.c: Renamed from cpu-ms1.c.
+
+2005-12-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Don't consider non-ppc64 input.
+
+2005-12-10 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_gc_mark_dynamic_ref_symbol): Use !info-executable
+ to test for linking shared libs, not info->shared.
+
+2005-12-08 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (struct ppc_elf_link_hash_table): Add emit_stub_syms.
+ (ppc_elf_select_plt_layout): Add emit_stub_syms param, save to htab.
+ (add_stub_sym): New function.
+ (allocate_dynrelocs): Call add_stub_sym.
+ (ppc_elf_size_dynamic_sections): Emit __glink and __glink_PLTresolve
+ when emit_stub_syms.
+ * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
+
+2005-12-08 Alan Modra <amodra@bigpond.net.au>
+
+ * reloc.c (enum complain_overflow): Correct comments.
+ (bfd_check_overflow): Combine complain_overflow_bitfield and
+ complain_overflow_signed code.
+ (_bfd_relocate_contents): Likewise.
+ (bfd_howto_32): Use complain_overflow_dont.
+ * elf32-d10v.c (elf_d10v_howto_table): Revert 2002-06-17 change.
+ * bfd-in2.h: Regenerate.
+
+2005-12-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (assign_section_numbers): Remove extra code in the last
+ change.
+
+2005-12-07 H.J. Lu <hongjiu.lu@intel.com>
+ Andreas Schwab <schwab@suse.de>
+
+ PR binutils/1991
+ * elf.c (assign_section_numbers): Always use the output section
+ when setting up sh_link for SHF_LINK_ORDER.
+
+2005-12-07 Thiemo Seufer <ths@networkno.de>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1932
+ * bfd-in.h (bfd_elf_record_link_assignment): Add output_bfd
+ and hidden arguments.
+
+ * bfd.c (bfd_hide_symbol): Removed.
+
+ * bfd-in2.h: Regenerated.
+
+ * elflink.c (bfd_elf_record_link_assignment): Handle hidden
+ symbols which were provided by a linker script.
+
+2005-12-06 Paul Gilliam <pgilliam@us.ibm.com>
+
+ * cpu-powerpc.c (bfd_powerpc_archs): Add ppc 750.
+
+2005-11-18 Mark Kettenis <kettenis@gnu.org>
+
+ * elf64-hppa.c (elf64_hppa_section_from_phdr): Create .kernel
+ pseudo-section. Make sure .reg section comes after the proc
+ section it's generated from.
+
+2005-12-01 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf32-m32r.c (m32r_elf_sweep_hook): Fix an illegal duplicate check.
+ (m32r_elf_relocate_section): Fix R_M32R_10_PCREL_RELA linkage bug.
+ (m32r_elf_gc_sweep_hook): Likewise.
+ (m32r_elf_check_relocs): Likewise.
+
+2005-11-24 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (_bfd_generic_match_sections_by_type): Don't define.
+ * libbfd-in.h (_bfd_generic_match_sections_by_type): Delete.
+ * libbfd.c (_bfd_generic_match_sections_by_type): Delete.
+ * targets.c (bfd_match_sections_by_type): Don't define.
+ (BFD_JUMP_TABLE_LINK): Remove _bfd_generic_match_sections_by_type.
+ * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
+ * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-11-23 Daniel Jacobowitz <dan@codesourcery.com>
+ Thiemo Seufer <ths@networkno.de>
+
+ * elf32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for
+ R_MIPS_PC16.
+ (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
+ (bfd_elf32_bfd_reloc_type_lookup): Don't handle
+ BFD_RELOC_16_PCREL_S2.
+ * elf64-mips.c (mips_elf64_howto_table_rel): Use rightshift 2 for
+ R_MIPS_PC16.
+ (mips_elf64_howto_table_rela): Likewise.
+ (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
+ (bfd_elf64_bfd_reloc_type_lookup): Don't handle
+ BFD_RELOC_16_PCREL_S2.
+ * elfn32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for
+ R_MIPS_PC16.
+ (elf_mips_howto_table_rela): Likewise.
+ (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
+ (bfd_elf32_bfd_reloc_type_lookup): Don't handle
+ BFD_RELOC_16_PCREL_S2.
+ * elfxx-mips.c: Formatting fixes.
+ (mips_elf_calculate_relocation): Handle R_MIPS_GNU_REL16_S2
+ and R_MIPS_PC16 identically.
+
+2005-11-23 Frederic Riss <frederic.riss@st.com>
+
+ * elfcode.h (elf_object_p): Delay the setting of start_address
+ until we're sure the backend matches the binary.
+
+2005-11-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same
+ manner as bfd_decode_symclass.
+
+2005-11-18 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_check_relocs): Don't set has_14bit_branch
+ on branches to same section.
+
+2005-11-17 Randolph Chung <tausq@debian.org>
+
+ * elf64-hppa.c (elf64_hppa_object_p): Recognize corefiles under
+ hppa64-hp-hpux11.11.
+ (elf64_hppa_section_from_phdr): New function.
+ (elf_backend_section_from_phdr): Define.
+
+2005-11-11 Nick Clifton <nickc@redhat.com>
+
+ PR 1150
+ * elfxx-mips.c (mips_elf_calculate_relocation): Ignore an
+ undefined symbol if it is optional.
+ (_bfd_mips_elf_merge_symbol_attribute): Make sure that the
+ optional flag is merged as well as the visibility.
+ * elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Prototype.
+ (elf_backend_merge_symbol_attribute): Define.
+
+2005-11-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ Add ms2 support
+ * archures.c (bfd_mach_ms2): Define.
+ * cpu-ms1.c (arch_info_struct): Add ms2 stanza.
+ * elf32-ms1.c (elf32_ms1_machine): Add ms2 case.
+ (ms1_elf_merge_private_bfd_data): Remove unused variables. Add
+ correct merging logic, with workaround.
+ (ms1_elf_print_private_bfd_data): Add ms2 case.
+ * reloc.c (BFD_RELOC_MS1_PCINSN8): Add ms2 specific reloc.
+ * libbfd.h: Regenerated.
+ * bfd-in2.h: Regenerated.
+
+2005-11-07 Steve Ellcey <sje@cup.hp.com>
+
+ * warning.m4 (AM_BINUTILS_WARNINGS): Default to empty string
+ if compiler is not GCC.
+ * configure: Regenerate
+
+2005-11-07 Steve Ellcey <sje@cup.hp.com>
+
+ * configure: Regenerate after modifying bfd/warning.m4.
+
+2005-11-07 Steve Ellcey <sje@cup.hp.com>
+
+ * configure.host (ia64-*-hpux*): Set _LARGEFILE64_SOURCE.
+
+2005-11-03 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * configure.in: Check for fopen64.
+ * libbfd-in.h (real_fopen): New prototype.
+ * configure, config.in, libbfd.h: Regenerated.
+ * bfdio.c (real_fopen): New function.
+ * opncls.c (bfd_fopen, bfd_fill_in_gnu_debuglink_section): Use it.
+ * cache.c (bfd_open_file): Likewise.
+
+2005-11-03 Thiemo Seufer <ths@networkno.de>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Handle only
+ forced local symbols here.
+ (mips_elf_create_dynamic_relocation): Likewise.
+ (_bfd_mips_elf_finish_dynamic_symbol): Fix typo in comment.
+
+2005-11-03 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (elf_fake_sections): When calculating tbss size, just use
+ the last link_order.
+ (assign_file_positions_for_segments): Likewise.
+ * elflink.c (bfd_elf_final_link): Likewise.
+ (elf_reloc_link_order): Correct comment.
+
+2005-11-02 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/1775
+ * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Add required
+ parentheses.
+
+2005-10-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerated.
+
+ * dep-in.sed: Replace " ./" with " ".
+
+2005-10-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * hpux-core.c: Include <machine/reg.h> only if HPUX_CORE is
+ define.
+ * osf-core.c: Include <sys/core.h> only if OSF_CORE is defined.
+ * sco5-core.c: Include <sys/paccess.h> and <sys/region.h> only
+ if SCO5_CORE is defined.
+
+2005-10-29 Mark Kettenis <kettenis@gnu.org>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+
+2005-10-28 Joel Brobecker <brobecker@adacore.com>
+
+ From Eric Botcazou <botcazou@adacore.com>
+ * coffcode.h (coff_compute_section_file_positions): Fix small
+ error in preprocessor directives.
+
+2005-10-28 Joel Brobecker <brobecker@adacore.com>
+
+ Mostly from Eric Botcazou <botcazou@adacore.com>
+ * rs6000-core.c: ANSIfy all function definitions.
+ Add missing function prototypes.
+ (ptr_to_uint): New type.
+ (rs6000coff_core_p): Use it as intermediate step in casts.
+ (rs6000coff_core_file_matches_executable_p): Likewise.
+ * xcoff-target.h (rs6000coff_core_p): Fix prototype.
+ (rs6000coff_core_file_matches_executable_p): Likewise.
+
+2005-10-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/1472
+ * aoutx.h (NAME (aout, machine_type)): Handle
+ bfd_mach_sparc_v8plus, bfd_mach_sparc_v8plusa,
+ bfd_mach_sparc_v8plusb, bfd_mach_sparc_v9, bfd_mach_sparc_v9a
+ and bfd_mach_sparc_v9b.
+
+2005-10-28 Hans-Peter Nilsson <hp@axis.com>
+
+ PR ld/1567
+ * elf32-cris.c (cris_elf_howto_table) <R_CRIS_32>: Set
+ complain_on_overflow field to complain_overflow_dont.
+
+2005-10-27 Alan Modra <amodra@bigpond.net.au>
+
+ PR 973
+ * cache.c (enum cache_flag): New.
+ (close_one): Save file mtime.
+ (bfd_cache_lookup): Add flag arg, adjust all users.
+ (bfd_cache_lookup_worker): Likewise.
+ (cache_btell): Use CACHE_NO_OPEN and return abfd->where if file
+ not open.
+ (cache_bflush): Similarly, and return success of file not open.
+ (cache_bseek): Use CACHE_NO_SEEK if SEEK_SET or SEEK_END.
+ (cache_bstat): Use CACHE_NO_SEEK_ERROR.
+
+ * bfdwin.c (bfd_get_file_window): Seek into file in place of
+ using bfd_cache_lookup.
+
+ * cache.c (BFD_CACHE_MAX_OPEN): Make private to this file.
+ (bfd_last_cache, bfd_cache_lookup, bfd_cache_lookup_worker): Likewise.
+ * libbfd-in.h (bfd_cache_lookup_worker, bfd_last_cache): Delete.
+ * libbfd.h: Regenerate.
+
+ * hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat.
+ * sco5-core.c (sco5_core_file_p): Likewise.
+ * trad-core.c (trad_unix_core_file_p): Likewise.
+
+ * cache.c: Reorganize file to avoid forward reference.
+
+2005-10-26 Alan Modra <amodra@bigpond.net.au>
+
+ * cache.c (bfd_cache_lookup_worker): Don't abort on failing to
+ reopen file.
+ (cache_btell, cache_bseek, cache_bflush, cache_bstat): Return -1 on
+ bfd_cache_lookup failure.
+ (cache_bread, cache_bwrite): Return 0 on the same.
+ * bfdwin.c (bfd_get_file_window): Likewise.
+ * hppabsd-core.c (hppabsd_core_core_file_p): Likewise.
+ * sco5-core.c (sco5_core_file_p): Likewise.
+ * trad-core.c (trad_unix_core_file_p): Likewise.
+
+2005-10-26 Alan Modra <amodra@bigpond.net.au>
+
+ * cache.c (bfd_cache_lookup_worker): Use bfd_error_handler
+ rather than bfd_perror. Print file name. Internationalise.
+
+2005-10-26 Alan Modra <amodra@bigpond.net.au>
+
+ * cache.c (bfd_open_file): Set bfd_error_system_call on failure
+ to open file.
+ (bfd_cache_lookup_worker): Remove check that file pos is in
+ unsigned long range. Print system error before aborting.
+
+2005-10-25 Arnold Metselaar <arnold.metselaar@planet.nl>
+
+ * Makefile.am: Add rules for coff-z80 and cpu-z80.
+ * Makefile.in: Regenerated.
+ * archures.c: Add bfd_arch_z80 and support for it.
+ * coffcode.h(coff_set_arch_mach_hook): Add case Z80MAGIC.
+ (coff_set_flags): Add case bfd_arch_z80.
+ * config.bfd: Add z80coff_vec.
+ * configure.in: Add z80coff_vec.
+ * reloc.c: Add BFD_RELOC_Z80_DISP8
+ * targets.c: Add z80coff_vec.
+ * coff-z80.c: New file
+ * cpu-z80.c: New file
+ * configure: Regenerated.
+ * libbfd.h: Regenerated.
+ * bfd-in2.h: Regenerated.
+
+2005-10-26 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/1540
+ * elf-bfd.h (elf_backend_copy_indirect_symbol): Replace pointer to
+ elf_backend_data with pointer to bfd_link_info.
+ (_bfd_elf_link_hash_copy_indirect): Likewise.
+ * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise. Handle
+ direct and indirect symbols both having dynamic link info.
+ * elf32-arm.c (elf32_arm_copy_indirect_symbol): Likewise.
+ * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
+ * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
+ * elf32-m32r.c (m32r_elf_copy_indirect_symbol): Likewise.
+ * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Likewise.
+ * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
+ * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise.
+ * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
+ * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
+ * elflink.c: Adjust all calls to bed->elf_backend_copy_indirect_symbol.
+ * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Update prototype.
+ * elfxx-sparc.h (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
+
+2005-10-25 Alan Modra <amodra@bigpond.net.au>
+
+ * po/SRC-POTFILES.in: Regenerate.
+ * po/bfd.pot: Regenerate.
+
+2005-10-24 Jie Zhang <jie.zhang@analog.com>
+
+ * elf32-bfin.c (bfd_bfin_elf32_create_embedded_relocs): Fix signedness
+ warning.
+
+2005-10-24 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * elf32-bfin.c (bfin_howto_table): Set src_mask to 0 for all relocs.
+ (bfin_imm16_reloc): Always add in the addend. Don't fetch existing
+ contents from section.
+ (bfin_relocate_section): Rework so as to not call special_functions.
+ Handle the relocation stack here. Treat pcrel24 relocs specially.
+
+2005-10-24 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_link_input_bfd): Don't use linker_mark and
+ SEC_EXCLUDE to test for sections dropped from output. Instead,
+ use bfd_section_removed_from_list on normal sections. Don't
+ attempt to handle symbols with unknown reserved section indices.
+ * linker.c (_bfd_generic_link_output_symbols): Don't use
+ linker_mark to test for symbols belonging to dropped sections.
+ Do allow absolute symbols.
+
+2005-10-24 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-i370.c (i370_elf_fake_sections): Don't set SHF_EXCLUDE on
+ group sections.
+
+2005-10-24 Jan Beulich <jbeulich@novell.com>
+
+ * cpu-ia64-opc.c (elf64_ia64_operands): Move memory operand out of
+ set of indirect operands.
+
+2005-10-24 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_fake_sections): Don't set SHF_EXCLUDE on
+ group sections.
+
+2005-10-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * coff-rs6000.c (rs6000coff_vec): Initialize
+ _bfd_init_private_section_data with
+ _bfd_generic_init_private_section_data.
+ (pmac_xcoff_vec): Likewise.
+ * coff64-rs6000.c (rs6000coff64_vec): Likewise.
+ (aix5coff64_vec): Likewise.
+
+2005-10-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1487
+ * elf-bfd.h (_bfd_generic_init_private_section_data): New.
+ (_bfd_elf_init_private_section_data): New.
+
+ * elf.c (elf_fake_sections): Don't set SHF_GROUP for
+ relocatable link.
+ (bfd_elf_set_group_contents): Don't handle relocatable link
+ specially.
+ (assign_section_numbers): If it isn't called by assembler,
+ use the output section of elf_linked_to_section for
+ SHF_LINK_ORDER.
+ (_bfd_elf_init_private_section_data): New.
+ (_bfd_elf_copy_private_section_data): Call it.
+
+ * libbfd-in.h (_bfd_generic_init_private_section_data): New.
+
+ * libbfd.c (_bfd_generic_init_private_section_data): New.
+
+ * targets.c (BFD_JUMP_TABLE_COPY): Add
+ _bfd_generic_init_private_section_data.
+ (bfd_init_private_section_data): Likewise.
+
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
+2005-10-23 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (dec_dynrel_count): Don't report errors for local
+ syms in gc'd sections.
+ (ppc64_elf_edit_opd): Don't adjust reloc counts when NO_OPD_RELOCS.
+ (elf_backend_action_discarded): Define.
+ (ppc64_elf_action_discarded): New function.
+
+2005-10-19 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c (find_arm_elf_section_entry): New function.
+ (get_arm_elf_section_data): Use it.
+ (unrecord_section_with_arm_elf_section_data): Use it.
+
+2005-10-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * coff-rs6000.c (rs6000coff_vec): Initialize
+ _bfd_match_sections_by_type with
+ _bfd_generic_match_sections_by_type.
+ (pmac_xcoff_vec): Likewise.
+ * coff64-rs6000.c (rs6000coff64_vec): Likewise.
+ (aix5coff64_vec): Likewise.
+
+2005-10-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1467
+ * elf-bfd.h (_bfd_elf_match_sections_by_type): New.
+ (_bfd_generic_match_sections_by_type): New. Defined.
+
+ * elf.c (_bfd_elf_match_sections_by_type): New.
+
+ * libbfd-in.h (_bfd_generic_match_sections_by_type): New.
+
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
+ * libbfd.c (_bfd_generic_match_sections_by_type): New.
+
+ * targets.c (BFD_JUMP_TABLE_LINK): Initialize
+ _bfd_match_sections_by_type with
+ _bfd_generic_match_sections_by_type.
+ (bfd_target): Add _bfd_match_sections_by_type.
+
+2005-10-08 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c: Move #include "elf/arm.h" after libbfd.h.
+ (NUM_KNOWN_ATTRIBUTES): Define.
+ (aeabi_attribute, aeabi_attribute_list): Define.
+ (elf32_arm_obj_tdata): Add known_eabi_attributes and
+ other_eabi_attributes.
+ (uleb128_size, is_default_attr, eabi_attr_size,
+ elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
+ elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
+ elf32_arm_new_eabi_attr, attr_strdup, elf32_arm_add_eabi_attr_int,
+ elf32_arm_add_eabi_attr_compat, copy_eabi_attributes,
+ elf32_arm_merge_eabi_attributes): New functions.
+ (elf32_arm_copy_private_bfd_data): Copy EABI object attributes.
+ (elf32_arm_fake_sections): Handle .ARM.attributes.
+ (elf32_arm_parse_attributes): New function.
+ (elf32_arm_section_from_shdr): Use it.
+ (bfd_elf32_bfd_final_link): Define.
+
+2005-10-06 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_check_relocs): Avoid aliasing warnings from
+ GCC.
+ (elf32_arm_size_dynamic_sections): Likewise.
+ * ecofflink.c (bfd_ecoff_debug_one_external): Likewise.
+ * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
+ * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+ * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
+ * elf32-s390.c (elf_s390_check_relocs): Likewise.
+ (elf_s390_size_dynamic_sections): Likewise.
+ * elf32-sh.c (sh_elf_check_relocs): Likewise.
+ * elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count)
+ (ppc64_elf_size_dynamic_sections): Likewise.
+ * elf64-s390.c (elf_s390_check_relocs): Likewise.
+ (elf_s390_size_dynamic_sections): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
+ (_bfd_sparc_elf_size_dynamic_sections): Likewise.
+ * ieee.c (ieee_slurp_section_data): Likewise.
+ * oasys.c (oasys_slurp_section_data): Likewise.
+
+2005-10-04 Bob Wilson <bob.wilson@acm.org>
+
+ * archive.c: Add missing SUBSECTION for documentation.
+ * bfd.c: Likewise.
+ * cache.c: Likewise.
+ * corefile.c: Likewise.
+ * format.c: Likewise.
+ * init.c: Likewise.
+ * libbfd.c: Likewise.
+ * opncls.c: Likewise.
+ * elf.c: Remove blank line after SECTION heading.
+ * reloc.c: Change "howto manager" SECTION to a SUBSECTION.
+
+2005-10-04 Nick Clifton <nickc@redhat.com>
+
+ * elf32-arm.c (get_arm_elf_section_data): Cache the last pointer
+ matched so that the typical case of scanning for the previous
+ section to last one can be handled quickly.
+
+2005-10-03 David Heine <dlheine@tensilica.com>
+
+ * elf32-xtensa.c (relocations_reach): Skip range check for
+ absolute literals.
+
+2005-10-03 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on
+ synthetic syms.
+
+2005-09-30 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerated.
+ * aclocal.m4: Likewise.
+
+2005-09-30 Catherine Moore <clm@cm00re.com>
+
+ * Makefile.am: Bfin support.
+ * Makefile.in: Regenerated.
+ * aclocal.m4: Regenerated.
+ * archures.c (bfd_mach_bfin): New.
+ (bfd_arch_bfin): New.
+ bfd-in.h (bfd_bfin_elf32_create_embedded_relocs): New.
+ * bfd-in2.h: Regenerated.
+ * config.bfd: Bfin support.
+ * configure: Regenerated.
+ * configure.in: Bfin support.
+ * libbfd.h: Regenerated.
+ * reloc.c: Add BFD relocations for Bfin.
+ * targets.c (bfd_elf32_bfin_vec): New.
+ * cpu-bfin.c: New file.
+ * elf32-bfin.c: New file.
+
+2005-09-30 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc_type_of_stub): Check both func desc and func
+ entry sym before deciding no stub is needed.
+ (ppc64_elf_size_stubs): When calculating branch destination,
+ don't use func desc sym for old ABI objects unless func entry
+ is undefined.
+
+2005-09-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/1321
+ * elf-bfd.h (_bfd_elf_setup_group_pointers): Renamed to ...
+ (_bfd_elf_setup_sections): This.
+ * elf.c: Likewise.
+ * elfcode.h (elf_object_p): Likewise.
+
+ * elf.c (_bfd_elf_setup_sections): Process SHF_LINK_ORDER.
+ (_bfd_elf_copy_private_section_data): Likewise.
+
+2005-09-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_fixup_link_order): Report locations for mixed
+ ordered and unordered input sections.
+
+2005-09-22 James E. Wilson <wilson@specifix.com>
+
+ * dwarf2.c (struct funcinfo): Delete nesting_level field.
+ (lookup_address_in_function_table): Delete code to set funcinfo
+ caller_func field. Delete local curr_func.
+ (scan_unit_for_symbols): New locals nested_funcs, nested_funcs_size.
+ Delete code setting funcinfo nesting_level field. Add code to set
+ funcinfo caller_func field.
+
+2005-09-20 James E. Wilson <wilson@specifix.com>
+
+ * dwarf2.c (find_abstract_instance_name): Don't early exit when name
+ set. For DW_AT_name case, only set name if not already set. Handle
+ DW_AT_MIPS_linkage_name.
+
+2005-09-20 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (_bfd_elf_merge_symbol): Simplify.
+
+2005-09-19 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc_build_one_stub): Replace assertion that long
+ branch offset is in range with an error. Print full stub name on
+ errors.
+ (ppc_size_one_stub): Print full stub name on errors.
+ (group_sections): Warn if section size exceeds group size.
+ (ppc64_elf_size_stubs): Continue relaxing when stub types change.
+
+2005-09-09 Kevin Buettner <kevinb@redhat.com>
+
+ * elf32-am33lin.c (bfd.h, sysdep.h, elf-bfd.h, elf/mn10300.h):
+ Include.
+ (elf32_am33lin_grok_prstatus, elf32_am33lin_grok_psinfo): New
+ functions.
+ (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define.
+
+2005-09-09 Richard Earnshaw <richard.earnshaw@arm.com>
+
+ * elf32-arm.c (elf32_arm_section_from_shdr): Accept SHT_ARM_PREEMPTMAP
+ and SHT_ARM_ATTRIBUTES.
+
+2005-09-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_get_linked_section_vma): Fix a typo in comment.
+ * elfxx-ia64.c (elf_backend_link_order_error_handler): Likewise.
+
+2005-09-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1263
+ * elflink.c (elf_link_add_object_symbols): Abort for
+ --just-symbols on DSO.
+
+2005-09-08 Paul Brook <paul@codesourcery.com>
+
+ * reloc.c: Rename BFD_RELOC_ARM_SMI to BFD_RELOC_ARM_SMC.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-09-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1301
+ * elflink.c (_bfd_elf_merge_symbol): Don't check undefined
+ symbol introduced by "ld -u" for TLS.
+
+2005-09-02 Paul Brook <paul@codesourcery.com>
+
+ * libbdf.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * reloc.c: Add BFD_RELOC_ARM_T32_CP_OFF_IMM and
+ BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
+
+2005-09-01 Dmitry Diky <diwil@spec.ru>
+
+ * elf32-msp430.c (msp430_elf_relax_delete_bytes): Do not adjust
+ local symbols and move it to
+ (msp430_elf_relax_adjust_locals): New function - walk over the
+ sections in the bfd and adjust relocations as necessary.
+
+2005-08-31 DJ Delorie <dj@redhat.com>
+
+ * elf32-i386.c (elf_i386_check_relocs): Don't cast a unary &
+ address operator, as that breaks GCC's strict aliasing rules.
+ (elf_i386_size_dynamic_sections): Avoid the need for type
+ punning.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Don't cast a unary
+ & address operator, as that breaks GCC's strict aliasing
+ rules.
+ (elf_x86_64_size_dynamic_sections): Avoid the need for type
+ punning.
+
+2005-08-30 Phil Edwards <phil@codesourcery.com>
+
+ * config.bfd (i[3-7]86-*-vxworks): Match vxworks* instead.
+
+2005-08-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1247
+ * elfxx-ia64.c (allocate_fptr): Check undefined symbol.
+
+2005-08-29 Steven J. Hill <sjhill@realitydiluted.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_relocate_section): Initialise
+ 'value' to avoid compile time warning message.
+
+2005-08-26 Christian Groessler <chris@groessler.org>
+
+ * coff-z8k.c: (r_jr, r_disp7, r_callr): Fix src_mask and dst_mask
+ of HOWTO.
+ (coff_z8k_select_reloc): Remove.
+ (SELECT_RELOC): Remove.
+ (coff_z8k_reloc_type_lookup): New function.
+ (coff_bfd_reloc_type_lookup): Define.
+ * configure.in: Add cofflink.lo to z8kcoff_vec.
+ * configure: Regenerate.
+ * reloc.c: (bfd_reloc_code_type): Add z8k relocations.
+ (bfd_install_relocation): Don't clear reloc_entry->addend for
+ coff-z8k target.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-08-25 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * elf32-sh.c (sh_elf_get_flags_from_mach): Fix off-by-one error.
+
+2005-08-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/1208
+ * elf-hppa.h (elf_hppa_relocate_section): Print out the name
+ of unresolvable relocation.
+ * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
+ * elf32-arm.c (elf32_arm_relocate_section): Likewise.
+ * elf32-i386.c (elf_i386_relocate_section): Likewise.
+ * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
+ * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
+ * elf32-s390.c (elf_s390_relocate_section): Likewise.
+ * elf32-sh.c (sh_elf_relocate_section): Likewise.
+ * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise.
+ * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
+
+2005-08-18 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config.bfd: Add bfd_elf32_shnbsd_vec and bfd_elf32_shlnbsd_vec
+ to targ_selvecs for sh5*-*-netbsd* and sh64*-*-netbsd*.
+
+2005-08-18 Alan Modra <amodra@bigpond.net.au>
+
+ * coff-a29k.c: Delete.
+ * cpu-a29k.c: Delete.
+ * Makefile.am: Remove mention of a29k files.
+ * aoutf1.h: Remove a29k support.
+ * aoutx.h: Likewise.
+ * archures.c: Likewise.
+ * coffcode.h: Likewise.
+ * config.bfd: Likewise.
+ * configure.in: Likewise.
+ * ieee.c: Likewise.
+ * mipsbsd.c: Likewise.
+ * pdp11.c: Likewise.
+ * sparclynx.c: Likewise.
+ * targets.c: Likewise.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2005-08-18 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Warn on
+ zero size dynamic variables.
+ * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
+ * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
+ * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
+ * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
+ * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
+ * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
+ * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
+ * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
+
+2005-08-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/1179
+ * dwarf2.c (_bfd_dwarf2_find_nearest_line): Use section lma
+ instead of vma.
+ (_bfd_dwarf2_find_line): Likewise.
+
+2005-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-mmix.c (mmix_elf_add_symbol_hook): Mark reg section
+ SEC_LINKER_CREATED.
+ (mmix_elf_final_link): Check that section hasn't already been
+ removed before removing.
+ * mmo.c (mmo_scan): Mark reg contents section SEC_LINKER_CREATED.
+ (mmo_canonicalize_symtab): Likewise for reg section.
+
+2005-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Move assert later.
+ * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called
+ without any got section.
+
+2005-08-17 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * cofflink.c (_bfd_coff_generic_relocate_section): Correct
+ comment.
+
+2005-08-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (_bfd_elf_define_linkage_sym): Don't call
+ bfd_elf_link_record_dynamic_symbol. Call elf_backend_hide_symbol.
+ (_bfd_elf_link_renumber_dynsyms): Formatting.
+ (struct elf_gc_sweep_symbol_info): New.
+ (elf_gc_sweep_symbol): Rewrite.
+ (elf_gc_sweep): Adjust params and elf_gc_sweep_symbol call.
+ Call _bfd_elf_link_renumber_dynsyms.
+ (bfd_elf_gc_sections): Adjust elf_gc_sweep call.
+
+2005-08-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_edit_opd): Don't call dec_dynrel_count
+ when relocatable.
+
+2005-08-15 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (ELF_MACHINE_CODE, ELF_MACHINE_ALT1): Swap values
+ of EM_XTENSA and EM_XTENSA_OLD.
+
+2005-08-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (_bfd_elf_define_linkage_sym): Declare.
+ * elflink.c (_bfd_elf_define_linkage_sym): New function, extracted
+ from..
+ (_bfd_elf_create_got_section): ..here.
+ (_bfd_elf_link_create_dynamic_sections): Call it for _DYNAMIC.
+ (_bfd_elf_create_dynamic_sections): ..and _PROCEDURE_LINKAGE_TABLE_.
+ * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Use
+ _bfd_elf_define_linkage_sym.
+ * elf32-frv.c (_frv_create_got_section): Likewise.
+ * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise.
+
+2005-08-15 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_howto_table_1): Make R_ARM_PLT32 the same as
+ R_ARM_PC24.
+
+2005-08-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR ld/1135
+ * elf64-hppa.c (elf64_hppa_special_sections): Add flag definitions for
+ .plt, .dlt, .sdata, .sbss and .tbss.
+
+2005-08-12 Dmitry Diky <diwil@spec.ru>
+
+ * elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust relocations
+ referenced by .section + DISPLACEMENT.
+
+2005-08-10 James E. Wilson <wilson@specifix.com>
+
+ * dwarf2.c (scan_unit_for_symbols, case DT_AT_location): Verify that
+ DW_OP_addr is only opcode in location before using it.
+
+2005-08-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_final_link): Reset gp.
+
+2005-08-09 Rodney Brown <rbrown@bravurasolutions.com.au>
+ Nick Clifton <nickc@redhat.com>
+
+ * aix5ppc-core.c (xcoff64_core_p): Constify return_value
+ variable. Also, do not use core_hdr macro as it evaluates to a
+ cast of an lvalue which is no longer supported by GCC 4.0.
+
+2005-08-08 Eric Dönges <Eric.Doenges@betty-tv.com>
+
+ * archures.c (bfd_mach_msp21): New MSP430 machine number.
+ * bfd-in2.h: Regenerate.
+ * cpu-msp430.c (arch_info_struct): Add support for msp430x21xx
+ variants.
+
+2005-08-07 Nick Clifton <nickc@redhat.com>
+ Paul Brook <paul@codesourcery.com>
+
+ PR 1147
+ * elf32-arm.c (bfd_elf32_close_and_cleanup): Define.
+ (elf32_arm_close_and_cleanup): New function - walk over the
+ sections in the bfd that is being closed removing them from the
+ list of recorded sections.
+ (unrecord_section_via_map_over_sections): New helper function.
+ (record_section_with_arm_elf_section_data): Call bfd_malloc
+ instead of bfd_alloc. Remove unneeded abfd parameter.
+ (elf32_arm_new_section_hook): Do not pass bfd to
+ record_section_with_arm_elf_section_data.
+
+ * elfxx-target.h (bfd_elfNN_close_and_cleanup): Only define if not
+ already defined by the target.
+
+2005-08-05 Fred Fish <fnf@specifix.com>
+
+ * dwarf2.c (read_rangelist): Use addr_size instead of offset_size
+ to determine how many bytes to read from each rangelist entry.
+
+2005-08-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd.c (bfd_hide_symbol): New.
+ * bfd-in2.h: Regenerated.
+
+2005-08-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf64_x86_64_merge_symbol): When mixing a
+ large common symbol and a normal common symbol, always turn
+ the large common symbol into a normal one.
+
+2005-08-04 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (struct elf_linker_section): Replace sym_val field
+ with sym.
+ (ppc_elf_relocate_section): Adjust for above.
+ (create_sdata_sym): New function.
+ (ppc_elf_create_linker_section): Call it.
+ (ppc_elf_check_relocs): Correct has_sda_refs and non_got_refs.
+ Create sdata syms for all SDA relocs.
+ (ppc_elf_adjust_dynamic_symbol): Don't special case _SDA_BASE_
+ and _SDA2_BASE_.
+ (ppc_elf_set_sdata_syms): Delete.
+ * elflink.c (bfd_elf_size_dynamic_sections): Don't create DT_INIT
+ and DT_FINI tags unless associated section has input.
+ (bfd_elf_set_symbol, _bfd_elf_provide_symbol): Delete.
+ (_bfd_elf_provide_section_bound_symbols): Delete.
+ * bfd-in.h (_bfd_elf_provide_symbol): Delete.
+ (_bfd_elf_provide_section_bound_symbols): Delete.
+ * bfd-in2.h: Regenerate.
+
+2005-08-04 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (fix_syms, _bfd_elf_fix_excluded_sec_syms): Move to..
+ * linker.c (fix_syms, _bfd_fix_excluded_sec_syms): ..here.
+ * bfd-in.h (_bfd_fix_excluded_sec_syms): Rename.
+ * bfd-in2.h: Regenerate.
+
+2005-08-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_relax_section): Resize .rela.got
+ only if it isn't NULL.
+
+2005-08-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_howto_table): Undo the overflow change for
+ R_386_PC16 made on 2005-07-18.
+
+ * elf64-x86-64.c (x86_64_elf_howto_table): Undo the overflow
+ change for R_X86_64_PC16 made on 2005-07-18.
+
+2005-08-03 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (struct ppc_elf_link_hash_table): Remove hgot. Use
+ elf.hgot throughout file.
+
+2005-08-03 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Correct value of
+ _GLOBAL_OFFSET_TABLE_ for > 32k GOT.
+
+2005-08-02 Andreas Schwab <schwab@suse.de>
+
+ * elfxx-ia64.c (struct elfNN_ia64_allocate_data): Add only_got.
+ (elfNN_ia64_relax_section): Reallocate .rela.got when .got has
+ changed.
+ (allocate_dynrel_entries): Look only at GOT relocations when
+ only_got is true.
+ (elfNN_ia64_size_dynamic_sections): Set only_got to false before
+ calling allocate_dynrel_entries.
+
+2005-08-02 Nick Clifton <nickc@redhat.com>
+
+ PR 1147
+ * elf32-arm.c (struct _arm_elf_section_data): Turn into a typedef
+ and make the mapcount field unsigned.
+ (struct section_list): New: Used to keep track of which sections
+ have an _arm_elf_section_data structure.
+ (record_section_with_arm_elf_section_data): New function.
+ (get_arm_elf_section_data): New function.
+ (unrecord_section_with_arm_elf_section_data): New function.
+ (elf32_arm_output_symbol_hook): Use get_arm_elf_section_data.
+ (elf32_arm_new_section_hook): Call
+ record_section_with_arm_elf_section_data.
+ (elf32_arm_write_section): Use get_arm_elf_section_data and
+ unrecord_section_with_arm_elf_section_data.
+
+2005-08-01 Richard Sandiford <richard@codesourcery.com>
+
+ * elfxx-mips.c (mips_mach_extends_p): Treat MIPS64 as an extension
+ of MIPS32 and MIPS64r2 as an extension of MIPS32r2.
+
+2005-07-30 David Daney <ddaney@avtrex.com>
+
+ * elflink.c (elf_gc_sweep): Set dynsymcount to correct value.
+
+2005-07-29 David Daney <ddaney@avtrex.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Ignore _gp_disp
+ if it is in the *ABS* section.
+
+2005-07-29 Paul Brook <paul@codesourcery.com>
+
+ * reloc.c: Add BFD_RELOC_ARM_T32_ADD_PC12.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-07-29 Paul Brook <paul@codesourcery.com>
+
+ * reloc.c (BFD_RELOC_ARM_T32_IMM12): Add.
+ * bfd-in2.h: Regeenrate.
+ * libbfd.h: Regenerate.
+
+2005-07-29 Pavel Kankovsky <peak@argo.troja.mff.cuni.cz>
+
+ * peXXigen.c (pe_print_edata): Compute the size of the export
+ table from the size field in the DataDictionary and not the size
+ of the section. Some linkers embed the export table inside a
+ larger section.
+
+2005-07-29 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (struct elf_backend_data): Add action_discarded.
+ (enum action_discarded): Move from..
+ * elflink.c (enum action_discarded): ..here.
+ (_bfd_elf_default_action_discarded): Rename from elf_action_discarded.
+ Remove target specific section checks.
+ (elf_link_input_bfd): Adjust.
+ * elfxx-target.h (elf_backend_action_discarded): Define.
+ (elfNN_bed): Init new field.
+ * bfd-in.h (_bfd_elf_default_action_discarded): Declare.
+ * bfd-in2.h: Regenerate.
+ * elf-hppa.h (elf_hppa_action_discarded): New function.
+ * elf32-hppa.c (elf_backend_action_discarded): Define.
+ * elf64-hppa.c (elf_backend_action_discarded): Define.
+ * elf32-ppc.c (ppc_elf_action_discarded): New function.
+ (elf_backend_action_discarded): Define.
+
+2005-07-27 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (fix_syms): Handle symbols defined in input sections.
+
+2005-07-27 Jan Beulich <jbeulich@novell.com>
+
+ * elf64-x86-64.c (R_X86_64_standard, R_X86_64_vt_offset): New.
+ (elf64_x86_64_info_to_howto): Use them.
+
+2005-07-27 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition
+ regardless of strength of previous definition.
+
+2005-07-26 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_gc_mark_dynamic_ref_symbol): Handle -shared.
+ (bfd_elf_gc_sections): Allow -gc-sections when -shared.
+ * elf32-ppc.c (ppc_elf_gc_sweep_hook): Correct for -shared.
+
+2005-07-26 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_gc_sweep): Move gcc_except_table code..
+ (bfd_elf_gc_sections): ..to here.
+
+2005-07-25 DJ Delorie <dj@redhat.com>
+
+ * reloc.c: Remove unused M32C relocs, add BFD_RELOC_M32C_HI8.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+ * elf32-m32c.c (m32c_elf_howto_table): Add R_M32C_8, R_M32C_LO16,
+ R_M32C_HI8, R_M32C_HI16.
+ (m32c_reloc_map): Likewise.
+ (m32c_elf_relocate_section): Add R_M32C_HI8 and R_M32C_HI16.
+
+2005-07-25 Jan Hubicka <jh@suse.cz>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (_bfd_elf_large_com_section): New.
+ * elf.c (_bfd_elf_large_com_section): New. Defined.
+
+ * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): New.
+ (elf64_x86_64_elf_section_from_bfd_section): New.
+ (elf64_x86_64_symbol_processing): New.
+ (elf64_x86_64_common_definition): New.
+ (elf64_x86_64_common_section_index): New.
+ (elf64_x86_64_common_section): New.
+ (elf64_x86_64_merge_symbol): New.
+ (elf64_x86_64_additional_program_headers): New.
+ (elf64_x86_64_special_sections): New.
+ (elf_backend_section_from_bfd_section): New. Defined.
+ (elf_backend_add_symbol_hook): Likewise.
+ (elf_backend_common_section_index): Likewise.
+ (elf_backend_common_section): Likewise.
+ (elf_backend_common_definition): Likewise.
+ (elf_backend_merge_symbol): Likewise.
+ (elf_backend_special_sections): Likewise.
+ (elf_backend_additional_program_headers): Likewise.
+
+2005-07-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_backend_data): Add common_definition,
+ common_section_index, common_section, and merge_symbol.
+ (_bfd_elf_common_definition): New.
+ (_bfd_elf_common_section_index): New.
+ (_bfd_elf_common_section): New.
+
+ * elf.c (elf_fake_sections): Don't clear sh_flags.
+
+ * elflink.c (_bfd_elf_merge_symbol): Call backend merge_symbol
+ if it is available.
+ (is_global_data_symbol_definition): Call backend
+ common_definition instead of checking SHN_COMMON.
+ (elf_link_add_object_symbols): Likewise.
+ (elf_link_output_extsym): Call backend common_section_index
+ for common section index.
+ (_bfd_elf_common_definition): New.
+ (_bfd_elf_common_section_index): New.
+ (_bfd_elf_common_section): New.
+
+ * elfxx-target.h (elf_backend_common_definition): New.
+ (elf_backend_common_section_index): New.
+ (elf_backend_common_section): New.
+ (elf_backend_merge_symbol): New.
+ (elfNN_bed): Initialize common_definition, common_section_index,
+ common_section, and merge_symbol.
+
+ * section.c (BFD_FAKE_SECTION): New.
+ (STD_SECTION): Use it.
+ * bfd-in2.h: Regenerated.
+
+2005-07-23 Olaf Hering <olh@suse.de>
+
+ * elflink.c (elf_link_input_bfd): Add '\n' for linker einfo
+ callback.
+
+2005-07-21 Ralf Corsepius <ralf.corsepius@rtems.org>
+
+ * config.bfd: Remove i[3-7]86-*-rtemself*.
+ Remove sparc-*-rtemself*.
+
+2005-07-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf32-m32r.c (m32r_elf_check_relocs): Fix pc count for
+ R_M32R_REL32.
+
+2005-07-21 Ben Elliston <bje@gnu.org>
+
+ * Makefile.am (BFD32_BACKENDS): Remove cf-m68klynx.lo.
+ (BFD32_BACKENDS): Likewise, remove m68klynx.lo.
+ (BFD32_BACKENDS_CFILES): Remove cf-m68klynx.c, m68klynx.c.
+ (cf-m68klynx.lo, m68klynx.lo): Remove targets.
+ * Makefile.in: Regenerate.
+ * cf-m68klynx.c: Remove.
+ * m68klynx.c: Likewise.
+ * configure.in (m68klynx_aout_vec): Remove vector.
+ (m68klynx_coff_vec): Likewise.
+ * configure: Regenerate.
+ * targets.c (m68klynx_aout_vec): Remove extern.
+ (m68klynx_coff_vec): Likewise.
+ (_bfd_target_vector): Remove m68klynx_{aout,coff}_vec.
+ * po/SRC-POTFILES.in: Remove cf-m68klynx.c, m68klynx.c.
+
+2005-07-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_REL32.
+ (m32r_reloc_map): Likewise.
+ (m32r_elf_relocate_section): Likewise.
+ (m32r_elf_gc_sweep_hook): Likewise.
+ (m32r_elf_check_relocs): Likewise.
+
+2005-07-18 Nick Clifton <nickc@redhat.com>
+
+ * reloc.c: Add M32C and MS1 relocs.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-07-18 Nick Clifton <nickc@redhat.com>
+
+ * config.bfd: Move m32c entry to correct location.
+ * archures.c: Likewise.
+ * configure.in: Likewise.
+ * configure: Regenerate.
+ * targets.c: Move ms1 vector to correct location.
+
+2005-07-18 Jan Beulich <jbeulich@novell.com>
+
+ * elf32-i386.c (elf_howto_table): Adjust overflow complaint handler
+ for R_386_PC16.
+ * elf64-x86-64.c (x86_64_elf_howto_table): Adjust overflow complaint
+ handler for R_X86_64_PC16, R_X86_64_8, and R_X86_64_DTPOFF.
+
+2005-07-16 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR ld/1021
+ PR ld/1031
+ * elflink.c (elf_link_add_object_symbols): Also append the version
+ name to non-hidden absolute symbols that are functions.
+
+2005-07-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_set_sdata_syms): Return void. Remove hack
+ for zero size sections. Don't set .sbss syms here.
+ * elf32-ppc.h (ppc_elf_set_sdata_syms): Adjust prototype.
+
+2005-07-16 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+
+2005-07-15 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (vsprint_msg): Add prototype.
+ (build_encoding_error_message): Delete. Code moved into....
+ (elf_xtensa_do_reloc): ....here, and changed to give better
+ error messages for out of range literals.
+
+2005-07-15 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (bfd_elf_record_link_assignment): Remove output_bfd param.
+ (_bfd_elf_provide_symbol): Allow redefinition of weak syms and those
+ defined in output sections. Call bfd_elf_record_link_assignment.
+ * bfd-in.h (bfd_elf_record_link_assignment): Update prototype.
+ * bfd-in2.h: Regenerate.
+
+2005-07-14 Jim Blandy <jimb@redhat.com>
+
+ Add support for m32c-*-elf (Renesas m32c and m16c).
+ * Makefile.am (ALL_MACHINES): Add cpu-m32c.lo.
+ (ALL_MACHINES_CFILES): Add cpu-m32c.c.
+ (BFD32_BACKENDS): Add elf32-m32c.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-m32c.c.
+ (cpu-m32c.lo, elf32-m32c.lo): New rules, generated by 'make dep-am'.
+ * Makefile.in: Regenerated.
+ * archures.c (bfd_arch_m32c, bfd_mach_m16c, bfd_mach_m32c): New
+ arch and mach codes.
+ (bfd_m32c_arch): New arch info object.
+ (bfd_archures_list): List bfd_m32c_arch.
+ * bfd-in2.h: Regenerated.
+ * config.bfd: Add case for the m32c.
+ * configure.in: Add case for the m32c.
+ * configure: Regenerated.
+ * cpu-m32c.c, elf32-m32c.c: New files.
+ * libbfd.h: Regenerated.
+ * targets.c (bfd_elf32_m32c_vec): Declare.
+ (_bfd_target_vector): List bfd_elf32_m32c_vec.
+
+2005-07-14 Alan Modra <amodra@bigpond.net.au>
+
+ * bfd-in.h (_bfd_elf_fix_excluded_sec_syms): Declare.
+ (_bfd_elf_provide_section_bound_symbols): Remove param name.
+ Formatting.
+ * bfd-in2.h: Regenerate.
+ * elflink.c (bfd_elf_gc_sections): Don't call generic function.
+ (_bfd_elf_provide_symbol): Formatting.
+ (_bfd_elf_provide_section_bound_symbols): Remove all hacks, just
+ create section relative syms.
+ (fix_syms, _bfd_elf_fix_excluded_sec_syms): New functions.
+ * elf32-ppc.c (ppc_elf_set_sdata_syms): Use
+ _bfd_elf_provide_section_bound_symbols.
+ * reloc.c (bfd_mark_used_section): Delete.
+ (bfd_generic_gc_sections): Don't call the above.
+
+2005-07-14 Paul Woegerer <paul.woegerer@nsc.com>
+
+ PR 1063
+ * cache.c (bfd_last_cache): Initialise to NULL.
+
+2005-07-14 Daniel Marques <marques@cs.cornell.edu>
+ Nick Clifton <nickc@redhat.com>
+
+ * coff-alpha.c (alpha_ecoff_bad_format_hook): Detect compressed
+ Alpha binaries and issue a helpful error message.
+ (alpha_ecoff_swap_reloc_out): Increase maximum allowed internal
+ symbol index to 15 to allow for binaries produced by DEC
+ compilers.
+
+2005-07-13 Steve Ellcey <sje@cup.hp.com>
+
+ * bfd.m4 (BFD_NEED_DECLARATION): Remove.
+
+2005-07-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Don't use a plt stub
+ when !can_plt_call.
+
+2005-07-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-xtensa.c (bfd_elf_xtensa_reloc): Warning fix.
+
+2005-07-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_set_sdata_syms): Correct __sbss_start value.
+
+2005-07-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_symbol_refs_local_p): Revert the last
+ change.
+
+2005-07-08 Paul Koning <pkoning@equallogic.com>
+
+ * dwarf2.c (read_address): Check sign_extend_vma to handle targets
+ where addresses are sign extended.
+
+2005-07-08 Ralf Corsepius <ralf.corsepius@rtems.org>
+
+ * config.bfd: Mark i960-*-rtems*, or32-*-rtems* as obsolete.
+ Mark a29k-*rtems*, hppa*-*-rtems*, *-go32-rtems*,
+ i[3-7]86*-*-rtemscoff*, mips*el-*-rtems*, powerpcle-*-rtems*,
+ sparc*-*-rtemsaout* as removed
+
+2005-07-08 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-hppa.h (elf_hppa_final_link): Use gp val of zero when none
+ of the usual sections are found.
+ * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Tidy.
+ Strip .dynbss if it is zero size.
+ * elf32-arm.c (elf32_arm_size_dynamic_sections): Likewise.
+ * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
+ * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
+ * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise, and
+ .dynsbss.
+ (i370_elf_finish_dynamic_sections): Don't attempt to write .got
+ when it is zero size.
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Correct handling
+ of .dynbss and zero size sections.
+ * elf32-m32r.c (m32r_elf_size_dynamic_sections): Strip .dynbss if
+ it is zero size.
+ * elf32-m68k.c (elf_m68k_size_dynamic_sections): Tidy. Strip
+ .dynbss if zero size.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise, .dynsbss
+ too.
+ * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
+ * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
+ * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
+ * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Tidy. Strip
+ .plt.* and .got.plt.* if zero size.
+ * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Tidy. Strip
+ .got* and .dynbss if zero size.
+ * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Tidy. Strip
+ * elf64-ppc.c (create_linkage_sections): Create branch lookup table
+ in .data.rel.ro.brlt or .rodata.brlt, and similarly for associated
+ reloc section.
+ (create_got_section): Always create new .got and .rela.got sections.
+ (ppc64_elf_size_dynamic_sections): Tidy. Strip .dynbss if zero size.
+ * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Handle
+ dynamic bss sections correctly.
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Tidy.
+ * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Tidy. Strip
+ .dynbss if zero size.
+
+2005-07-08 Ben Elliston <bje@au.ibm.com>
+
+ * elf32-xtensa.c: Include <stdarg.h> unconditionally, not only
+ when ANSI_PROTOTYPES is defined. Remove #ifdef logic.
+
+2005-07-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_backend_data): Add special_sections.
+
+ * elf.c (_bfd_elf_get_sec_type_attr): Check special_sections
+ first.
+
+ * elf32-arm.c (elf_backend_get_sec_type_attr): Removed.
+ (elf_backend_special_sections): New. Defined.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68hc11.c: Likewise.
+ * elf32-m68hc12.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-sh64.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elfxx-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-mips.h: Likewise.
+
+ * elfxx-target.h (elf_backend_special_sections): New.
+ (elfNN_bed): Initialize special_sections.
+
+2005-07-07 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-modules.c: Update tables with Xtensa MMU features.
+
+2005-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * elf32-xtensa.c (vsprint_msg): Add format attribute. Fix
+ format bugs.
+ * vms.h (_bfd_vms_debug): Add format attribute.
+ (_bfd_vms_debug, _bfd_hexdump): Fix typos.
+
+2005-07-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 975
+ * elflink.c (_bfd_elf_symbol_refs_local_p): Only undefined
+ symbol with default visibility is local.
+
+2005-07-07 Ben Elliston <bje@gnu.org>
+
+ * config.bfd: Mark m68*-*-rtemscoff as obsolete.
+
+2005-07-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * dwarf2.c (varinfo): Add addr.
+ (lookup_symbol_in_variable_table): Also check addr.
+ (scan_unit_for_symbols): Set addr for variable.
+ (comp_unit_find_line): Updated.
+
+2005-07-06 Nick Clifton <nickc@redhat.com>
+
+ * coff-alpha.c (alpha_adjust_reloc_in): Issue an informative error
+ message if an unknown reloc is encountered.
+ (alpha_relocate_section): Likewise.
+
+ * ecoff.c (_bfd_ecoff_write_object_contents): Cope with a reloc
+ with a missing howto field.
+
+2005-07-06 Alan Modra <amodra@bigpond.net.au>
+
+ * po/SRC-POTFILES.in: Add cpu-ms1.c, elf32-ms1.c, elf-vxworks.c,
+ elfxx-sparc.c.
+
+2005-07-05 Paul Brook <paul@codesourcery.com>
+
+ * elf32-ppc.c (ppc_elf_vxworks_special_sections): Remove.
+ (ppc_elf_vxworks_get_sec_type_attr): New function.
+ (elf_backend_special_sections): Remove vxwords definition.
+ (elf_backend_get_sec_type_attr): Define for vxworks.
+
+2005-07-05 Nick Clifton <nickc@redhat.com>
+
+ * elf64-ppc.c (ppc64_elf_info_to_howto): Fix typo.
+
+2005-07-05 Paul Brook <paul@codesourcery.com>
+
+ * config.bfd: Add separate case for ppc-vxworks.
+ * configure: Regenerate.
+ * configure.in: Include elf-vxworks.lo on ppc targets.
+ * elf-vxworks.c (elf_vxworks_final_write_processing): Handle
+ .rela.plt.unloaded.
+ * elf32-ppc.c: Add VxWorks target vec. Include elf-vxworks.h.
+ (PLT_ENTRY_SIZE, PLT_INITIAL_ENTRY_SIZE, PLT_SLOT_SIZE): Remove.
+ (VXWORKS_PLT_ENTRY_SIZE, ppc_elf_vxworks_plt_entry,
+ ppc_elf_vxworks_pic_plt_entry, VXWORKS_PLT_INITIAL_ENTRY_SIZE,
+ ppc_elf_vxworks_plt0_entry, ppc_elf_vxworks_pic_plt0_entry,
+ VXWORKS_PLT_NON_JMP_SLOT_RELOCS, VXWORKS_PLTRESOLVE_RELOCS,
+ VXWORKS_PLTRESOLVE_RELOCS_SHLIB): New.
+ (ppc_elf_link_hash_table): Add srelplt2, sgotplt, hgot, hplt,
+ is_vxworks, plt_entry_size, plt_slot_size, plt_initial_entry_size.
+ (ppc_elf_link_hash_table_create): Initialize hadtab plt fields.
+ (ppc_elf_create_got): Create .got.plt for VxWorks.
+ (ppc_elf_create_dynamic_sections): Create unloaded plt relocation
+ section for VxWorks.
+ (ppc_elf_select_plt_layout): Handle VxWorks plt format.
+ (allocate_got): VxWorks does not need a got header.
+ (allocate_dynrelocs): Handle VxWorks plt format.
+ (ppc_elf_size_dynamic_sections): Save _G_O_T_ and _P_L_T_ symbols for
+ VxWorks. Handle VxWorks plt/got.
+ (ppc_elf_finish_dynamic_sections): Fill in VxWorks plt.
+ (ppc_elf_vxworks_special_sections): New.
+ (ppc_elf_vxworks_link_hash_table_create,
+ ppc_elf_vxworks_add_symbol_hook,
+ elf_i386_vxworks_link_output_symbol_hook,
+ ppc_elf_vxworks_final_write_processing): New functions.
+ * targets.c (bfd_elf32_powerpc_vxworks_vec): Declare.
+ (_bfd_target_vector): Use it.
+
+2005-07-05 Jakub Jelinek <jakub@redhat.com>
+
+ * libbfd-in.h (struct artdata): Add extended_names_size field.
+ * libbfd.h: Rebuilt.
+ * coff-rs600.c (_bfd_xcoff_archive_p): Don't clear fields in freshly
+ allocated object by bfd_zalloc.
+ * coff64-rs6000.c (xcoff64_archive_p): Likewise.
+ * ecoff.c (_bfd_ecoff_archive_p): Likewise.
+ * archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p): Likewise.
+ (get_extended_arelt_filename): Fail if index is bigger or equal to
+ extended_names_size.
+ (_bfd_generic_read_ar_hdr_mag): Don't set bfd_error_malformed_archive,
+ get_extended_arelt_filename already did that.
+ (_bfd_slurp_extended_name_table): Initialize extended_names_size field.
+ Allocate one extra byte and clear it, in case extended names table
+ is not terminated.
+
+ * libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2, bfd_alloc2,
+ bfd_zalloc2): New prototypes.
+ * bfd-in.h (HALF_BFD_SIZE_TYPE): Define.
+ * libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): New functions.
+ * opncls.c (bfd_alloc2, bfd_zalloc2): New functions.
+ * elf.c (bfd_elf_get_elf_syms, setup_group, assign_section_numbers,
+ elf_map_symbols, map_sections_to_segments,
+ assign_file_positions_for_segments, copy_private_bfd_data,
+ swap_out_syms, _bfd_elf_slurp_version_tables): Use bfd_*alloc2
+ where appropriate.
+ * bfd-in2.h: Rebuilt.
+ * libbfd.h: Rebuilt.
+
+ * elf.c (_bfd_elf_print_private_bfd_data): Don't crash on bogus
+ verdef or verneed section.
+ (_bfd_elf_slurp_version_tables): Handle corrupt verdef and/or
+ verneed sections gracefully.
+ * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto_ptr): Don't crash on
+ bogus relocation values.
+ * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
+ * elf64-s390.c (elf_s390_info_to_howto): Likewise.
+ * elf32-s390.c (elf_s390_info_to_howto): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_info_to_howto): Likewise.
+ * elfxx-ia64.c (lookup_howto): Likewise.
+
+ * elf.c (bfd_elf_get_str_section): Allocate an extra byte after
+ the end of strtab and clear it.
+ (elf_read): Remove.
+
+2005-07-05 Nick Clifton <nickc@redhat.com>
+
+ * po/vi.po: New Vietnamese translation.
+ * configure.in (ALL_LINGUAS): Add vi.
+ * configure: Regenerate.
+
+2005-07-05 Peter S. Mazinger <ps.m@gmx.net>
+
+ * elf32-arm.c (elf32_arm_size_dynamic_sections): Fix a typo and
+ touchup logic like i386/ppc.
+
+2005-07-05 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (special_sections): Move const qualifier.
+ (special_sections_b..special_sections_t): Likewise.
+ * elf32-arm.c (elf32_arm_symbian_get_sec_type_attr): Remove duplicate
+ const.
+ (elf32_arm_symbian_special_sections): Move const qualifier.
+ * elf32-m32r.c: Similarly.
+ * elf32-m68hc11.c: Similarly.
+ * elf32-m68hc12.c: Similarly.
+ * elf32-mcore.c: Similarly.
+ * elf32-ppc.c: Similarly.
+ * elf32-sh64.c: Similarly.
+ * elf32-v850.c: Similarly.
+ * elf32-xtensa.c: Similarly.
+ * elf64-alpha.c: Similarly.
+ * elf64-hppa.c: Similarly.
+ * elf64-ppc.c: Similarly.
+ * elf64-sh64.c: Similarly.
+ * elfxx-ia64.c: Similarly.
+ * elfxx-mips.c: Similarly.
+
+2005-07-04 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf32-m32r.c (m32r_elf_size_dynamic_sections): Use
+ info->executable instead of !info->shared where appropriate.
+
+2005-07-04 Alan Modra <amodra@bigpond.net.au>
+
+ PR 1042
+ * elf.c (assign_file_positions_for_segments): Remove excluded
+ sections from the segment map.
+
+2005-07-04 Alan Modra <amodra@bigpond.net.au>
+
+ PR 1004
+ * elf-bfd.h (struct elf_backend_data): Add get_sec_type_attr. Delete
+ special_sections.
+ (_bfd_elf_get_special_section): Declare.
+ (bfd_elf_special_section): Update prototype.
+ * elf.c (special_sections): Remove unused outer entries.
+ (get_special_section): Delete.
+ (_bfd_elf_get_special_section): New function.
+ (_bfd_elf_get_sec_type_attr): Replace "name" arg with "sec". Update
+ special_sections indexing.
+ (_bfd_elf_new_section_hook): Call backend get_sec_type_attr.
+ * elf32-arm.c (symbian_special_sections_d): Delete.
+ (symbian_special_sections_g, symbian_special_sections_h): Delete.
+ (symbian_special_sections_i, symbian_special_sections_f): Delete.
+ (symbian_special_sections_p): Delete.
+ (elf32_arm_symbian_special_sections): Merge above to here.
+ (elf32_arm_symbian_get_sec_type_attr): New function.
+ (elf_backend_special_sections): Don't define.
+ (elf_backend_get_sec_type_attr): Define.
+ * elf32-m32r.c: Similarly to elf32-arm.c.
+ * elf32-m68hc11.c: Likewise.
+ * elf32-m68hc12.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-sh64.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elfxx-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ (bfd_elf_special_section ppc_alt_plt): New. Use it if .plt loadable.
+ * elfxx-mips.h (_bfd_mips_elf_get_sec_type_attr): Declare.
+ (_bfd_mips_elf_special_sections, elf_backend_special_sections): Delete.
+ (elf_backend_get_sec_type_attr): Define.
+ * elfxx-target.h (elf_backend_get_sec_type_attr): Define.
+ (elf_backend_special_sections): Don't define.
+ (elfNN_bed): Update.
+
+2005-07-01 Nick Clifton <nickc@redhat.com>
+
+ * cpu-d10v.c: Update to ISO C90 style function declarations and
+ fix formatting.
+ * cpu-d30v.c: Likewsie.
+ * cpu-i370.c: Likewsie.
+ * cpu-xstormy16.c: Likewsie.
+ * elf32-arc.c: Likewsie.
+ * elf32-d10v.c: Likewsie.
+ * elf32-d30v.c: Likewsie.
+ * elf32-dlx.c: Likewsie.
+ * elf32-i370.c: Likewsie.
+ * elf32-i960.c: Likewsie.
+ * elf32-ip2k.c: Likewsie.
+ * elf32-m32r.c: Likewsie.
+ * elf32-mcore.c: Likewsie.
+ * elf32-openrisc.c: Likewsie.
+ * elf32-or32.c: Likewsie.
+ * elf32-pj.c: Likewsie.
+ * elf32-v850.c: Likewsie.
+ * elf32-xstormy16.c: Likewsie.
+
+2005-07-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-alpha.c (elf64_alpha_create_got_section): Always create
+ a new .got section.
+ (elf64_alpha_create_dynamic_sections): Always make new sections
+ by using bfd_make_section_anyway_with_flags. Check that .got not
+ already created.
+ (elf64_alpha_check_relocs): Delete "got_created". Use tdata->gotobj
+ instead.
+
+2005-06-30 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Ignore dynamic
+ _SDA_BASE_ and _SDA2_BASE_ symbols.
+ * elflink.c (_bfd_elf_provide_symbol): Correct comment. Define
+ sym if not def_regular.
+ (_bfd_elf_provide_section_bound_symbols): Similarly.
+
+2005-06-30 Ben Elliston <bje@gnu.org>
+
+ * config.bfd: Mark as obsolete:
+ m68*-apollo-*
+ m68*-apple-aux*
+ m68*-bull-sysv*
+
+2005-06-29 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (_bfd_elf_gc_mark): Mark sections referenced by
+ .eh_frame specially..
+ (bfd_elf_gc_sections): ..rather than totally ignoring .eh_frame.
+ Don't recheck sections we have already marked.
+ (elf_gc_sweep): Keep non-code sections referenced from .eh_frame.
+ * section.c (struct bfd_section): Add gc_mark_from_eh.
+ (STD_SECTION): Adjust.
+ * ecoff.c (bfd_debug_section): Adjust.
+ * bfd-in2.h: Regenerate.
+
+2005-06-29 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_gc_sweep): Do not refcount on sections that have
+ not been processed by check_relocs.
+
+2005-06-29 Paul Brook <paul@codesourcery.com>
+
+ * bfd-in.h (_bfd_elf_provide_symbol): Update prototype.
+ * bfd-in2.h: Regenerate.
+ * elf32-ppc.c (ppc_elf_set_sdata_syms): Make sdata symbols section
+ relative.
+ * elflink.c (bfd_elf_set_symbol): Add section argument.
+ (_bfd_elf_provide_symbol): Ditto.
+ (_bfd_elf_provide_section_bound_symbols): Pass NULL section argument.
+
+2005-06-27 Carlos O'Donell <carlos@systemhalted.org>
+
+ * elf32-hppa.c (struct elf32_hppa_stub_hash_entry):
+ Use bh_root, and hh.
+ (struct elf32_hppa_link_hash_entry): Use eh, and hsh_cache.
+ (struct elf32_hppa_dyn_reloc_entry): Use hdh_next.
+ (struct elf32_hppa_link_hash_table): Use etab and bstab.
+ (stub_hash_newfunc): Use hh.
+ (hppa_link_hash_newfunc): Use hsh_cache.
+ (elf32_hppa_link_hash_table_create): Use etab, and bstab.
+ (elf32_hppa_link_hash_table_free): Use bstab.
+ (hppa_stub_name): Use eh.
+ (hppa_get_stub_entry): Use hh, hsh_entry, and hsh_cache.
+ (hppa_add_stub): Use bstab.
+ (hppa_type_of_stub): Use eh.
+ (hppa_build_one_stub): Use hh and bh_root.
+ (elf32_hppa_copy_indirect_symbol): Use hdh_next.
+ (elf32_hppa_check_relocs): Use eh, etab, and hdh_next.
+ (elf32_hppa_gc_sweep_hook): Use hdh_next.
+ (elf32_hppa_adjust_dynamic_symbol): Use hdh_next, and etab.
+ (allocate_plt_static): Use etab.
+ (allocate_dynrelocs): Use etab, and hdh_next.
+ (readonly_dynrelocs): Use hdh_next.
+ (elf32_hppa_size_dynamic_sections): Use etab, and hdh_next.
+ (get_local_syms): Use eh, bstab, and hh.
+ (elf32_hppa_size_stubs): Use eh, bstab, and hh.
+ (elf32_hppa_set_gp): Use etab.
+ (elf32_hppa_build_stubs): Use bstab.
+ (final_link_relocate): Use eh, bh_root.
+ (elf32_hppa_relocate_section): Use elf, etab.
+ (elf32_hppa_finish_dynamic_sections): Use etab.
+
+2005-06-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): Remove
+ the extra `;'.
+
+2005-06-21 Carlos O'Donell <carlos@systemhalted.org>
+
+ * elf32-hppa.c (hppa_elf_hash_entry): Define.
+ (hppa_stub_hash_entry): Define.
+ (stub_hash_newfunc): Rename variables.
+ (hppa_link_hash_newfunc): Likewise.
+ (elf32_hppa_link_hash_table_free): Likewise.
+ (hppa_stub_name): Likewise.
+ (hppa_get_stub_entry): Likewise.
+ (hppa_add_stub): Likewise.
+ (hppa_type_of_stub): Likewise.
+ (hppa_build_one_stub): Likewise.
+ (hppa_size_one_stub): Likewise.
+ (elf32_hppa_create_dynamic_sections): Likewise.
+ (elf32_hppa_copy_indirect_symbol): Likewise.
+ (elf32_hppa_check_relocs): Likewise.
+ (elf32_hppa_gc_mark_hook): Likewise.
+ (elf32_hppa_gc_sweep_hook): Likewise.
+ (elf32_hppa_grok_psinfo): Likewise.
+ (elf32_hppa_hide_symbol): Likewise.
+ (elf32_hppa_adjust_dynamic_symbol): Likewise.
+ (allocate_dynrelocs): Likewise.
+ (clobber_millicode_symbols): Likewise.
+ (readonly_dynrelocs): Likewise.
+ (elf32_hppa_size_dynamic_sections): Likewise.
+ (get_local_syms): Likewise.
+ (elf32_hppa_size_stubs): Likewise.
+ (hppa_record_segment_addr): Likewise.
+ (final_link_relocate): Likewise.
+ (elf32_hppa_relocate_section): Likewise.
+ (elf32_hppa_finish_dynamic_symbol): Likewise.
+
+2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 1025
+ * elf-m10300.c (mn10300_elf_check_relocs): Handle indirect
+ symbol.
+ * elf32-arm.c (elf32_arm_check_relocs): Likewise.
+ * elf32-avr.c (elf32_avr_check_relocs): Likewise.
+ * elf32-cris.c (cris_elf_check_relocs): Likewise.
+ * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
+ * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
+ * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
+ * elf32-frv.c (elf32_frv_check_relocs): Likewise.
+ * elf32-i370.c (i370_elf_check_relocs): Likewise.
+ * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
+ * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
+ * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+ * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
+ * elf32-ms1.c (ms1_elf_check_relocs): Likewise.
+ * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
+ * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
+ * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
+ * elf32-s390.c (elf_s390_check_relocs): Likewise.
+ * elf32-sh.c (sh_elf_check_relocs): Likewise.
+ * elf32-v850.c (v850_elf_check_relocs): Likewise.
+ * elf32-vax.c (elf_vax_check_relocs): Likewise.
+ * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
+ * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
+ * elf64-s390.c (elf_s390_check_relocs): Likewise.
+ * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
+
+2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 1022
+ * elf32-hppa.c (elf32_hppa_check_relocs): Handle indirect
+ symbol.
+
+2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 1025
+ * elf32-i386.c (elf_i386_check_relocs): Handle indirect symbol.
+ * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
+
+2005-06-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * reloc.c: Add BFD_RELOC_X86_64_GOTOFF64 and
+ BFD_RELOC_X86_64_GOTPC32.
+ * bfd-in2.h: Regenerated.
+
+2005-06-17 Jakub Jelinek <jakub@redhat.com>
+
+ * elf.c (bfd_section_from_shdr): Kill bogus warning.
+
+ * elf.c (bfd_section_from_shdr): Fail if sh_entsize is bogus for
+ symbol, relocation, group or versym sections.
+
+ * coffcode.h (coff_slurp_reloc_table): Don't crash if native_relocs
+ is NULL.
+ * peXXigen.c (pe_print_idata): Don't crash if dll_name or start_address
+ doesn't point into the section.
+
+2005-06-17 Jan Beulich <jbeulich@novell.com>
+
+ * bfd-in2.h (elf_x86_64_reloc_type): Add BFD_RELOC_X86_64_GOTOFF64
+ and BFD_RELOC_X86_64_GOTPC32.
+ * libbfd.h (bfd_reloc_code_real_names): Likewise.
+ * elf64-x86-64.c (x86_64_elf_howto_table): Add entries for
+ R_X86_64_PC64, R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
+ (x86_64_reloc_map): Add entries for R_X86_64_PC64, R_X86_64_GOTOFF64,
+ and R_X86_64_GOTPC32.
+ (elf64_x86_64_info_to_howto): Adjust bounding relocation type.
+ (elf64_x86_64_check_relocs): Also handle R_X86_64_PC64,
+ R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
+ (elf64_x86_64_relocate_section): Likewise.
+ (elf64_x86_64_gc_sweep_hook): Also handle R_X86_64_PC64.
+
+2005-06-15 Mark Kettenis <kettenis@gnu.org>
+
+ * archive.c: Include "libiberty.h".
+
+2005-06-15 Nick Clifton <nickc@redhat.com>
+
+ * elf32-v850.c (ELF_MACHINE_ALT2): Define so that binaries
+ produced by the GreenHills toolchain can be assimilated.
+
+2005-06-14 Steve Ellcey <sje@cup.hp.com>
+
+ * som.c (som_find_inliner_info): New.
+
+2005-06-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_merge_symbol): Fix a typo in comment.
+
+2005-06-14 Jakub Jelinek <jakub@redhat.com>
+
+ * elf.c (bfd_section_from_shdr): Fail if name is NULL.
+ Prevent endless recursion on broken objects.
+
+ * archive.c (do_slurp_coff_armap): Check for overflows.
+
+2005-06-10 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elfcode.h (elf_write_relocs): Do nothing if there are no
+ relocations.
+
+2005-06-10 Alan Modra <amodra@bigpond.net.au>
+
+ * dwarf2.c (decode_line_info): Revert last change. Instead set
+ initial low_pc to -1 to avoid need to test whether loc_pc has
+ been set.
+
+2005-06-09 Christopher Faylor <cgf@timesys.com>
+
+ * coffcode.h (sec_to_styp_flags): Set appropriate section flags when
+ either SEC_ALLOC OR SEC_LOAD.
+
+2005-06-09 Christopher Faylor <cgf@timesys.com>
+
+ * coffcode.h (sec_to_styp_flags): Remove read/write flags from noload
+ section header. Do not add STYP_NOLOAD since it does not appear to be
+ a valid PE flag.
+
+2005-06-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 1000
+ * dwarf2.c (lookup_address_in_line_info_table): Restore code
+ handling NULL function info, removed with 2005-04-03 change.
+
+2005-06-08 Mark Mitchell <mark@codesourcery.com>
+
+ * opncls.c (bfd_fopen): Mark returned BFD as cacheable if FD == -1.
+
+2005-06-09 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_mark_used_section): Delete.
+ (bfd_elf_gc_sections): Call bfd_generic_gc_sections.
+ * reloc.c (bfd_mark_used_section): New function.
+ (bfd_generic_gc_sections): Call bfd_mark_used_section.
+
+2005-06-08 Alan Modra <amodra@bigpond.net.au>
+
+ * opncls.c (bfd_fopen): Don't set bfd_error unconditionally.
+ (bfd_fdopenr): Same.
+
+2005-06-07 Mark Mitchell <mark@codesourcery.com>
+
+ * opncls.c (bfd_fdopenr): Add missing break statements.
+
+2005-06-07 Mark Mitchell <mark@codesourcery.com>
+
+ * opncls.c (bfd_fopen): New API.
+ (bfd_openr): Use it.
+ (bfd_fdopenr): Likewise.
+ * bfd-in2.h: Regenerated.
+
+2005-06-07 Aldy Hernandez <aldyh@redhat.com>
+ Michael Snyder <msnyder@redhat.com>
+ Stan Cox <scox@redhat.com>
+
+ * Makefile.am (ALL_MACHINES): Add ms1 support.
+ (ALL_MACHINES_CFILES): Same.
+ (BFD32_BACKENDS): Same.
+ (BFD32_BACKENDS_CFILES): Same.
+
+ * Makefile.in: Regenerate.
+
+ * archures.c (bfd_architecture): Add ms1 entries.
+ Externalize bfd_ms1_arch.
+ (bfd_archures_list): Add bfd_ms1_arch.
+
+ * bfd-in2.h: Regenerate.
+
+ * cpu-ms1.c: New file.
+
+ * elf32-ms1.c: New file.
+
+ * targets.c: Define extern of bfd_elf32_ms1_vec.
+ Add bfd_elf32_ms1_vec to _bfd_target_vector.
+
+ * configure.in: Add bfd_elf32_ms1_vec case.
+
+ * configure: Regenerate.
+
+ * config.bfd: Add ms1-*-elf to table.
+
+2005-06-07 Zack Weinberg <zack@codesourcery.com>
+
+ * coff-i386.c: Change md_apply_fix3 to md_apply_fix in comment.
+
+2005-06-07 Alan Modra <amodra@bigpond.net.au>
+
+ * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Init _bfd_find_line.
+ * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
+
+2005-06-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 990
+ * bfd.c (bfd_find_line): New.
+
+ * dwarf2.c (comp_unit): Add variable_table.
+ (funcinfo): Add file, line, and sec.
+ (varinfo): New.
+ (lookup_symbol_in_function_table): New.
+ (lookup_symbol_in_variable_table): New.
+ (scan_unit_for_functions): Renamed to ...
+ (scan_unit_for_symbols): This. Handle DW_TAG_entry_point and
+ DW_TAG_variable.
+ (comp_unit_find_nearest_line): Updated.
+ (comp_unit_find_line): New.
+ (_bfd_dwarf2_find_line): New.
+
+ * elf-bfd.h (_bfd_elf_find_line): New.
+ (_bfd_generic_find_line): New. Defined.
+
+ * elf.c (_bfd_elf_find_line): New.
+
+ * libbfd-in.h (_bfd_dwarf2_find_line): New.
+ (_bfd_generic_find_line): New.
+
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
+ * libbfd.c (_bfd_generic_find_line): New.
+
+ * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize _bfd_find_line
+ with _bfd_generic_find_line.
+ (bfd_target): Add _bfd_find_line.
+
+2005-06-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * dwarf2.c (decode_line_info): Properly set low_pc.
+
+2005-06-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-pcc.c (ppc64_elf_gc_mark_hook): For the local sym in .opd
+ case, include addend when indexing .opd section map.
+ (ppc64_elf_edit_opd): Add no_opd_opt param. Do nothing besides
+ clear opd_adjust array if no_opd_opt set. Tidy code.
+ Ignore zero size .opd. Check bfd_alloc return value.
+ (ppc_stub_name): Return immediately on bfd_malloc fail.
+ * elf64-ppc.h (ppc64_elf_edit_opd): Update prototype.
+
+2005-06-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * dwarf2.c (comp_unit): Fix a typo in comment.
+
+2005-06-03 Jan-Benedict Glaw <jbglaw@lug-owl.de>
+
+ * elf32-vax.c (rtype_to_howto): Remove PARAMS.
+ (reloc_type_lookup): Dito.
+ (elf_vax_discard_copies): Dito.
+ (elf_vax_instantiate_got_entries): Dito.
+ (elf_vax_link_hash_traverse): Dito.
+ (elf_vax_link_hash_newfunc): Dito.
+ (elf_vax_link_hash_table_create): Dito.
+ (elf32_vax_set_private_flags): Dito.
+ (elf32_vax_merge_private_bfd_data): Dito.
+ (elf32_vax_print_private_bfd_data): Dito.
+ (elf_vax_check_relocs): Dito.
+ (elf_vax_gc_mark_hook): Dito.
+ (elf_vax_gc_sweep_hook): Dito.
+ (elf_vax_size_dynamic_sections): Dito.
+ (elf_vax_discard_copies): Dito.
+ (elf_vax_instantiate_got_entries): Dito.
+ (elf_vax_relocate_section): Dito.
+ (elf_vax_finish_dynamic_symbol): Dito.
+ (elf_vax_finish_dynamic_sections): Dito.
+ (elf_vax_hash_table): Break-up of line isn't needed.
+ (elf_vax_check_relocs): Remove leading whitespace
+ (elf_vax_relocate_section): Remove redundant whitespace
+ (elf_vax_link_hash_newfunc): Don't cast NULL.
+ (elf_vax_link_hash_table_create): Dito.
+ * cpu-vax.c (bfd_vax_arch) Remove a trailing space.
+
+2005-06-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR 568
+ * configure.in: Bump version
+ * configure: Regenerate.
+ * elflink.c (elf_link_input_bfd): Use einfo linker callback to print
+ discarded section sym refs and kill linker output.
+ * simple.c (simple_dummy_einfo): New function.
+ (bfd_simple_get_relocated_section_contents): Init callbacks.einfo.
+
+ * elf32-i386.c (elf_i386_relocate_section): Handle zero symndx
+ for all reloc types.
+
+2005-06-02 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (add_symbol_adjust): Set sym visibility to most
+ restrictive of func code and func descr for undefined syms as well
+ as defined.
+
+2005-05-31 Jim Blandy <jimb@redhat.com>
+
+ * Makefile.am: Regenerate dependencies with 'make dep-am'.
+ * Makefile.in: Regenerate.
+
+2005-05-31 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_JSRDIRECT): New.
+ (ALPHA_ELF_LINK_HASH_TLS_IE): Renumber to 0x80.
+ (ALPHA_ELF_LINK_HASH_LU_PLT): Rename from ALPHA_ELF_LINK_HASH_LU_FUNC.
+ (elf64_alpha_want_plt): Update to match.
+ (elf64_alpha_check_relocs): Collect JSRDIRECT in gotent_flags.
+ (elf64_alpha_relax_with_lituse): Likewise. Handle JSRDIRECT.
+
+2005-05-31 Zack Weinberg <zack@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_reloc_type_lookup)
+ (elf32_arm_nabi_grok_prstatus, elf32_arm_nabi_grok_psinfo):
+ Use ISO C90 function declaration style.
+
+2005-05-31 James E Wilson <wilson@specifixinc.com>
+
+ * elfcode.h (NAME(bfd_elf,bfd_from_remote_memory)): Check for program
+ header PF_R flag on PT_LOAD segments.
+
+2005-05-30 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relocate_section): Use dtp_base for
+ the zero index relocs produced by elf64_alpha_relax_tls_get_addr.
+
+2005-05-29 Richard Henderson <rth@redhat.com>
+
+ * configure.in (--enable-secureplt): New.
+ * elf64-alpha.c (INSN_LDA, INSN_LDAH, INSN_LDQ, INSN_BR): New.
+ (INSN_SUBQ, INSN_S4SUBQ, INSN_JMP): New.
+ (INSN_A, INSN_AB, INSN_ABC, INSN_ABO, INSN_AD): New.
+ (elf64_alpha_use_secureplt): New.
+ (OLD_PLT_HEADER_SIZE, OLD_PLT_ENTRY_SIZE): New.
+ (NEW_PLT_HEADER_SIZE, NEW_PLT_ENTRY_SIZE): New.
+ (PLT_HEADER_SIZE, PLT_ENTRY_SIZE): Conditionalize on secureplt.
+ (ALPHA_ELF_LINK_HASH_PLT_LOC): Remove.
+ (struct alpha_elf_link_hash_entry): Add plt_offset.
+ (PLT_HEADER_WORD1, PLT_HEADER_WORD2, PLT_HEADER_WORD3): Remove.
+ (PLT_HEADER_WORD4, PLT_ENTRY_WORD1, PLT_ENTRY_WORD2): Remove.
+ (PLT_ENTRY_WORD3): Remove.
+ (elf64_alpha_create_dynamic_sections): If secureplt, set SEC_READONLY
+ on .plt and create .got.plt.
+ (elf64_alpha_output_extsym): Remove .plt frobbing for symbol values.
+ (get_got_entry): Initialize plt_offset.
+ (elf64_alpha_want_plt): New.
+ (elf64_alpha_check_relocs): Use it.
+ (elf64_alpha_adjust_dynamic_symbol): Likewise. Don't allocate
+ plt entries here.
+ (elf64_alpha_calc_got_offsets_for_symbol): Don't report internal
+ error as user error.
+ (elf64_alpha_size_plt_section_1): Allocate one plt entry per
+ got subsection.
+ (elf64_alpha_size_plt_section): Size .got.plt section.
+ (elf64_alpha_size_rela_got_1): Don't allocate relocations if
+ plt entries used.
+ (elf64_alpha_size_dynamic_sections): Call elf64_alpha_size_plt_section.
+ Add PLTRO DYNAMIC entry.
+ (elf64_alpha_finish_dynamic_symbol): Generate secureplt format.
+ (elf64_alpha_finish_dynamic_sections): Likewise.
+
+2005-05-28 David Daney <ddaney@avtrex.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Move
+ calculation of DT_RELSZ to occur after all dynamic relocations
+ are created.
+
+2005-05-28 Eli Zaretskii <eliz@gnu.org>
+
+ * configure.in: Add snprintf and vsnprintf to AC_CHECK_DECLS.
+ * config.in, configure: Regenerate.
+
+2005-05-26 Mark Kettenis <kettenis@gnu.org>
+ Maciej W. Rozycki <macro@linux-mips.org>
+
+ * elfxx-mips.c (_bfd_mips_elf_section_processing): Warn and
+ stop processing of options if one of invalid size is
+ encountered.
+ (_bfd_mips_elf_section_from_shdr): Likewise.
+ (_bfd_mips_elf_fake_sections): Reset the type of empty special
+ sections.
+
+2005-05-26 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (struct alpha_elf_link_hash_entry): Remove
+ plt_old_section, plt_old_value.
+ (elf64_alpha_adjust_dynamic_symbol): Don't set it.
+ (elf64_alpha_size_plt_section_1): Don't use it.
+
+2005-05-26 Jakub Jelinek <jakub@redhat.com>
+
+ * elfcode.h (elf_object_p): Fail if e_shoff != 0, e_shnum == 0 and
+ first shdr has sh_size == 0. Fail if e_shnum is large to cause
+ arithmetic overflow when allocating the i_shdr array.
+ Sanity check sh_link and sh_info fields. Fix e_shstrndx sanity check.
+
+2005-05-25 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c: Update all function definitions to ISO C. Remove
+ all function prototypes; rearrange functions into def-use order.
+
+2005-05-25 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_merge_gots): Fix gotent iteration
+ in the presence of deleting elements.
+ (elf64_alpha_size_got_sections): Zero dead got section size.
+
+2005-05-23 Fred Fish <fnf@specifixinc.com>
+
+ * dwarf2.c (struct dwarf2_debug): Add inliner_chain member.
+ (struct funcinfo): Add caller_func, caller_file, caller_line.
+ tag, and nesting_level members.
+ (lookup_address_in_function_table): Change first passed parameter
+ from "struct funcinfo *" to "struct comp_unit *".
+ (lookup_address_in_function_table): Dereference unit to find function
+ table.
+ (lookup_address_in_function_table): Traverse the function list to
+ create a chain of inlined functions back to the first non inlined
+ function.
+ (scan_unit_for_functions): Remember tag and nesting level. Handle
+ DW_AT_call_file and DW_AT_call_line.
+ (comp_unit_find_nearest_line): Adjust lookup_address_in_function_table
+ call to pass unit pointer instead of function table pointer. For
+ inlined functions, save pointer to the inliner chain.
+ (_bfd_dwarf2_find_nearest_line): Initialize inliner_chain to NULL.
+ (_bfd_dwarf2_find_inliner_info): New function that returns information
+ from the inliner chain after a call to bfd_find_nearest_line.
+
+ * bfd.c (bfd_find_inliner_info): Define using BFD_SEND.
+ * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add entry for
+ NAME##_find_inliner_info.
+ (bfd_target): Add _bfd_find_inliner_info.
+ * bfd-in2.h: Regenerate.
+
+ * libbfd-in.h (_bfd_nosymbols_find_inliner_info): Define as
+ macro that always returns bfd_false.
+ (_bfd_dwarf2_find_inliner_info): Declare.
+ * libbfd.h: Regenerate.
+
+ * elf32-arm.c (elf32_arm_find_inliner_info): New function
+ that calls _bfd_dwarf2_find_inliner_info.
+ (bfd_elf32_find_inliner_info): Define to elf32_arm_find_inliner_info.
+
+ * elfxx-mips.c (_bfd_mips_elf_find_inliner_info): New function
+ that calls _bfd_dwarf2_find_inliner_info.
+ * elfxx-mips.h (_bfd_mips_elf_find_inliner_info): Declare.
+ * elfn32-mips.c (bfd_elf32_find_inliner_info): Define to
+ _bfd_mips_elf_find_inliner_info.
+ * elf64-mips.c (bfd_elf64_find_inliner_info): Ditto.
+ * elf32-mips.c (bfd_elf32_find_inliner_info): Ditto.
+
+ * elf.c (_bfd_elf_find_inliner_info): New function that calls
+ _bfd_dwarf2_find_inliner_info.
+ * elf-bfd.h (_bfd_elf_find_inliner_info): Declare.
+ * elfxx-target.h (bfd_elfNN_find_inliner_info): Define to
+ _bfd_elf_find_inliner_info.
+
+ * coffgen.c (coff_find_inliner_info): New function that
+ calls _bfd_dwarf2_find_inliner_info.
+ * libcoff-in.h (coff_find_inliner_info): Declare.
+ * libcoff.h: Regenerate.
+ * coff-rs6000.c (rs6000coff_vec): Add coff_find_inliner_info.
+ (pmac_xcoff_vec) Ditto.
+ * coff64-rs6000.c (rs6000coff64_vec): Ditto.
+ (aix5coff64_vec): Ditto.
+
+ * aout-target.h (MY_find_inliner_info): Define as
+ _bfd_nosymbols_find_inliner_info.
+ * aout-tic30.c (MY_find_inliner_info): Ditto.
+ * binary.c (binary_find_inliner_info): Ditto.
+ * i386msdos.c (msdos_find_inliner_info): Ditto.
+ * ihex.c (ihex_find_inliner_info): Ditto.
+ * libaout.h (aout_32_find_inliner_info): Ditto.
+ * libecoff.h (_bfd_ecoff_find_inliner_info): Ditto.
+ * mach-o.c (bfd_mach_o_find_inliner_info): Ditto.
+ * mmo.c (mmo_find_inliner_info): Ditto.
+ * nlm-target.h (nlm_find_inliner_info): Ditto.
+ * pef.c (bfd_pef_find_inliner_info): Ditto.
+ * ppcboot.c (ppcboot_find_inliner_info): Ditto.
+ * srec.c (srec_find_inliner_info): Ditto.
+ * tekhex.c (tekhex_find_inliner_info): Ditto.
+ * versados.c (versados_find_inliner_info): Ditto.
+ * xsym.c (bfd_sym_find_inliner_info): Ditto.
+
+ * ieee.c (ieee_find_inliner_info): New function that always
+ returns FALSE.
+ * oasys.c (oasys_find_inliner_info): Ditto.
+ * vms.c (vms_find_inliner_info): Ditto.
+
+2005-05-24 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_check_relocs): For old gcc -fPIC code
+ force old plt layout.
+
+2005-05-22 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relax_section): Ignore non-allocated
+ sections.
+ (elf64_alpha_check_relocs): Likewise.
+ (elf64_alpha_relocate_section): Don't emit dynamic relocations to
+ non-allocated sections.
+
+2005-05-22 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relax_with_lituse): Relax jsr to
+ undefweak to use zero register. Call elf64_alpha_relax_got_load
+ if not all uses removed.
+ (elf64_alpha_relax_got_load): Relax undefweak to lda zero.
+ (elf64_alpha_relax_section): Handle undefweak symbols.
+ (elf64_alpha_calc_dynrel_sizes): Don't add relocs for undefweak.
+ (elf64_alpha_size_rela_got_1): Likewise.
+ (elf64_alpha_relocate_section): Likewise.
+
+2005-05-22 Richard Henderson <rth@redhat.com>
+
+ * elf64-alpha.c (elf64_alpha_relax_section): Only operate
+ on SEC_CODE sections.
+
+2005-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * som.c (try_prev_fixup): Changed type of subspace_reloc_sizep to
+ unsigned int *.
+ (som_write_space_strings): Change type of tmp_space and p to char *.
+ (som_write_symbol_strings): Likewise. Also change type of comp to
+ char *comp[4].
+ (som_begin_writing): Change type of strings_size to unsigned int.
+ (som_finish_writing): Likewise.
+ (som_slurp_reloc_table): Change type of external_relocs to unsigned
+ char *.
+ * som.h (struct som_section_data_struct): Change type of reloc_stream
+ field to unsigned char *.
+
+2005-05-20 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't eliminate
+ copy relocations for VxWorks.
+
+2005-05-20 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-ppc.c (struct ppc_elf_link_hash_entry): Add new field
+ has_sda_refs.
+ (ppc_elf_copy_indirect_symbol): Copy has_sda_refs.
+ (ppc_elf_check_relocs): Set has_sda_refs.
+ (ppc_elf_adjust_dynamic_symbol): Check has_sda_refs before eliminating
+ copy relocations. Use has_sda_refs to place variables in .sbss.
+ (ppc_elf_finish_dynamic_symbol): Use has_sda_refs to place variables in
+ .sbss.
+
+2005-05-20 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (bfd_elf_xtensa_reloc): Make sure that
+ xtensa_default_isa is initialized.
+
+2005-05-20 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (allocate_dynrelocs): Correct plt offset assigned
+ for second and subsequent list entries. Only allocate multiple
+ glink stubs when shared or pie.
+ (ppc_elf_finish_dynamic_symbol): Break out early when only one
+ glink stub is needed.
+
+2005-05-19 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.am: Have 'all' depend on 'info'.
+ * Makefile.in: Regenerate.
+
+2005-05-19 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (struct elf_link_hash_table): Delete init_refcount and
+ init_offset. Add init_got_refcount, init_plt_refcount,
+ init_got_offset and init_plt_offset.
+ * elf.c (_bfd_elf_link_hash_newfunc): Adjust for above change.
+ (_bfd_elf_link_hash_hide_symbol): Likewise.
+ (_bfd_elf_link_hash_table_init): Likewise.
+ * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
+ * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
+ * elflink.c (_bfd_elf_adjust_dynamic_symbol): Likewise.
+ (bfd_elf_size_dynamic_sections): Likewise.
+ * elf32-ppc.c (GLINK_PLTRESOLVE): Now 16 insns.
+ (LWZU_0_X_12, LWZ_0_4_30, LWZ_0_X_12, LWZ_11_X_11, LWZ_11_X_30,
+ LWZ_12_4_12, LWZ_12_8_30, LWZ_12_X_12, SUB_11_11_30): Delete.
+ (ADDIS_12_12, BCL_20_31, LWZU_0_12, LWZ_0_12, LWZ_11_11, LWZ_11_30,
+ LWZ_12_12, MFLR_0, MFLR_12, MTLR_0, SUB_11_11_12): Define.
+ (struct plt_entry): New.
+ (ppc_elf_link_hash_table_create): Set new init_plt fields.
+ (ppc_elf_copy_indirect_symbol): Handle merge of plt plist. Don't
+ use _bfd_elf_link_hash_copy_indirect.
+ (update_plt_info, find_plt_ent): New functions.
+ (ppc_elf_check_relocs): Handle R_PPC_PLTREL24 with non-zero addend
+ and adjust for use of plt list rather than refcount.
+ (ppc_elf_gc_sweep_hook): Likewise.
+ (ppc_elf_tls_optimize): Likewise.
+ (ppc_elf_adjust_dynamic_symbol): Likewise.
+ (allocate_dynrelocs): Likewise.
+ (ppc_elf_relax_section): Likewise.
+ (ppc_elf_relocate_section): Likewise. Adjust R_PPC_PLTREL24 addends
+ when performing a relocatable link.
+ (ppc_elf_finish_dynamic_symbol): Likewise. Write .glink stubs here..
+ (ppc_elf_finish_dynamic_sections): ..rather than here. Use new
+ pic resolver stub.
+
+2005-05-19 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (assign_file_positions_for_segments): Use maximum of
+ maxpagesize and section alignment when adjusting initial
+ segment offset and section offsets.
+
+2005-05-18 Zack Weinberg <zack@codesourcery.com>
+
+ * elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks
+ unconditional.
+
+2005-05-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (group_signature): Undo the last change. Check if the
+ symbol table section is correct.
+
+2005-05-17 Zack Weinberg <zack@codesourcery.com>
+
+ * elf32-arm.c: Wherever possible, use official reloc names
+ from AAELF.
+ (elf32_arm_howto_table, elf32_arm_tls_gd32_howto)
+ (elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto)
+ (elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto)
+ (elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto)
+ (elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel)
+ (elf32_arm_r_howto): Replace with elf32_arm_howto_table_1,
+ elf32_arm_howto_table_2, and elf32_arm_howto_table_3.
+ Add many new relocations from AAELF.
+ (elf32_arm_howto_from_type): Update to match.
+ (elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24,
+ R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8,
+ R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY.
+ (elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type.
+ (elf32_arm_final_link_relocate): Add support for
+ R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6. Remove
+ case entries redundant with default.
+
+ * reloc.c: Reorganize ARM relocations. Add Thumb
+ assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8,
+ BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE.
+ Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7,
+ BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25.
+ Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY.
+ * bfd-in2.h, libbfd.h: Regenerate.
+
+2005-05-17 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf.c (_bfd_elf_write_object_contents): Check for non-NULL
+ elf_shstrtab.
+ * format.c (bfd_check_format_matches): Set output_has_begun
+ for both_direction.
+ * section.c (bfd_set_section_contents): Use bfd_write_p. Remove
+ special case for both_direction.
+
+2005-05-17 Nick Clifton <nickc@redhat.com>
+
+ * elf.c (group_signature): Check for a group section which is
+ actually a (corrupt) symbol table section in disguise and prevent
+ an infinite loop from occurring.
+
+2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_relax_brl): Undo the change made on
+ 2005-02-16.
+
+2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_relax_br): Keep the original
+ predicate on slot 0 only if slot 0 isn't br.
+
+2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 797
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Also remove
+ empty sdynbss section.
+ * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise.
+
+2005-05-17 Tavis Ormandy <taviso@gentoo.org>
+
+ * elf.c (bfd_section_from_shdr): Add sanity check when parsing
+ dynamic sections.
+
+2005-05-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (LIS_11. LIS_12): Define.
+ (LWZU_0_X_12, LWZ_0_X_12, LWZ_12_4_12, LWZ_12_X_12): Define.
+ (ppc_elf_finish_dynamic_sections): Provide non-pic plt call stub
+ for --data-plt when building non-pie executables.
+
+2005-05-17 Nick Clifton <nickc@redhat.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Gracefully handle
+ the situation where a symbols's section is not known but a section
+ relative R_ARM_RELATIVE reloc has to be generated for the Symbian
+ OS.
+
+ * elf32-v850.c (v850_elf_relocate_section): Move code to test for
+ the presence of a symbol table to just before the symbol table is
+ actually used.
+
+2005-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 834
+ * elfxx-ia64.c (elfNN_ia64_relax_br): New.
+ (elfNN_ia64_relax_section): Use it.
+
+2005-05-14 Mark Kettenis <kettenis@gnu.org>
+
+ * elflink.c (bfd_elf_size_dynamic_sections): Use lbasename instead
+ of basename.
+
+2005-05-14 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set DT_PPC_GOT,
+ not DT_PPC_GLINK.
+ (ppc_elf_finish_dynamic_sections): Likewise.
+
+2005-05-13 Fred Fish <fnf@specifixinc.com>
+
+ * libbfd-in.h: Fix a comment typo, 'neaderst' -> 'nearest'
+ * libbfd.h: Rebuilt.
+
+2005-05-13 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (xtensa_get_property_section_name): Add missing
+ periods in linkonce_kind values.
+
+2005-05-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF
+ against protected function when building executable.
+
+2005-05-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (LWZU_0_X_11): Delete.
+ (B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define.
+ (ppc_elf_select_plt_layout): Set .got flags too. Formatting.
+ (ppc_elf_size_dynamic_sections): Allocate space for .glink branch
+ table.
+ (ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch
+ table.
+ (ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value.
+ Generate .glink branch table and updated stubs.
+
+2005-05-11 Alan Modra <amodra@bigpond.net.au>
+
+ * reloc.c (BFD_RELOC_HI16_PCREL): Define.
+ (BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define.
+ * elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define.
+ (CROR_151515, CROR_313131): Delete.
+ (ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11,
+ LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30,
+ LWZU_0_X_11): Define.
+ (ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI
+ and R_PPC_REL16_HA entries.
+ (ppc_elf_reloc_type_lookup): Convert new bfd reloc types.
+ (ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA.
+ (struct ppc_elf_link_hash_table): Add glink, glink_pltresolve,
+ new_plt, and old_plt.
+ (ppc_elf_create_dynamic_sections): Create .glink section.
+ (ppc_elf_check_relocs): Set new_plt and old_plt.
+ (ppc_elf_select_plt_layout): New function.
+ (ppc_elf_tls_setup): Set plt output section elf type and flags.
+ (allocate_got): Handle differences between old and new got layout.
+ (allocate_dynrelocs): Likewise for plt.
+ (ppc_elf_size_dynamic_sections): Likewise. Allocate memory for
+ .glink. Don't allocate memory for old bss .plt. Emit DT_PPC_GLINK.
+ (ppc_elf_relax_section): Rename ppc_info to htab. Handle .glink
+ destination of R_PPC_PLTREL24 relocs.
+ (ppc_elf_relocate_section): Handle new relocs and changed destination
+ of R_PPC_PLTREL24.
+ (ppc_elf_finish_dynamic_symbol): Init new style plt and handle
+ differences in layout.
+ (ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value. Don't
+ put a blrl in new got. Write glink contents.
+ * elf32-ppc.h (ppc_elf_select_plt_layout): Declare.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2005-05-11 Andreas Schwab <schwab@suse.de>
+
+ * elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signedness
+ warning.
+
+2005-05-10 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (_bfd_elf_make_section_from_shdr): Only check debug
+ section if SEC_ALLOC isn't set.
+
+2005-05-09 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF.
+ * acinclude.m4: Don't sinclude accross.m4.
+ * config.in, configure, Makefile.in, doc/Makefile.in: Regenerate.
+
+2005-05-09 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym.
+ (ppc64_elf_add_symbol_hook): Set has_dotsym.
+ (ppc64_elf_check_directives): Only process syms when has_dotsym.
+ (func_desc_adjust): Hide fake function descriptors when function
+ code entry is defined.
+ (adjust_opd_syms): Adjust for deleted_section becoming union field.
+
+2005-05-09 Alan Modra <amodra@bigpond.net.au>
+
+ * elfcode.h (elf_object_p): Add more sanity checks on elf header.
+
+2005-05-08 Dave Korn <dave.korn@artimi.com>
+
+ * coff-tic80.c: Undefine _CONST after system headers to prevent
+ clash with tic80-specific definition in include/coff/tic80.h
+
+2005-05-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 939
+ * elflink.c (elf_link_output_extsym): Use output_bfd if
+ h->root.u.def.section is bfd_abs_section_ptr when reporting
+ error.
+
+2005-05-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_backend_data): Update special_sections to
+ array of pointer to bfd_elf_special_section.
+ * elf.c (special_sections): Likewise.
+ * elf32-arm.c (elf32_arm_symbian_special_sections): Likewise.
+ * elf32-m32r.c (m32r_elf_special_sections): Likewise.
+ * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise.
+ * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise.
+ * elf32-mcore.c (mcore_elf_special_sections): Likewise.
+ * elf32-ppc.c (ppc_elf_special_sections): Likewise.
+ * elf32-sh64.c (sh64_elf_special_sections): Likewise.
+ * elf32-v850.c (v850_elf_special_sections): Likewise.
+ * elf32-xtensa.c (elf_xtensa_special_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_special_sections): Likewise.
+ * elf64-hppa.c (elf64_hppa_special_sections): Likewise.
+ * elf64-ppc.c (ppc64_elf_special_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_special_sections): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise.
+ * elfxx-mips.h (_bfd_mips_elf_special_sections): Likewise.
+
+ * elf.c (get_special_section): Updated.
+
+2005-05-07 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset.
+ * elfxx-target.h (elf_backend_got_symbol_offset): Delete.
+ * elflink.c (_bfd_elf_create_got_section): Use zero in place of
+ got_symbol_offset.
+ * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise.
+ * elf32-frv.c (_frv_create_got_section): Likewise.
+ * elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code.
+ (elf_backend_got_symbol_offset): Don't define.
+ * elf64-ppc.c (elf_backend_got_symbol_offset): Don't define.
+ * elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size
+ and got_gap.
+ (ppc_elf_create_got): Tidy.
+ (ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt.
+ (ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot.
+ (ppc_elf_gc_sweep_hook): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+ (ppc_elf_finish_dynamic_symbol): Likewise.
+ (allocate_got): New function.
+ (allocate_dynrelocs): Use allocate_got.
+ (ppc_elf_size_dynamic_sections): Likewise. Delay tlsld_got allocation
+ so that local got can refcount it. Set got_header_size.
+ (ppc_elf_relocate_section): Use value of elf.hgot rather than hard-
+ coded 4.
+ (ppc_elf_finish_dynamic_sections): Likewise.
+ (elf_backend_got_symbol_offset): Don't define.
+ (elf_backend_got_header_size): Ditto.
+
+2005-05-05 Steve Ellcey <sje@cup.hp.com>
+
+ * configure.in (ACX_HEADER_STRING): New.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * sysdep.h (STRING_WITH_STRINGS): Use.
+
+2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (_bfd_elf_close_and_cleanup): Only call
+ _bfd_dwarf2_cleanup_debug_info on bfd_object.
+
+2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_provide_section_bound_symbols): Use
+ "__bss_start" instead of "_edata" as fallback.
+
+2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in2.h: Regenerated.
+
+2005-05-05 Paul Brook <paul@codesourcery.com>
+
+ * config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks.
+ * configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need
+ elf-vxworks.lo.
+ * configure: Regenerate.
+ * Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo.
+ (BFD32_BACKENDS_CFILES): Add elf-vxworks.c.
+ (elf32-i386.lo): Depend on elf-vxworks.h.
+ (elf-vxworks.lo): New rule.
+ * Makefile.in: Regenerate.
+ * elf-bfd.h (elf_backend_data): Update type of
+ elf_backend_emit_relocs.
+ (_bfd_elf_link_output_relocs): Update prototype.
+ * elflink.c (_bfd_elf_link_output_relocs): Always use
+ bed->elf_backend_emit_relocs when outputting relocations.
+ * elfxx-target.h (elf_backend_emit_relocs): Default to
+ _bfd_elf_link_output_relocs.
+ * targets.c (bfd_elf32_i386_vxworks_vec): Declare.
+ (_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec.
+ * elf32-i386.c: Add elf32-i386-vxworks target BFD.
+ (elf_i386_plt0_entry): Remove padding.
+ (elf_i386_pic_plt0_entry): Ditto.
+ (PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define.
+ (PLT_NON_JUMP_SLOT_RELOCS): Define.
+ (elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and
+ plt0_pad_byte fields.
+ (elf_i386_link_hash_table_create): Zero them.
+ (elf_i386_create_dynamic_sections): Create static relocation section.
+ (allocate_dynrelocs): Allocate space for static PLT relocations.
+ (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT
+ symbols. Give PLT symbols function type. Don't strip PLT sections
+ if we have exported symbols from them.
+ (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static
+ relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on
+ VxWorks.
+ (elf_i386_finish_dynamic_sections): Allow different pad bytes.
+ Add relocation for GOT location. Fill in PLT static relocations.
+ (elf_i386_vxworks_link_hash_table_create): New function.
+ (elf_i386_vxworks_link_output_symbol_hook): New function.
+ * elf-vxworks.h: New file.
+
+2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * section.c (bfd_make_section_anyway_with_flags): New.
+ (bfd_make_section_anyway): Call bfd_make_section_anyway_with_flags,
+ (bfd_make_section_with_flags): New.
+ (bfd_make_section): Call bfd_make_section_with_flags.
+
+ * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Call
+ bfd_make_section_with_flags/bfd_make_section_anyway_with_flags
+ instead of bfd_make_section/bfd_make_section and don't call
+ bfd_set_section_flags.
+ (mn10300_elf_check_relocs): Likewise.
+ (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
+ * elf32-arm.c (create_got_section): Likewise.
+ (bfd_elf32_arm_add_glue_sections_to_bfd): Likewise.
+ (elf32_arm_check_relocs): Likewise.
+ * elf32-cris.c (cris_elf_check_relocs): Likewise.
+ * elf32-frv.c (elf32_frv_add_symbol_hook): Likewise.
+ (_frv_create_got_section): Likewise.
+ (elf32_frvfdpic_create_dynamic_sections): Likewise.
+ * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Likewise.
+ (elf32_hppa_check_relocs): Likewise.
+ * elf32-i370.c (i370_elf_create_dynamic_sections): Likewise.
+ (i370_elf_check_relocs): Likewise.
+ * elf32-i386.c (create_got_section): Likewise.
+ (elf_i386_check_relocs): Likewise.
+ * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise.
+ (create_got_section): Likewise.
+ (m32r_elf_create_dynamic_sections): Likewise.
+ (m32r_elf_check_relocs): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+ * elf32-ppc.c (ppc_elf_create_got): Likewise.
+ (ppc_elf_create_dynamic_sections): Likewise.
+ (ppc_elf_add_symbol_hook): Likewise.
+ (ppc_elf_check_relocs): Likewise.
+ * elf32-s390.c (create_got_section): Likewise.
+ (elf_s390_check_relocs): Likewise.
+ * elf32-sh.c (create_got_section): Likewise.
+ (sh_elf_create_dynamic_sections): Likewise.
+ (sh_elf_check_relocs): Likewise.
+ * elf32-vax.c (elf_vax_check_relocs): Likewise.
+ * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
+ * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Likewise.
+ (add_extra_plt_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise.
+ (elf64_alpha_create_got_section): Likewise.
+ (elf64_alpha_create_dynamic_sections): Likewise.
+ (elf64_alpha_check_relocs): Likewise.
+ * elf64-hppa.c (get_reloc_section): Likewise.
+ (get_opd): Likewise.
+ (get_plt): Likewise.
+ (get_dlt): Likewise.
+ (get_stub): Likewise.
+ (elf64_hppa_create_dynamic_sectionso): Likewise.
+ * elf64-mmix.c (mmix_elf_check_common_relocs): Likewise.
+ * elf64-ppc.c (create_linkage_sections): Likewise.
+ (ppc64_elf_check_relocs): Likewise.
+ * elf64-s390.c (create_got_section): Likewise.
+ (elf_s390_check_relocs): Likewise.
+ * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
+ (sh64_elf64_create_dynamic_sections): Likewise.
+ * elf64-x86-64.c (create_got_section): Likewise.
+ (elf64_x86_64_check_relocs): Likewise.
+ * elflink.c (_bfd_elf_create_got_section): Likewise.
+ (_bfd_elf_link_create_dynamic_sections): Likewise.
+ (elf_link_add_object_symbols): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise.
+ (elfNN_ia64_create_dynamic_sections): Likewise.
+ (get_fptr): Likewise.
+ (get_pltoff): Likewise.
+ (get_reloc_section): Likewise.
+ (elfNN_ia64_object_p): Likewise.
+ * elfxx-mips.c (mips_elf_rel_dyn_section): Likewise.
+ (mips_elf_create_compact_rel_section): Likewise.
+ (mips_elf_create_got_section): Likewise.
+ (_bfd_mips_elf_create_dynamic_sections): Likewise.
+ * elfxx-sparc.c (create_got_section): Likewise.
+ (_bfd_sparc_elf_check_relocs): Likewise.
+
+ * elf.c (_bfd_elf_new_section_hook): Call _bfd_elf_get_sec_type_attr
+ on linker created sections.
+
+2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 882
+ * elflink.c (_bfd_elf_link_assign_sym_version): Allow version
+ script on executable.
+
+2005-05-05 John Levon <levon@movementarian.org>
+
+ * dwarf2.c (read_abbrevs): If bfd_realloc fails, free currently
+ allocated memory before returning.
+ (decode_line_info): Likewise.
+ (_bfd_dwarf2_cleanup_debug_info): New function: Frees memory
+ allocated by functions in this file.
+ * elf-bfd.h (_bfd_dwarf2_cleanup_debug_info): Prototype.
+ * elf.c (_bfd_elf_close_and_cleanup): Call
+ _bfd_dwarf2_cleanup_debug_info.
+
+2005-05-05 Hans-Peter Nilsson <hp@axis.com>
+
+ * Makefile.am (INCLUDES): Don't -D_GNU_SOURCE here.
+ * configure.in: Call AC_GNU_SOURCE here, after AC_PROG_CC.
+ * configure, config.in, Makefile.in: Regenerate.
+ * sysdep.h (stpcpy): Revert last change.
+
+2005-05-05 Hans-Peter Nilsson <hp@axis.com>
+
+ * sysdep.h (stpcpy): Wrap declaration in parentheses.
+
+2005-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (ARCH_SIZE): New.
+ (LOG_SECTION_ALIGN): Likewise.
+ (elfNN_ia64_create_dynamic_sections): Use LOG_SECTION_ALIGN to
+ align relocation sections.
+ (get_fptr): Likewise.
+ (get_reloc_section): Likewise.
+ (elfNN_ia64_tprel_base): Likewise.
+ (elfNN_ia64_check_relocs): Support 32bit relocations.
+ (allocate_global_fptr_got): Likewise.
+ (allocate_dynrel_entries): Likewise.
+ (set_got_entry): Likewise.
+ (set_pltoff_entry): Likewise.
+ (elfNN_ia64_relocate_section): Likewise.
+
+2005-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure.in: Add AC_CHECK_DECLS(stpcpy).
+ * configure: Regenerate.
+ * config.in: Likewise.
+
+ * sysdep.h (stpcpy): New.
+
+2005-05-04 Nick Clifton <nickc@redhat.com>
+
+ * Update the address and phone number of the FSF organization in
+ the GPL notices in the following files:
+ aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c,
+ aout-cris.c, aout-ns32k.c, aout-sparcle.c, aout-target.h,
+ aout-tic30.c, aout0.c, aout32.c, aout64.c, aoutf1.h, aoutx.h,
+ archive.c, archive64.c, archures.c, armnetbsd.c, bfd-in.h,
+ bfd-in2.h, bfd.c, bfdio.c, bfdwin.c, binary.c, bout.c, cache.c,
+ cf-i386lynx.c, cf-m68klynx.c, cf-sparclynx.c, cisco-core.c,
+ coff-a29k.c, coff-alpha.c, coff-apollo.c, coff-arm.c, coff-aux.c,
+ coff-go32.c, coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c,
+ coff-i960.c, coff-ia64.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
+ coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
+ coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
+ coff-svm68k.c, coff-tic30.c, coff-tic4x.c, coff-tic54x.c,
+ coff-tic80.c, coff-u68k.c, coff-w65.c, coff-we32k.c, coff-z8k.c,
+ coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, coffswap.h,
+ corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c,
+ cpu-avr.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
+ cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
+ cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
+ cpu-i960.c, cpu-ia64-opc.c, cpu-ia64.c, cpu-ip2k.c, cpu-iq2000.c,
+ cpu-m10200.c, cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c,
+ cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
+ cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-ns32k.c, cpu-openrisc.c,
+ cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, cpu-rs6000.c,
+ cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, cpu-tic4x.c,
+ cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c,
+ cpu-we32k.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z8k.c, demo64.c,
+ dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c, ecoffswap.h,
+ efi-app-ia32.c, efi-app-ia64.c, elf-bfd.h, elf-eh-frame.c,
+ elf-hppa.h, elf-m10200.c, elf-m10300.c, elf-strtab.c, elf.c,
+ elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
+ elf32-cr16c.c, elf32-cris.c, elf32-crx.c, elf32-d10v.c,
+ elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
+ elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
+ elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
+ elf32-iq2000.c, elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c,
+ elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c, elf32-m88k.c,
+ elf32-mcore.c, elf32-mips.c, elf32-msp430.c, elf32-openrisc.c,
+ elf32-or32.c, elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c,
+ elf32-sh-symbian.c, elf32-sh.c, elf32-sh64-com.c, elf32-sh64.c,
+ elf32-sh64.h, elf32-sparc.c, elf32-v850.c, elf32-vax.c,
+ elf32-xstormy16.c, elf32-xtensa.c, elf32.c, elf64-alpha.c,
+ elf64-gen.c, elf64-hppa.c, elf64-hppa.h, elf64-mips.c,
+ elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c,
+ elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elf64.c, elfcode.h,
+ elfcore.h, elflink.c, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c,
+ elfxx-mips.h, elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h,
+ epoc-pe-arm.c, epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c,
+ genlink.h, hash.c, host-aout.c, hp300bsd.c, hp300hpux.c,
+ hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
+ i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
+ i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
+ libaout.h, libbfd-in.h, libbfd.c, libbfd.h, libcoff-in.h,
+ libcoff.h, libecoff.h, libhppa.h, libieee.h, libnlm.h, liboasys.h,
+ libpei.h, libxcoff.h, linker.c, lynx-core.c, m68k4knetbsd.c,
+ m68klinux.c, m68klynx.c, m68knetbsd.c, m88kmach3.c, m88kopenbsd.c,
+ mach-o-target.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, mmo.c,
+ netbsd-core.c, netbsd.h, newsos3.c, nlm-target.h, nlm.c,
+ nlm32-alpha.c, nlm32-i386.c, nlm32-ppc.c, nlm32-sparc.c, nlm32.c,
+ nlm64.c, nlmcode.h, nlmswap.h, ns32k.h, ns32knetbsd.c, oasys.c,
+ opncls.c, osf-core.c, pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c,
+ pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c, peXXigen.c,
+ pef-traceback.h, pef.c, pef.h, pei-arm.c, pei-i386.c, pei-mcore.c,
+ pei-mips.c, pei-ppc.c, pei-sh.c, peicode.h, ppcboot.c,
+ ptrace-core.c, reloc.c, reloc16.c, riscix.c, rs6000-core.c,
+ sco5-core.c, section.c, simple.c, som.c, som.h, sparclinux.c,
+ sparclynx.c, sparcnetbsd.c, srec.c, stab-syms.c, stabs.c, sunos.c,
+ syms.c, sysdep.h, targets.c, tekhex.c, ticoff.h, trad-core.c,
+ vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c, vms-gsd.c,
+ vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, xcoff-target.h,
+ xcofflink.c, xsym.c, xsym.h, xtensa-isa.c, xtensa-modules.c,
+ hosts/alphavms.h
+
+2005-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in.h (_bfd_elf_provide_section_bound_symbols): New.
+ * bfd-in2.h: Regenerated.
+
+ * elflink.c (bfd_elf_set_symbol): New.
+ (_bfd_elf_provide_symbol): Call it.
+ (_bfd_elf_provide_section_bound_symbols): New.
+
+2005-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_merge_symbol): Only skip weak definitions
+ at the end, if a strong definition has already been seen.
+
+2005-05-04 Alan Modra <amodra@bigpond.net.au>
+
+ * section.c (struct bfd_section): Replace link_order_head and
+ link_order_tail with map_head and map_tail union.
+ (STD_SECTION): Update.
+ (_bfd_strip_section_from_output): Delete.
+ * aoutx.h: Update throughout for above changes.
+ * coff-ppc.c: Likewise.
+ * cofflink.c: Likewise.
+ * ecoff.c: Likewise.
+ * elf-eh-frame.c: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf.c: Likewise.
+ * elf32-arm.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i386.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68hc1x.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-vax.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+ * elflink.c: Likewise.
+ * elfxx-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * linker.c: Likewise.
+ * merge.c: Likewise.
+ * pdp11.c: Likewise.
+ * xcofflink.c: Likewise.
+ * elflink.c (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Split
+ out from bfd_elf_size_dynamic_sections.
+ * bfd-in.h (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Declare.
+ * bfd-in2.h: Regenerate.
+
+2005-05-04 Alan Modra <amodra@bigpond.net.au>
+
+ * section.c (bfd_section_list_remove): Don't clear s->next.
+ (bfd_section_list_append): Always init s->prev.
+ (bfd_section_list_prepend): Define.
+ (bfd_section_list_insert_after): Minor optimization.
+ (bfd_section_removed_from_list): Rewrite.
+ * elf.c (assign_section_numbers): Simplify list traversal now that
+ bfd_section_list_remove doesn't destroy removed section next ptr.
+ * sunos.c (sunos_add_dynamic_symbols): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_object_p): Use bfd_section_list_prepend.
+ * xcofflink.c (_bfd_xcoff_bfd_final_link): Simplify list traversal.
+ * bfd-in2.h: Regenerate.
+
+2005-05-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd.c (bfd): Remove section_tail and add section_last.
+ (bfd_preserve): Likewise.
+ (bfd_preserve_save): Likewise.
+ (bfd_preserve_restore): Likewise.
+ * opncls.c (_bfd_new_bfd): Likewise.
+
+ * coffcode.h (coff_compute_section_file_positions): Updated.
+ (coff_compute_section_file_positions): Likewise.
+ * elf.c (assign_section_numbers): Likewise.
+ * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
+ * elf64-mmix.c (mmix_elf_final_link): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_object_p): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
+ * sunos.c (sunos_add_dynamic_symbols): Likewise.
+ * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
+
+ * ecoff.c (bfd_debug_section): Initialize prev.
+
+ * section.c (bfd_section): Add prev.
+ (bfd_section_list_remove): Updated.
+ (bfd_section_list_append): New.
+ (bfd_section_list_insert_after): New.
+ (bfd_section_list_insert_before): New.
+ (bfd_section_list_insert): Removed.
+ (bfd_section_removed_from_list): Updated.
+ (STD_SECTION): Initialize prev.
+ (bfd_section_init): Updated.
+ (bfd_section_list_clear): Updated.
+
+ * bfd-in2.h: Regenerated.
+
+2005-05-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (_bfd_elf_new_section_hook): Don't call
+ _bfd_elf_get_sec_type_attr on sections from input files.
+
+2005-05-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * merge.c (sec_merge_init): Call bfd_hash_table_init_n with
+ hash table size 16699 instead of bfd_hash_table_init.
+
+2005-05-01 Paul Brook <paul@codesourcery.com>
+
+ * elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong
+ definition has already been seen.
+
+2005-05-01 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Treat
+ R_ARM_PLT32 the same as R_ARM_PC24.
+ (arm_add_to_rel): Ditto.
+
+2005-04-29 Ralf Corsepius <ralf.corsepius@rtems.org>
+
+ * config.bfd: Add h8300*-*-rtemscoff.
+ Switch h8300*-*-rtems* to elf.
+
+2005-04-29 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * aclocal.m4, Makefile.in: Regnerated.
+
+2005-04-28 Paul Brook <paul@codesourcery.com>
+
+ Merge changes only applied to Makefile.in.
+ * Makefile.am (BFD32_BACKENDS): Add elfxx-sparc.lo
+ (BFD32_BACKENDS_CFILES): Add elfxx-sparc.c
+ (elfxx-sparc.lo): New rule.
+ (elf32-sparc.lo): Add elfxx-sparc.h dependency.
+ (elf64-sparc.lo): Likewise.
+
+2005-04-28 Julian Brown <julian@codesourcery.com>
+
+ * elflink.c (_bfd_elf_provide_symbol): Provide symbol for weak
+ import.
+
+2005-04-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (bfd_elf_sym_name): Also take "asection *".
+
+ * elf.c (bfd_elf_sym_name): Updated.
+ (group_signature): Likewise.
+ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+ * elf64-ppc.c (ppc64_elf_edit_opd): Likewise.
+ (ppc64_elf_edit_toc): Likewise.
+ (ppc64_elf_relocate_section): Likewise.
+ * elfcode.h (elf_slurp_symbol_table): Likewise.
+ * elflink.c (elf_link_input_bfd): Likewise.
+
+ * elfxx-ia64.c (elfNN_ia64_relocate_section): Call
+ bfd_elf_sym_name to get local symbol name when reporting errors.
+
+2005-04-27 Nick Clifton <nickc@redhat.com>
+
+ * elflink.c (elf_link_input_bfd): Handle the case where a badly
+ formatted input file results in a reloc which has no associated
+ global symbol.
+
+2005-04-26 Jerome Guitton <guitton@gnat.com>
+
+ * bfd.m4 (BFD_NEED_DECLARATION): Restore.
+
+2005-04-25 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.c (sparc_elf_append_rela_64): Add BFD64 protection.
+ (sparc_elf_r_info_64, _bfd_sparc_elf_finish_dynamic_symbol,
+ sparc64_finish_dyn, _bfd_sparc_elf_finish_dynamic_sections):
+ Likewise.
+
+2005-04-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 858
+ * elflink.c (elf_link_input_bfd): Make non-debugging reference
+ to discarded section an error.
+
+2005-04-21 Jerome Guitton <guitton@gnat.com>
+
+ * configure.in: Replace BFD_NEED_DECLARATION checks by the
+ corresponding AC_CHECK_DECLS.
+ * sysdep.h: Replace NEED_DECLARATION_* checks by the corresponding
+ HAVE_DECL_*.
+ * bfd.m4 (BFD_NEED_DECLARATION): Remove, obsolete.
+ * configure: Regenerate.
+ * config.in: Ditto.
+
+2005-04-21 Andreas Schwab <schwab@suse.de>
+
+ * elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove
+ unsigned from type of dynamic_interpreter.
+ * elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create): Remove
+ casts again.
+
+ * elf.c (assign_section_numbers): Fix comment.
+
+2005-04-21 Jerome Guitton <guitton@gnat.com>
+
+ * som.c (som_bfd_print_private_bfd_data): Add explicit cast to long
+ for struct som_exec_auxhdr fields.
+
+2005-04-21 Nick Clifton <nickc@redhat.com>
+
+ * aout-adobe.c: Convert to ISO C and fix formatting.
+ * aout-arm.c: Convert to ISO C and fix formatting.
+ * aout-cris.c: Convert to ISO C and fix formatting.
+ * aout-ns32k.c: Convert to ISO C and fix formatting.
+ * aout-tic30.c: Convert to ISO C and fix formatting.
+ * coffcode.h: Convert to ISO C and fix formatting.
+ * coffswap.h: Convert to ISO C and fix formatting.
+ * i386aout.c: Convert to ISO C and fix formatting.
+ * libaout.h: Convert to ISO C and fix formatting.
+ * libcoff-in.h: Convert to ISO C and fix formatting.
+ * libcoff.h: Convert to ISO C and fix formatting.
+ * libecoff.h: Convert to ISO C and fix formatting.
+ * libnlm.h: Convert to ISO C and fix formatting.
+ * libpei.h: Convert to ISO C and fix formatting.
+ * libxcoff.h: Convert to ISO C and fix formatting.
+ * nlm-target.h: Convert to ISO C and fix formatting.
+ * nlm.c: Convert to ISO C and fix formatting.
+ * nlm32-alpha.c: Convert to ISO C and fix formatting.
+ * nlm32-i386.c: Convert to ISO C and fix formatting.
+ * nlm32-ppc.c: Convert to ISO C and fix formatting.
+ * nlm32-sparc.c: Convert to ISO C and fix formatting.
+ * nlmcode.h: Convert to ISO C and fix formatting.
+ * nlmswap.h: Convert to ISO C and fix formatting.
+ * pe-mips.c: Convert to ISO C and fix formatting.
+ * peXXigen.c: Convert to ISO C and fix formatting.
+ * peicode.h: Convert to ISO C and fix formatting.
+ * vms-gsd.c: Convert to ISO C and fix formatting.
+ * vms-hdr.c: Convert to ISO C and fix formatting.
+ * vms-misc.c: Convert to ISO C and fix formatting.
+ * vms-tir.c: Convert to ISO C and fix formatting.
+ * vms.c: Convert to ISO C and fix formatting.
+ * vms.h: Convert to ISO C and fix formatting.
+
+ * coffgen.c (coff_print_symbol): Restore correct formatting of
+ output.
+
+2005-04-20 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.c (sparc_elf_r_symndx_64): Fix compiler warning.
+ (_bfd_sparc_elf_link_hash_table_create): Likewise.
+ (allocate_dynrelocs): Likewise.
+
+2005-04-20 Jerome Guitton <guitton@gnat.com>
+
+ * configure.in: Fix the check for basename declaration. Add check
+ for declarations of ftello, ftello64, fseeko, fseeko64.
+ * configure: Regenerate.
+ * config.in: Ditto.
+ * sysdep.h: If needed, declare ftello, ftello64, fseeko, fseeko64.
+
+2005-04-19 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.c: New file.
+ * elfxx-sparc.h: New file.
+ * Makefile.in (BFD32_BACKENDS): Add elfxx-sparc.lo
+ (BFD32_BACKENDS_CFILES): Add elfxx-sparc.c
+ (elfxx-sparc.lo): New rule.
+ (elf32-sparc.lo): Add elfxx-sparc.h dependency.
+ (elf64-sparc.lo): Likewise.
+ * configure.in (bfd_elf32_sparc_vec): Add elfxx-sparc.lo
+ (bfd_elf64_sparc_vec): Likewise.
+ * configure: Regenerate.
+ * elf32-sparc.c: Remove common code now in elfxx-sparc.c
+ * elf64-sparc.c: Likewise, also use elf64_sparc_*() naming
+ which is more consistent with elf32-sparc.c
+
+2005-04-19 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elfxx-mips.c (struct mips_elf_link_hash_entry): Update comment.
+ (mips_elf_create_local_got_entry): Check h->root.forced_local.
+
+2005-04-19 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_check_relocs): Don't bother with
+ dynamic relocs in non-SEC_ALLOC sections.
+ (ppc_elf_gc_sweep_hook): Likewise.
+ (ppc_elf_relax_section): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+
+2005-04-18 Nick Clifton <nickc@redhat.com>
+
+ * aix5ppc-core.c (xcoff64_core_p): Fix compile time warning
+ assigning a value to return_value.
+
+2005-04-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 855
+ * elf.c (_bfd_elf_copy_private_section_data): Don't copy linker
+ created group data.
+
+2005-04-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 855
+ * elf.c (setup_group): Properly handle zero group count.
+
+2005-04-17 Mark Kettenis <kettenis@gnu.org>
+
+ * som.c (hppa_som_reloc, som_mkobject, som_is_space)
+ (som_is_subspace, compare_subspaces, som_compute_checksum)
+ (som_build_and_write_symbol_table, som_slurp_symbol_table): New
+ protoypes.
+ (hppa_som_reloc, compare_syms, compare_subspaces)
+ (som_print_symbol, som_get_section_contents)
+ (som_set_section_contents): Remove space after 'void *'.
+ (som_bfd_print_private_bfd_data): Use %lx to print longs.
+ (som_bfd_merge_private_bfd_data)
+ (som_bfd_copy_private_header_data, som_bfd_set_private_flags): New
+ defines.
+
+2005-04-15 Julian Brown <julian@codesourcery.com>
+
+ * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
+ * bfd-in2.h: Regenerate.
+ * elf32-arm.c (elf32_arm_link_hash_table): New field, 'use_blx'.
+ (elf32_arm_link_hash_table_create): Initialise fix_v4bx, use_blx.
+ (bfd_elf32_arm_set_target_relocs): Handle use_blx.
+ (elf32_arm_final_link_relocate): Use Thumb BLX for R_ARM_THM_PC22
+ relocations if requested to.
+ (allocate_dynrelocs): Don't count size of omitted Thumb stubs based on
+ use_blx rather than symbian_p.
+ (elf32_arm_finish_dynamic_symbol): Don't output Thumb PLT stubs if
+ use_blx is in effect.
+ (elf32_arm_symbian_link_hash_table_create): Enable use_blx by default
+ for SymbianOS.
+
+2005-04-15 Nick Clifton <nickc@redhat.com>
+
+ * coffgen.c (coff_print_symbol): Use fprintf_vma to print vma
+ values.
+
+2005-04-15 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/815
+ * elflink.c (elf_smash_syms): Clear undef.next if it's not being
+ used as a list pointer.
+
+2005-04-14 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am (NO_WERROR): Define.
+ * warning.m4: New file
+ * acinclude.m4: Include warning.m4.
+ * configure.in: Invoke AM_BINUTILS_WARNINGS.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+
+2005-04-14 Alan Modra <amodra@bigpond.net.au>
+
+ * merge.c (sec_merge_emit): Tidy. Check for bfd_zmalloc errors.
+ Write trailing padding.
+
+ * merge.c (merge_strings): Round up section size for alignment.
+
+2005-04-14 David S. Miller <davem@davemloft.net>
+
+ Add TLS support for 64-bit Sparc ELF.
+ * elf64-sparc.c (sparc64_elf_dyn_relocs,
+ sparc64_elf_link_hash_entry, sparc64_elf_obj_tdata): New structs.
+ (GOT_UNKNOWN, GOT_NORMAL, GOT_TLD_GD, GOT_TLD_IE,
+ sparc64_elf_hash_entry, sparc64_elf_tdata,
+ sparc64_elf_local_got_tls_type): New defines.
+ (sparc64_elf_mkobject): New function.
+ (sparc64_elf_link_hash_table): Add members for dynamic linker
+ sections PLT, RELPLT, DYNBSS, and RELBSS. Add tls_ldm_got
+ uion to track TLS GOT references. Add sym_sec to cache
+ mappings from local sym to section.
+ (link_hash_newfunc): New function.
+ (sparc64_elf_bfd_link_hash_table_create): Rename to
+ sparc64_elf_link_hash_table_create for consistency.
+ Pass link_hash_newfunc to _bfd_elf_link_hash_table_init.
+ (sparc64_elf_create_dynamic_sections): Initialize new section
+ members of sparc64_elf_link_hash_table. Only init srelbss
+ if not-shared.
+ (sparc64_elf_copy_indirect_symbol, sparc64_elf_tls_transition):
+ New functions.
+ (SPARC_NOP): Define.
+ (sparc64_elf_build_plt, sparc64_elf_plt_entry_offset,
+ sparc64_elf_plt_ptr_offset): Delete.
+ (sparc64_plt_entry_build): New function to build PLT entries
+ gradually instread of all at once at the end of linking.
+ (sparc64_elf_check_relocs): Delete dynobj, sgot, and srelgot
+ local vars. Get them from sparc64_elf_hash_table instead.
+ Check early on if r_symndx is in bounds. Handle TLS transitions.
+ Account for TLS GOT references and DF_STATIC_TLS, as needed.
+ For TLS relocs, record the tls_type in either
+ sparc64_elf_local_got_tls_type or sparc64_elf_hash_entry as
+ appropriate. For R_SPARC_TLS_{GD,LDM}_CALL, emit a reference
+ to the __tls_get_addr symbol. For PLT relocs, track references
+ via h->plt.refcount. When R_SPARC_{PC10,PC22,PC_HH22,PC_HM10,
+ PC_LM22} and h not-NULL, set h->non_got_ref. For global data
+ symbol references, count the number of relocations needed for
+ that symbol. For default switch case, don't error, this lets
+ the TLS relocs not explicitly handled by this function get
+ accepted.
+ (sparc64_elf_gc_mark_hook, sparc64_gc_sweep_hook): New functions.
+ (sparc64_elf_adjust_dynamic_symbol): Remove dynobj local var, get
+ it from sparc64_elf_hash_table. Store the real PLT offset
+ in h->plt.offset, and build PLT entries one at a time. Also
+ get .dynbss section pointer from htab.
+ (allocate_dynrelocs, readonly_dynrelocs,
+ sparc64_omit_section_dynsym): New functions.
+ (sparc64_elf_omit_section_dynsym): Use these new functions as
+ helpers.
+ (dtpoff_base, tpoff): New functions.
+ (sparc64_elf_relocate_section): Kill dynobj, sgot, and splt
+ locals, get them from sparc64_elf_hash_table. Handle TLS
+ relocations and refcounting in main relocation loop.
+ (sparc64_elf_finish_dynamic_symbol): Use
+ sparc64_elf_link_hash_table. Build PLT entries as we see
+ them. Handle TLS GOT relocations.
+ (sparc64_elf_finish_dynamic_sections): Get sgot and dynobj
+ from sparc64_elf_hash_table. Initialize only PLT header
+ not all entries since we not build PLT entries one by one.
+ (elf_backend_copy_indirect_symbol, bfd_elf64_mkobject,
+ elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook,
+ elf_backend_can_gc_sections, elf_backend_can_refcount): Define.
+
+2005-04-13 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elflink.c (elf_link_input_bfd): Update check for removed
+ sections.
+
+2005-04-12 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+ * aclocal.m4: Regenerate.
+ * libcoff.h: Regenerate.
+
+2005-04-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * linker.c (_bfd_generic_link_output_symbols): Also check if
+ the output section of an input section has been removed from
+ the output file.
+
+ * section.c (bfd_section_list_remove): Clear the next field
+ of the removed section.
+ (bfd_section_removed_from_list): New.
+ * bfd-in2.h: Regenerated.
+
+2005-04-11 David S. Miller <davem@davemloft.net>
+
+ * elf32-sparc.c (elf32_sparc_relocate_section,
+ R_SPARC_TLS_LDO_{HIX22,LOX10}): When not shared, transition to
+ R_SPARC_TLS_LE_{HIX22,LOX10}.
+ (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_HIX22): Only
+ xor relocation with 0xffffffff if R_SPARC_TLS_LE_HIX22.
+ (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_LOX10): Only
+ or 0x1c00 into relocation if R_SPARC_TLS_LE_HIX22.
+
+2005-04-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h.
+
+2005-04-11 Nick Clifton <nickc@redhat.com>
+
+ * aout-target.h: Convert to ISO C.
+ * aoutf1.h: Convert to ISO C.
+ * aoutx.h: Convert to ISO C.
+ * bout.c: Convert to ISO C.
+ * dwarf1.c: Convert to ISO C.
+ * ecoffswap.h: Convert to ISO C.
+ * freebsd.h: Convert to ISO C.
+ * genlink.h: Convert to ISO C.
+ * ieee.c: Convert to ISO C.
+ * ihex.c: Convert to ISO C.
+ * libcoff-in.h: Convert to ISO C.
+ * mach-o.c: Convert to ISO C.
+ * mach-o.h: Convert to ISO C.
+ * netbsd.h: Convert to ISO C.
+ * ns32k.h: Convert to ISO C.
+ * ns32knetbsd.c: Convert to ISO C.
+ * oasys.c: Convert to ISO C.
+ * pdp11.c: Convert to ISO C.
+ * pef-traceback.h: Convert to ISO C.
+ * pef.c: Convert to ISO C.
+ * pef.h: Convert to ISO C.
+ * riscix.c: Convert to ISO C.
+ * som.c: Convert to ISO C.
+ * som.h: Convert to ISO C.
+ * srec.c: Convert to ISO C.
+ * stabs.c: Convert to ISO C.
+ * sunos.c: Convert to ISO C.
+ * tekhex.c: Convert to ISO C.
+ * versados.c: Convert to ISO C.
+ * version.h: Convert to ISO C.
+ * xcoff-target.h: Convert to ISO C.
+ * xcofflink.c: Convert to ISO C.
+ * xsym.c: Convert to ISO C.
+ * xsym.h: Convert to ISO C.
+
+2005-04-08 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c (ARM2THUMB_GLUE_SIZE): Rename...
+ (ARM2THUMB_STATIC_GLUE_SIZE): ... to this.
+ (ARM2THUMB_PIC_GLUE_SIZE): Define.
+ (a2t1p_ldr_insn, a2t2p_add_pc_insn, a2t3p_bx_r12_insn): Add.
+ (elf32_arm_to_thumb_stub): Create PIC stubs.
+ (record_arm_to_thumb_glue): Use different stub size for relocatable
+ images.
+
+2005-04-05 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (dec_dynrel_count): New function split out from
+ ppc64_elf_edit_toc, with additional code from ppc64_elf_edit_opd.
+ (ppc64_elf_edit_toc, ppc64_elf_edit_opd): Use it.
+ (ppc64_elf_tls_optimize): Likewise.
+
+2005-04-05 Mark Kettenis <kettenis@gnu.org>
+
+ * netbsd-core.c (SPARC_WCOOKIE_OFFSET): Renamed from
+ CORE_WCOOKIE_OFFSET.
+ (SPARC64_WCOOKIE_OFFSET): New.
+ (netbsd_core_file_p): Provide .wcookie section for OpenBSD/sparc64.
+
+2005-04-05 Nick Clifton <nickc@redhat.com>
+
+ * po/rw.po: New translation: Kinyarwanda
+ * configure.in (ALL_LINGUAS): Add rw
+ * configure: Regenerate.
+
+2005-04-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME_P): New macro.
+ (_bfd_mips_elf_section_from_shdr): Use it to check for recognized
+ SHT_MIPS_OPTIONS names. Allow all sections with unrecognised
+ section flags.
+ (_bfd_mips_elf_fake_sections): Use MIPS_ELF_OPTIONS_SECTION_NAME_P
+ to check for SHT_MIPS_OPTIONS sections.
+ (_bfd_mips_elf_set_section_contents): Likewise.
+
+2005-04-04 Eric Christopher <echristo@redhat.com>
+
+ * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents):
+ Clean up gp handling code.
+
+2005-04-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (bfd_elf_set_group_contents): Ignore linker created
+ group section.
+ (assign_section_numbers): Accept link_info. Check SHT_GROUP
+ sections for relocatable files only. Remove the linker created
+ group sections.
+ (_bfd_elf_compute_section_file_positions): Pass link_info to
+ assign_section_numbers.
+
+ * elfxx-ia64.c (elfNN_ia64_object_p): New.
+ (elf_backend_object_p): Defined.
+
+2005-04-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_section_data): Use (sec) instead of sec.
+
+2005-04-03 Fred Fish <fnf@specifixinc.com>
+
+ * dwarf2.c (struct dwarf2_debug): Add dwarf_ranges_buffer and
+ dwarf_ranges_size members.
+ (struct comp_unit): Add base_address member.
+ (struct funcinfo): Replace low/high members with an arange.
+ (arange_add): Replace incoming "unit" parameter with "abfd" and
+ "first_arange" pointers. Reorganize/rewrite function body.
+ (decode_line_info): Change arange_add call to pass bfd and arange
+ pointers.
+ (lookup_address_in_line_info_table): Use arange list instead of
+ individual low/high members. Walk function's arange list to find
+ lowest PC in list, to test for overlapping functions.
+ (read_debug_ranges): New function, reads the debug_ranges section.
+ (lookup_address_in_function_table): Use arange list instead of
+ individual low/high members. Rewrite to find smallest range that
+ matches.
+ (read_rangelist): Read a given rangelist from debug_ranges.
+ (scan_unit_for_functions): Use arange list instead of individual
+ low/high members. Handle a DW_AT_ranges attribute.
+ (parse_comp_unit): Use arange list instead of individual low/high
+ members. Save comp unit base address. Handle a DW_AT_ranges
+ attribute.
+
+2005-04-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (assign_section_numbers): Really use the kept section.
+
+2005-03-31 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (_bfd_elf_check_kept_section): New.
+
+ * elf.c (assign_section_numbers): When sh_link points to a
+ discarded section, call _bfd_elf_check_kept_section to see if
+ the kept section can be used. Otherwise reject sh_link
+ pointing to discarded section.
+
+ * elflink.c (_bfd_elf_check_kept_section): New.
+ (elf_link_input_bfd): Use it.
+
+2005-04-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Account for dynamic relocs
+ that we no longer need.
+
+2005-04-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Return -1 on errors
+ rather than 0.
+ (ppc64_elf_check_relocs): Remove unnecessary SEC_ALLOC check.
+
+2005-03-31 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (assign_section_numbers): Fix a typo.
+
+2005-03-31 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_link_input_bfd): Remove the extra `\n' in
+ error message.
+ (_bfd_elf_section_already_linked): Likewise.
+
+2005-03-31 Jerome Guitton <guitton@gnat.com>
+
+ * config.in: Regenerate.
+
+2005-03-31 Jerome Guitton <guitton@gnat.com>
+
+ * config.in (HAVE_DECL_BASENAME): New configure macro.
+ * configure.in: Check for basename.
+ * configure: Regenerate.
+
+2005-03-30 Julian Brown <julian@codesourcery.com>
+
+ * bfd-in.h (bfd_is_arm_mapping_symbol_name): Rename from
+ bfd_elf32_is_arm_mapping_symbol_name.
+ * bfd-in2.h: Regenerate.
+ * cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename from
+ bfd_elf32_is_arm_mapping_symbol_name.
+ * elf32-arm.c (elf32_arm_is_target_special_symbol): Rename
+ bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name.
+ (arm_elf_find_function): Likewise.
+ (elf32_arm_output_symbol_hook): Likewise.
+
+2005-03-30 Julian Brown <julian@codesourcery.com>
+
+ * bfd-in.h (bfd_elf32_is_arm_mapping_symbol_name): Add prototype.
+ * bfd-in2.h: Regenerate.
+ * elf32-arm.c (elf32_arm_is_target_special_symbol): Rename call to
+ bfd_elf32_is_arm_mapping_symbol_name.
+ (elf32_arm_output_symbol_hook): Likewise.
+ (arm_elf_find_function): Likewise, and include STT_NOTYPE in test for
+ mapping symbols.
+ (is_arm_mapping_symbol_name): Function moved from here...
+ * cpu-arm.c (bfd_elf32_is_arm_mapping_symbol_name): ...to here, renamed
+ and made global.
+
+2005-03-29 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
+
+ * configure.in: Check for ffs decl and alphabetize.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize.
+
+2005-03-29 Fred Fish <fnf@specifixinc.com>
+
+ * dwarf2.c (struct comp_unit): Fix typo.
+ (scan_unit_for_functions): Remove unused local variable "name"
+ and dead code that set it.
+
+2005-03-29 Daniel Jacobowitz <dan@codesourcery.com>
+ Phil Blundell <philb@gnu.org>
+
+ * bfd-in2.h, libbfd.h: Regenerated.
+ * reloc.c: Add ARM TLS relocations.
+ * elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS
+ relocations.
+ (elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto)
+ (elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto)
+ (elf32_arm_tls_ie32_howto): New.
+ (elf32_arm_howto_from_type): Support TLS relocations.
+ (elf32_arm_reloc_map): Likewise.
+ (elf32_arm_reloc_type_lookup): Likewise.
+ (TCB_SIZE): Define.
+ (struct elf32_arm_obj_tdata): New.
+ (elf32_arm_tdata, elf32_arm_local_got_tls_type): Define.
+ (elf32_arm_mkobject): New function.
+ (struct elf32_arm_relocs_copied): Add pc_count.
+ (elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD)
+ (GOT_TLS_IE): Define.
+ (struct elf32_arm_link_hash_table): Add tls_ldm_got.
+ (elf32_arm_link_hash_newfunc): Initialize tls_type.
+ (elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type.
+ (elf32_arm_link_hash_table_create): Initialize tls_ldm_got.
+ (dtpoff_base, tpoff): New functions.
+ (elf32_arm_final_link_relocate): Handle TLS relocations.
+ (IS_ARM_TLS_RELOC): Define.
+ (elf32_arm_relocate_section): Warn about TLS mismatches.
+ (elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count.
+ (elf32_arm_check_relocs): Detect invalid symbol indexes. Handle
+ TLS relocations and pc_count.
+ (elf32_arm_adjust_dynamic_symbol): Check non_got_ref.
+ (allocate_dynrelocs): Handle TLS. Bind REL32 relocs to local
+ calls.
+ (elf32_arm_size_dynamic_sections): Handle TLS.
+ (elf32_arm_finish_dynamic_symbol): Likewise.
+ (bfd_elf32_mkobject): Define.
+
+2005-03-29 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_check_relocs): Increment count for all
+ relocation types. Don't count relocations which will use a PLT.
+
+2005-03-29 Joel Brobecker <brobecker@gnat.com>
+
+ * elf.c (elfcore_grok_nto_status): Print tid as long.
+ (elfcore_grok_nto_regs): Likewise.
+
+2005-03-29 Joel Brobecker <brobecker@gnat.com>
+
+ * irix-core.c: Remove some unnecessary prototypes.
+
+2005-03-28 Joel Brobecker <brobecker@adacore.com>
+
+ * irix-core.c: Convert to ISO C.
+
+2005-03-28 Joel Brobecker <brobecker@adacore.com>
+
+ * irix-core.c (do_sections): Replace + by | in expression.
+ (irix_core_core_file_matches_executable_p): Add ATTRIBUTE_UNUSED
+ to unused parameters to avoid a compiler warning.
+
+2005-03-28 Mark Kettenis <kettenis@gnu.org>
+
+ * netbsd-core.c: Convert to ISO C. Fix formatting.
+
+2005-03-24 Eric Christopher <echristo@redhat.com>
+
+ * elfxx-mips.c: Revert previous patch.
+
+2005-03-24 Nick Clifton <nickc@redhat.com>
+
+ * targets.c (_bfd_target_vector): Only include the
+ bfd_elf32_ia64_hpux_big_vec vector when building a 64-bit BFD with
+ all targets enabled.
+
+2005-03-24 James E Wilson <wilson@specifixinc.com>
+
+ * Makefile.am (BFD32_BACKENDS): Delete elf32-ia64.lo.
+ (BFD64_BACKENDS): Add elf32-ia64.lo.
+ * Makefile.in: Regenerate.
+
+2005-03-23 Eric Christopher <echristo@redhat.com>
+
+ * elfxx-mips.c (MIPS_ELF_READONLY_SECTION): New.
+ (mips_elf_calculate_relocation): Use. Define DF_TEXTREL
+ after emitting relocation.
+ (_bfd_mips_elf_adjust_dynamic_symbol): Ditto.
+ (_bfd_mips_elf_check_relocs): Remove code to set DF_TEXTREL
+ and readonly_reloc.
+
+2005-03-23 Mike Frysinger <vapier@gentoo.org>
+ Nick Clifton <nickc@redhat.com>
+
+ * config.bfd: Accept any C library to accompany a GNU Linux
+ implementation, not just the GNU C library.
+ * configure.in: Likewise.
+ * configure: Regenerate.
+
+2005-03-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in.h (_bfd_elf_provide_symbol): New.
+ * bfd-in2.h: Regenerated.
+
+ * elf32-ppc.c (set_linker_sym): Moved to elflink.c.
+ (ppc_elf_set_sdata_syms): Call _bfd_elf_provide_symbol instead
+ of set_linker_sym.
+
+ * elflink.c (_bfd_elf_provide_symbol): New. Moved and renamed
+ from elf32-ppc.c.
+
+2005-03-22 Hans-Peter Nilsson <hp@axis.com>
+
+ * hash.c (strtab_hash_newfunc): Fix typo in allocated size.
+
+2005-03-22 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-isa.c (xtensa_opcode_lookup, xtensa_state_lookup,
+ xtensa_sysreg_lookup_name, xtensa_interface_lookup,
+ xtensa_funcUnit_lookup): Skip bsearch call if count is zero.
+ (xtensa_opcode_decode): Rearrange code.
+
+2005-03-22 Nick Clifton <nickc@redhat.com>
+
+ * binary.c: Convert to ISO C90 formatting.
+ * coff-arm.c: Convert to ISO C90 formatting.
+ * coffgen.c: Convert to ISO C90 formatting.
+ * elf32-gen.c: Convert to ISO C90 formatting.
+ * elf64-gen.c: Convert to ISO C90 formatting.
+ * hash.c: Convert to ISO C90 formatting.
+ * ieee.c: Convert to ISO C90 formatting.
+
+2005-03-22 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Don't fail for
+ unresolved symbols in R_ARM_NONE relocations.
+
+2005-03-22 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Add
+ UNRESOLVED_RELOC_P argument. Set it appropriately.
+ (elf32_arm_relocate_section): Update call to
+ elf32_arm_final_link_relocate. Don't clobber RELOCATION; use
+ unresolved_reloc instead.
+
+2005-03-23 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_link_add_object_symbols): Set SEC_EXCLUDE on
+ .gnu.warning.* sections.
+
+2005-03-22 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (elf_linker_section_pointers_t): Remove
+ written_address_p.
+ (ppc_elf_create_linker_section): Don't try to reuse existing section.
+ (elf_create_pointer_linker_section): Delete info parm. Don't make
+ h dynamic. Don't set written_address_p.
+ (ppc_elf_check_relocs): Adjust ppc_elf_create_linker_section calls.
+ (bfd_put_ptr): Delete.
+ (elf_finish_pointer_linker_section): Remove output_bfd and info parms.
+ Always write section contents. Assert global sym is def_regular.
+ Use offset bottom bit as a written flag.
+ (ppc_elf_relocate_section): Adjust elf_finish_pointer_linker_section
+ calls.
+
+2005-03-22 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_set_sdata_syms): New function, extracted from..
+ (ppc_elf_set_sdata_syms): ..here. Expand comment. Set .sbss start
+ and end syms.
+
+2005-03-21 Nick Clifton <nickc@redhat.com>
+
+ * coff-arm.c (coff_link_hash_entry): Only define for non WINCE
+ targets.
+ (t2a1_bx_pc_insn): Likewise.
+ (t2a2_noop_insn): Likewise.
+ (t2a3_b_insn): Likewise.
+ (t2a1_push_insn): Likewise.
+ (t2a2_ldr_insn): Likewise.
+ (t2a3_mov_insn): Likewise.
+ (t2a4_bx_insn): Likewise.
+ (t2a5_pop_insn): Likewise.
+ (t2a6_bx_insn): Likewise.
+ (coff_arm_relocate_section): Only declare the high_address
+ variable for non WINCE targets.
+
+2005-03-22 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_add_symbol_hook): Make htab->sbss
+ SEC_LINKER_CREATED. Attach to dynobj.
+ (ppc_elf_size_dynamic_sections): Strip htab->sbss if zero size.
+
+2005-03-21 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (struct elf_linker_section): Remove sym_hash and
+ sym_offset. Add name, bss_name, sym_name, sym_val.
+ (struct ppc_elf_link_hash_table): Remove sdata and sdata2 pointers.
+ Add sdata array of elf_linker_section_t.
+ (ppc_elf_link_hash_table_create): Set name, sym_name, and bss_name.
+ (enum elf_linker_section_enum): Delete.
+ (ppc_elf_create_linker_section): Rewrite. Don't create syms here.
+ (ppc_elf_check_relocs): Delay ppc_elf_create_linker_section until
+ the special sections are needed. Adjust htab->sdata refs.
+ Ensure dynobj is set in sreloc code.
+ (ppc_elf_size_dynamic_sections): Strip sdata sections.
+ (ppc_elf_set_sdata_syms): New function.
+ (elf_finish_pointer_linker_section): Use 0x8000 for sym_offset.
+ (ppc_elf_relocate_section): Adjust references to htab->sdata. Use
+ sym_val instead of sym_hash.
+ * elf32-ppc.h (ppc_elf_set_sdata_syms): Declare.
+
+2005-03-21 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (is_ppc_elf_target): Move to linker part of file.
+ (ppc_elf_merge_private_bfd_data): Likewise.
+
+2005-03-21 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (struct elf_linker_section): Remove rel_section.
+ (ppc_elf_create_linker_section): Don't create rel_section.
+ (elf_create_pointer_linker_section): Don't size relocs.
+ (elf_finish_pointer_linker_section): Remove relative_reloc parm.
+ Don't generate relocs.
+ (ppc_elf_relocate_section): Adjust calls to
+ elf_finish_pointer_linker_section.
+
+2005-03-21 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (is_ppc_elf_target): New function.
+ (ppc_elf_merge_private_bfd_data): Use it rather than just testing
+ for bfd_target_elf_flavour. Do this test before endian check.
+ (ppc_elf_add_symbol_hook): Use is_pcc_elf_target.
+ (ppc_elf_size_dynamic_sections): Likewise.
+
+2005-03-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_backend_data): Add int to
+ elf_backend_section_from_shdr.
+ (bfd_elf_section_data): Update comment for this_idx.
+ (_bfd_elf_make_section_from_shdr): Add int.
+ * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
+
+ * elf.c (_bfd_elf_make_section_from_shdr): Take section index
+ and use it to set this_idx in bfd_elf_section_data.
+ (bfd_section_from_shdr): Pass shindex to
+ _bfd_elf_make_section_from_shdr.
+ (_bfd_elf_section_from_bfd_section): Use this_idx in
+ bfd_elf_section_data to find section index.
+
+ * elf32-arm.c (elf32_arm_section_from_shdr): Take section
+ index and pass it to _bfd_elf_make_section_from_shdr.
+ * elf32-i370.c(i370_elf_section_from_shdr): Likewise.
+ * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
+ * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
+ * elf32-v850.c (v850_elf_section_from_shdr): Likewise.
+ * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
+ * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_section_from_shdr): Likewise.
+ * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
+
+2005-03-19 Danny Smith <dannysmith@users.sourceforge.net>
+ Ross Ridge <rridge@csclub.uwaterloo.ca>
+
+ * peicode.h (pe_ILF_build_a_bfd): Strip only one prefix
+ character in IMPORT_NAME_UNDECORATE and IMPORT_NAME_NOPREFIX
+ cases. Add comment.
+
+2005-03-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_mark_used_section): Remove check for special
+ sections.
+
+2005-03-18 Andreas Schwab <schwab@suse.de>
+
+ * elfxx-ia64.c (elfNN_ia64_install_value): Change type of insn
+ from bfd_vma to ia64_insn, remove broken cast.
+
+2005-03-18 C Jaiprakash <cjaiprakash@noida.hcltech.com>
+
+ * elf32-m68k.c (elf_cfv4e_plt0_entry): plt entry for coldfire v4e.
+ (elf_m68k_adjust_dynamic_symbol,elf_m68k_finish_dynamic_symbol,
+ elf_m68k_finish_dynamic_sections): Use it.
+
+2005-03-17 Paul Brook <paul@codesourcery.com>
+ Dan Jacobowitz <dan@codesourcery.com>
+ Mark Mitchell <mark@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_modify_segment_map): New function.
+ (elf32_arm_additional_program_headers): Likewise.
+ (elf_backend_modify_segment_map): Define.
+ (elf_backend_additional_program_headers): Likewise.
+ (elf32_arm_symbian_modify_segment_map): Use
+ elf32_arm_modify_segment_map.
+
+2005-03-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_mark_used_section): Check bfd_is_const_section
+ for special sections.
+
+2005-03-18 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (_bfd_elf_link_renumber_dynsyms): Delete.
+ * elflink.c (_bfd_elf_link_renumber_dynsyms): Make static, add
+ section_sym_count param, and return number of section symbols.
+ (bfd_elf_size_dynamic_sections): Clear section symbol area of
+ .dynsym contents. Don't bother calling swap_symbol_out on the
+ first all-zero dynsym.
+ (elf_mark_used_section): Formatting. Avoid twiddling flags in
+ special sections like bfd_abs_section.
+ (bfd_elf_gc_sections): Spelling fix.
+
+2005-03-16 Fred Fish <fnf@specifixinc.com>
+
+ PR binutils/790
+ * dwarf2.c (read_indirect_string): Fix apparent typo, check
+ dwarf_str_buffer allocation, not dwarf_abbrev_buffer.
+
+2005-03-16 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (elf_mark_used_section): New.
+ (bfd_elf_gc_sections): Call elf_gc_mark_section for
+ non-relocatable link if we don't do GC.
+
+2005-03-16 Nick Clifton <nickc@redhat.com>
+ Ben Elliston <bje@au.ibm.com>
+
+ * configure.in (werror): New switch: Add -Werror to the
+ compiler command line. Enabled by default. Disable via
+ --disable-werror.
+ * configure: Regenerate.
+
+2005-03-16 Nick Clifton <nickc@redhat.com>
+
+ * ecoff.c: Convert to ISO C90 formatting.
+
+2005-03-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c: Divide file into general and linker specific
+ functions. Sort linker functions into roughly the order in which
+ they are called by the ELF linker code.
+
+2005-03-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_create_linker_section): Set SEC_LINKER_CREATED
+ on section. Correct comment, and add FIXME.
+ (ppc_elf_additional_program_headers): Don't bump header count for
+ interp. Test SEC_ALLOC, not SEC_LOAD, and don't test size.
+ (ppc_elf_size_dynamic_sections): Don't strip sdata and sdata2, but
+ do allocate memory if they need it.
+
+2005-03-15 Mikkel Krautz <krautz@gmail.com>
+
+ * config.bfd (x86_64-elf): Add target.
+
+2005-03-15 Alan Modra <amodra@bigpond.net.au>
+
+ * po/es.po: Commit new Spanish translation.
+
+2005-03-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_relocate_section): Set symbo name
+ for global symbol when reporting overflow.
+
+2005-03-11 Jakub Jelinek <jakub@redhat.com>
+
+ * libbfd-in.h (_bfd_ar_spacepad): New prototype.
+ * libbfd.h: Rebuilt.
+ * archive.c (_bfd_ar_spacepad): New function.
+ (_bfd_construct_extended_name_table, _bfd_write_archive_contents,
+ bsd_write_armap, _bfd_archive_bsd_update_armap_timestamp,
+ coff_write_armap): Use it.
+ (bfd_ar_hdr_from_filesystem): Likewise. Fix HP-UX large
+ uid/gid support.
+ * archive64.c (bfd_elf64_archive_write_armap): Use _bfd_ar_spacepad.
+
+2005-03-10 Mark Kettenis <kettenis@gnu.org>
+
+ * archive.c (_bfd_look_for_bfd_in_cache): Move declaration of
+ has_table to the start of the function.
+
+2005-03-10 Ben Elliston <bje@au.ibm.com>
+
+ * archive.c: Include hashtab.h.
+ (struct ar_cache): Rename `arelt' to `arbfd' and remove `next'.
+ (_bfd_look_for_bfd_in_cache): Reimplement using htab_find.
+ (hash_file_ptr): New function.
+ (eq_file_ptr): Likewise.
+ (_bfd_add_bfd_to_archive_cache): Reimplement using a hash table.
+ * libbfd-in.h: Include hashtab.h.
+ (struct artdata): Change `cache' member type to htab_t.
+ * libbfd.h: Rebuild.
+
+2005-03-08 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * configure.in: Bump version to 2.16.90.
+ * configure: Regenerated.
+
+2005-03-07 Jakub Jelinek <jakub@redhat.com>
+
+ * opncls.c (opncls_bread, opncls_bclose): Fix if pread resp.
+ close is a function like macro in system headers.
+
+2005-03-07 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/778
+ * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Reinstate
+ _GLOBAL_OFFSET_TABLE_ as a normal dynamic symbol.
+
+2005-03-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (elfcore_grok_win32pstatus): Warning fixes.
+
+2005-03-05 Alan Modra <amodra@bigpond.net.au>
+
+ * po/bfd.pot: Regenerate.
+
+2005-03-05 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (update_plt_info): Don't mark new ABI call syms
+ with is_func.
+ (func_desc_adjust): Force dot-syms local in executables as well
+ as shared libs.
+
+2005-03-04 David Daney <ddaney@avtrex.com>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Handle special
+ '__gnu_local_gp' symbol used by gas -mno-shared.
+
+2005-03-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_backend_data): Add "const char *" to
+ elf_backend_section_from_phdr.
+
+ * elf.c (bfd_section_from_phdr): Pass "proc" to the
+ elf_backend_section_from_phdr hook.
+
+2005-03-02 Daniel Jacobowitz <dan@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * elfxx-mips.c (struct mips_got_entry): Add tls_type.
+ (struct mips_got_info): Add tls_gotno, tls_assigned_gotno,
+ and tls_ldm_offset.
+ (struct mips_elf_got_per_bfd_arg): Add global_count.
+ (struct mips_elf_count_tls_arg): New.
+ (struct mips_elf_hash_sort_data): Update comment for min_got_dynindx.
+ (struct mips_elf_link_hash_entry): Add tls_type and tls_got_offset.
+ (GOT_NORMAL, GOT_TLS_GD, GOT_TLS_LDM, GOT_TLS_IE)
+ (GOT_TLS_OFFSET_DONE, GOT_TLS_DONE): Define.
+ (TLS_RELOC_P): Define.
+ (TP_OFFSET, DTP_OFFSET): Define.
+ (dtprel_base, tprel_base): New functions.
+ (mips_elf_link_hash_newfunc): Initialize tls_type.
+ (mips_elf_got_entry_hash, mips_elf_got_entry_eq)
+ (mips_elf_multi_got_entry_hash, mips_elf_multi_got_entry_eq): Handle
+ TLS entries.
+ (mips_tls_got_relocs, mips_elf_count_local_tls_relocs)
+ (mips_elf_count_global_tls_entries, mips_elf_count_global_tls_relocs)
+ (mips_elf_output_dynamic_relocation, mips_elf_initialize_tls_slots)
+ (mips_tls_got_index): New functions.
+ (mips_elf_local_got_index): Add new R_SYMNDX, H, and R_TYPE
+ arguments. Pass them to mips_elf_create_local_got_entry. Use
+ mips_tls_got_index.
+ (mips_elf_global_got_index): Add new R_TYPE and INFO arguments.
+ Handle TLS entries.
+ (mips_elf_got_page, mips_elf_got16_entry): Update calls to
+ mips_elf_create_local_got_entry.
+ (mips_elf_create_local_got_entry): Add new R_SYMNDX, H, and R_TYPE
+ arguments. Handle TLS entries.
+ (mips_elf_sort_hash_table_f): Add non-TLS assertions.
+ (mips_elf_record_local_got_symbol): Add new TLS_FLAG argument. Handle
+ TLS entries.
+ (mips_elf_record_global_got_symbol): Likewise.
+ (mips_elf_make_got_per_bfd): Initialize new mips_got_info members.
+ Count TLS entries.
+ (mips_elf_merge_gots): Handle TLS entries when merging.
+ (mips_elf_initialize_tls_index): New function.
+ (mips_elf_set_global_got_offset): Handle TLS entries.
+ (mips_elf_adjust_gp): Handle TLS.
+ (mips_elf_multi_got): Remove redundant call to
+ mips_elf_resolve_final_got_entries. Initialize global_count.
+ Correct a comment. Initialize new TLS members of mips_got_info.
+ Assign TLS GOT indexes for new GOTs.
+ (mips_elf_create_got_section): Initialize new TLS members of
+ mips_got_info.
+ (mips_elf_calculate_relocation): Handle TLS relocs.
+ (_bfd_mips_elf_check_relocs): Likewise. Update calls to changed
+ functions.
+ (_bfd_mips_elf_always_size_sections): Handle TLS.
+ (_bfd_mips_elf_size_dynamic_sections): Likewise.
+ (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Update calls to
+ changed functions.
+ (_bfd_mips_elf_copy_indirect_symbol): Copy tls_type.
+ (_bfd_mips_elf_hide_symbol): Handle TLS.
+ * elfn32-mips.c (elf_mips_howto_table_rel, elf_mips_howto_table_rela)
+ (mips_reloc_map): Add TLS relocs.
+ * elf32-mips.c (elf_mips_howto_table_rel, mips_reloc_map): Likewise.
+ * elf64-mips.c (mips_elf64_howto_table_rel)
+ (mips_elf64_howto_table_rela, mips_reloc_map): Likewise.
+ * reloc.c: Define new MIPS TLS relocations.
+ * libbfd.h, bfd-in2.h: Regenerated.
+
+2005-03-02 Jan Beulich <jbeulich@novell.com>
+
+ * Makefile.am: Add dependency of cache.o on libiberty.h.
+ * cache.c: Include libiberty.h.
+ (bfd_open_file): Use unlink_if_ordinary instead of unlink.
+
+2005-03-01 Zack Weinberg <zack@codesourcery.com>
+
+ * elf.c (bfd_section_from_shdr <default case>): Call
+ elf_backend_section_from_shdr hook unconditionally, and return
+ what it returns.
+ (bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr.
+ * elfxx-target.h (elf_backend_section_from_shdr)
+ (elf_backend_section_from_phdr): Default to
+ _bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr
+ respectively.
+
+2005-03-01 Alan Modra <amodra@bigpond.net.au>
+
+ * targets.h: Typo fix.
+ * bfd-in2.h: Regenerate.
+
+ * bout.c (b_out_write_object_contents): Don't use sizeof on host
+ structs to size on-disk structures.
+ (b_out_set_section_contents): Size the external struct, not the
+ internal one for on-disk size.
+ (b_out_sizeof_headers): Likewise.
+
+2005-03-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Override defined dot-sym
+ entry points with the func descriptor as well as undefweak.
+
+2005-02-28 Ross Ridge <rridge@csclub.uwaterloo.ca>
+
+ * peicode.h (pe_ILF_build_a_bfd): Do not assume that an @ will be
+ present when IMPORT_NAME_UNDOECRATE is used.
+
+2005-02-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 757
+ * elf-bfd.h (_bfd_elf_merge_symbol): Add a pointer to unsigned
+ int.
+
+ * elf32-sh-symbian.c (sh_symbian_relocate_section): Pass NULL
+ to _bfd_elf_merge_symbol.
+
+ * elflink.c (_bfd_elf_merge_symbol): Use the pointer to
+ unsigned int to return the alignment of the old common symbol
+ in the dynamic object.
+ (_bfd_elf_add_default_symbol): Pass NULL to
+ _bfd_elf_merge_symbol.
+ (elf_link_add_object_symbols): Pass &old_alignment to
+ _bfd_elf_merge_symbol. Get the alignment of the new common
+ symbol in the dynamic object.
+
+2005-02-24 Ben Elliston <bje@au.ibm.com>
+
+ * coffcode.h (coff_sym_filepos): Remove GNU960 conditional code.
+ * format.c (bfd_check_format_matches): Likewise.
+ * archive.c (BFD_GNU960_ARMAG): Likewise.
+ (bfd_generic_archive_p): Likewise.
+ (_bfd_write_archive_contents): Likewise.
+
+2005-02-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.95.
+ * configure: Regenerate.
+
+2005-02-24 Julian Brown <julian@sirius.codesourcery.com>
+
+ * elflink.c (elf_link_add_object_symbols): Force symbols in discarded
+ COMDAT group sections to have default visibility.
+
+2005-02-24 Alan Modra <amodra@bigpond.net.au>
+
+ * coffcode.h (coff_print_aux): Warning fix.
+ * elf-m10300.c (mn10300_elf_relax_section): Use section->id
+ instead of section pointer to identify.
+ * coff-h8300.c (h8300_reloc16_extra_cases): Likewise. Allocate
+ the correct size buffer for local sym mangling too.
+ (h8300_bfd_link_add_symbols): Likewise.
+ * elf32-sh-symbian.c (sh_symbian_process_embedded_commands): Fix
+ warning.
+ * elf32-sh64.c (shmedia_prepare_reloc): Use %B and %p in error message
+ * elf32-xtensa.c (literal_value_hash): Warning fix.
+ * versados.c (process_otr): Warning fix.
+ (versados_canonicalize_reloc): Likewise.
+ * vms-gsd.c (_bfd_vms_slurp_gsd): Warning fix.
+ * vms.c (fill_section_ptr): Warning fix.
+
+2005-02-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Defined.
+ * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Likewise.
+
+2005-02-23 Nick Clifton <nickc@redhat.com>
+
+ * elfxx-mips.c (mips_elf_create_dynamic_relocation): Initialise
+ the relvaddr field of the Elf32_crinfo structure.
+
+ * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Initialise
+ variables that are passed by reference to
+ m68hc11_get_relocation_value in case that function does not
+ initialise them.
+
+ * elf32-cr16c.c (cr16c_elf_final_link_relocate): Remove duplicated
+ return statements and replace with a single return at the end of
+ the function. This helps pacify the flow analysis code in gcc 4.0.
+
+ * elf.c (_bfd_elf_compute_section_file_positions): Initialise
+ strtab to avoid compile time warning.
+
+2005-02-23 Ben Elliston <bje@au.ibm.com>
+
+ * opncls.c (bfd_zalloc): Document this function.
+
+2005-02-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with
+ SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK.
+ Replace SEC_SHARED with SEC_COFF_SHARED.
+ (styp_to_sec_flags): Likewise.
+
+ * elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0.
+ (TARGET_LITTLE_SYM): Likewise.
+
+ * section.c (SEC_ARCH_BIT_0): Removed.
+ (SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with
+ SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE.
+ (SEC_SHARED): Renamed to ...
+ (SEC_COFF_SHARED): This.
+ (SEC_BLOCK): Renamed to ...
+ (SEC_TIC54X_BLOCK): This.
+ (SEC_CLINK): Renamed to ...
+ (SEC_TIC54X_CLINK): This.
+ (SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY,
+ SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the
+ end.
+ * bfd-in2.h: Regenerated.
+
+2005-02-21 Fred Fish <fnf@specifixinc.com>
+
+ * dwarf2.c (find_abstract_instance_name): Call recursively
+ to handle a DW_AT_specification.
+
+2005-02-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * elfxx-mips.c (ecoff_swap_rpdr_out, mips_elf_output_extsym,
+ mips_elf_create_dynamic_relocation,
+ _bfd_mips_elf_size_dynamic_sections, _bfd_mips_elf_final_link):
+ Remove #if 0'd code.
+
+2005-02-21 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am"
+ * Makefile.in: Regenerate.
+
+2005-02-21 Alan Modra <amodra@bigpond.net.au>
+
+ * coffgen.c (bfd_coff_get_comdat_section): Check that
+ coff_section_data isn't NULL.
+
+2005-02-21 Alan Modra <amodra@bigpond.net.au>
+
+ * bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
+ * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
+ * coff-rs6000.c (xcoff_write_armap_big): Warning fixes. Remove
+ useless assignments.
+ (xcoff_write_archive_contents_big): Likewise.
+ (_bfd_xcoff_put_ldsymbol_name): Likewise.
+ * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
+ * coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
+ * cofflink.c (process_embedded_commands): Warning fixes.
+ * cpu-arm.c: Delete unnecessary prototypes. Convert to C90.
+ Warning fixes.
+ * dwarf2.c: Warning fixes.
+ * elf-bfd.h: Likewise.
+ * elf-eh-frame.c: Likewise.
+ * elf-strtab.c: Likewise.
+ * elf.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-sh-symbian.c: Likewise.
+ * elf32-sh.c: Delete unnecessary prototypes. Warning fixes.
+ * elf64-sh64.c: Likewise.
+ * peicode.h: Likewise.
+ * elf64-mmix.c: Warning fixes.
+ * elfcode.h: Likewise.
+ * elfxx-mips.c: Likewise.
+ * libbfd-in.h: Likewise.
+ * libbfd.c: Likewise.
+ * mach-o.c: Likewise.
+ * merge.c: Likewise.
+ * mmo.c: Likewise.
+ * opncls.c: Likewise.
+ * pef.c: Likewise.
+ * srec.c: Likewise.
+ * vms-hdr.c: Likewise.
+ * vms-tir.c: Likewise.
+ * xtensa-isa.c: Likewise.
+ * xtensa-modules.c: Likewise.
+ * xsym.c: Likewise.
+ (pstrcmp): Use correct choice of string lengths. Fix return value.
+ (bfd_sym_module_name): Correct string length.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-02-17 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf32-frv.c (elf32_frv_relocate_section): Remove warning from
+ uninitialized check_segment[1] in TLSMOFF case.
+ Reported by Alan Modra.
+ (elf32_frv_relocate_section): Improve errors and warnings.
+
+2005-02-17 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Fix warning.
+
+2005-02-16 Alan Modra <amodra@bigpond.net.au>
+
+ * coff-arm.c (coff_arm_is_local_label_name): Warning fix.
+ * elf32-frv.c (frvfdpic_relocs_info_hash): Likewise.
+ * pef.c (bfd_pef_scan): Don't ignore return value of
+ bfd_pef_scan_start_address.
+ * mach-o.c (bfd_mach_o_scan): Don't ignore return value of
+ bfd_mach_o_scan_start_address.
+ * elfxx-ia64.c (elfNN_ia64_relax_brl): Rewrite for 32-bit bfd_vma.
+ * elfxx-mips.c: Remove unnecessary prototypes.
+ (sort_dynamic_relocs_64): Abort if not BFD64.
+
+2005-02-16 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero.
+ Skip toc reloc adjust if reloc_count is zero.
+
+2005-02-15 Nigel Stephens <nigel@mips.com>
+ Maciej W. Rozycki <macro@mips.com>
+
+ * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
+ reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
+ R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
+ (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
+ (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
+ dst_mask.
+ (mips16_gprel_reloc): Remove bit shuffling; call
+ _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
+ and _bfd_mips16_elf_reloc_shuffle() instead.
+ (mips16_reloc_map): New reloc map for MIPS16 relocs.
+ (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
+ relocs.
+ (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
+ elf_mips16_howto_table_rel.
+ * elf64-mips.c (mips16_elf64_howto_table_rel): New array for
+ MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16
+ relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
+ (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
+ (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
+ dst_mask.
+ (mips16_elf64_howto_table_rela): New array for MIPS16 RELA
+ reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
+ R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
+ placeholders.
+ (mips16_gprel_reloc): Remove bit shuffling; call
+ _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
+ and _bfd_mips16_elf_reloc_shuffle() instead.
+ (mips16_reloc_map): New reloc map for MIPS16 relocs.
+ (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
+ relocs.
+ (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
+ mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
+ * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
+ REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
+ R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
+ (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
+ (elf_mips16_gprel_howto): Likewise. Redefine src_mask and
+ dst_mask.
+ (mips16_gprel_reloc): Remove bit shuffling; call
+ _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
+ and _bfd_mips16_elf_reloc_shuffle() instead.
+ (mips16_reloc_map): New reloc map for MIPS16 relocs.
+ (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
+ relocs.
+ (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
+ elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
+ * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
+ handle bit shuffling for MIPS16 relocs.
+ (_bfd_mips16_elf_reloc_shuffle): Likewise.
+ (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
+ and _bfd_mips16_elf_reloc_shuffle().
+ (_bfd_mips_elf_generic_reloc): Likewise.
+ (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16
+ and R_MIPS16_LO16.
+ (mips_elf_obtain_contents): Remove bit shuffling.
+ (mips_elf_perform_relocation): Likewise; call
+ _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
+ instead.
+ (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16
+ and R_MIPS16_LO16.
+ * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
+ (_bfd_mips16_elf_reloc_shuffle): Likewise.
+ * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
+ (BFD_RELOC_MIPS16_HI16_S): Likewise.
+ (BFD_RELOC_MIPS16_LO16): Likewise.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-02-15 Jan Beulich <jbeulich@novell.com>
+
+ * elfxx-ia64.c (ia64_howto_table): Correct strings for
+ R_IA64_DTPMOD64[LM]SB.
+
+2005-02-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfxx-ia64.c (elfNN_ia64_relax_section): Allow relax
+ backward branch in the same section.
+ (elfNN_ia64_relocate_section): Inform users that the input
+ section is too big to relax br instruction when overflow
+ happens to R_IA64_PCREL21B, R_IA64_PCREL21BI, R_IA64_PCREL21M
+ and R_IA64_PCREL21F.
+
+2005-02-14 Orjan Friberg <orjanf@axis.com>
+
+ * elfcore.h (elf_core_file_p): Move the call to
+ elf_backend_object_p to allow the correct machine to be set before
+ processing the program headers.
+
+2005-02-14 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/716
+ * peicode.h (pe_bfd_copy_private_bfd_data): Copy the large address
+ aware flag from the input bfd to the output bfd.
+
+2005-02-11 Maciej W. Rozycki <macro@mips.com>
+
+ * elf32-mips.c (_bfd_mips_elf32_gprel16_reloc): Reject
+ R_MIPS_LITERAL relocations for external symbols.
+ * elf64-mips.c (mips_elf64_literal_reloc): Likewise.
+ * elfn32-mips.c (mips_elf_literal_reloc): Likewise.
+
+2005-02-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in2.h: Rebuilt.
+
+2005-02-11 Paul Brook <paul@codesourcery.com>
+
+ * elf-bfd.h (struct elf_link_hash_table): Add
+ is_relocatable_executable.
+ * elf.c (_bfd_elf_link_hash_table_init): Initialize it.
+ * elflink.c (bfd_elf_link_record_dynamic_symbol): Create local dynamic
+ symbols in relocatable executables.
+ (bfd_elf_record_link_assignment): Create dynamic section symbols in
+ relocatable executables.
+ (_bfd_elf_link_renumber_dynsyms): Ditto.
+ (bfd_elf_final_link): Ditto.
+ * elf32-arm.c (elf32_arm_final_link_relocate): Copy absolute
+ relocations into relocatable executables.
+ (elf32_arm_check_relocs): Crate dynamic sections for relocatable
+ executables. Also copy absolute relocations.
+ (elf32_arm_adjust_dynamic_symbol): Don't create copy relocations
+ in relocatable executables.
+ (allocate_dynrelocs): Copy relocations for relocatable executables.
+ Output dynamic symbols for symbols defined in linker scripts.
+
+2005-02-11 Nick Clifton <nickc@redhat.com>
+
+ * libbfd.c (read_signed_leb128): Use an unsigned type for 'shift'
+ to avoid a compile time warning.
+
+ * coff-alpha.c (alpha_adjust_reloc_in): Remove redundant test from
+ BFD_ASSERT.
+
+ * coff-tic4x.c (coff_rtype_to_howto): Move definition before
+ inclusion of coffcode.h so that it is actually picked up.
+
+ * coffcode.h (coff_std_swap_table): Add an unused attribute in
+ case it is not used.
+
+ * elf32-ip2k.c (ip2k_call_opcode, IS_CALL_OPCODE): Remove unused
+ structure and macro.
+
+ * elf32-iq2000.c (iq2000_reloc_map): Remove unused structure and
+ array.
+
+ * elf32-m32r.c (m32r_reloc_map_old): Use #ifdef USE_M32R_OLD_RELOC
+ to protect the declaration of this array.
+
+ * xsym.c (bfd_sym_parse_contained_variables_table_entry_v32):
+ Avoid call to memcpy with a size of 0.
+
+2005-02-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (toc_adjusting_stub_needed): Return true for
+ old-style branches to undefined dot-symbols which will be
+ satisfied by a plt call.
+
+2005-02-11 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (move_plt_plist): New function, extracted from..
+ (ppc64_elf_copy_indirect_symbol): ..here.
+ (func_desc_adjust): Use move_plt_plist.
+
+2005-02-10 Paul Brook <paul@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Handle R_ARM_THM_PC9.
+
+2005-02-10 Paul Brook <paul@codesourcery.com>
+
+ * elflink.c (bfd_elf_record_link_assignment): Make hidden and internal
+ symbols local.
+ (elf_link_renumber_hash_table_dynsyms): Ignore local symbols.
+ (elf_link_renumber_local_hash_table_dynsyms): New function.
+ (_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols.
+
+2005-02-10 Jakub Jelinek <jakub@redhat.com>
+
+ * bfd-in.h (BFD_LINKER_CREATED): Define.
+ * bfd-in2.h: Rebuilt.
+ * elflink.c (bfd_elf_size_dynamic_sections): Disregard
+ BFD_LINKER_CREATED bfds when determining input bfds without
+ .note.GNU-stack section.
+
+2005-02-10 Maciej W. Rozycki <macro@mips.com>
+
+ * elf64-mips.c (mips16_gprel_reloc): Update a comment.
+ * elfn32-mips.c (mips16_gprel_reloc): Keep R_MIPS16_GPREL
+ relocations against external symbols unchanged.
+
+2005-02-08 Paul Brook <paul@codesourcery.com>
+
+ * elflink.c (elf_link_input_bfd): Ignore symbols from null input
+ sections.
+
+2005-02-08 Hans-Peter Nilsson <hp@axis.com>
+
+ * elflink.c (elf_link_add_object_symbols): Don't add "warning: "
+ prefix here.
+
+2005-02-07 Maciej W. Rozycki <macro@mips.com>
+
+ * elf64-mips.c: Fix formatting throughout.
+
+2005-02-07 Maciej W. Rozycki <macro@mips.com>
+
+ * elfn32-mips.c (elf_mips_howto_table_rela): Fix a comment typo.
+
+2005-02-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove special handling for
+ *ABS*/*UND* sections.
+ (elf32_frv_relocate_section): Move zero-addend-required error...
+ (_frv_emit_got_relocs_plt_entries): ... here. Report error for
+ missing needed TLS section.
+
+2005-02-07 Hans-Peter Nilsson <hp@axis.com>
+
+ * aoutx.h (NAME(aout,find_nearest_line)): Correct case for N_SO
+ being the last symbol.
+ (aout_link_add_symbols): Just return TRUE if a warning
+ symbol was last.
+
+2005-02-07 Maciej W. Rozycki <macro@mips.com>
+
+ * elf32-mips.c (mips_elf_gprel32_reloc): Reject
+ R_MIPS_GPREL32 relocations against external symbols.
+ * elf64-mips.c (mips_elf64_gprel32_reloc): Replace an incorrect
+ comment.
+
+2005-02-07 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (elf_string_from_elf_strtab): Delete macro.
+ * elf.c (bfd_elf_string_from_elf_section): Expand occurrence of
+ elf_string_from_elf_strtab.
+ (_bfd_elf_setup_group_pointers, bfd_section_from_shdr): Likewise.
+ (bfd_section_from_shdr): For SHT_SYMTAB, load SHT_SYMTAB_SHNDX too
+ if it exists. Don't do the reverse for SHT_SYMTAB_SHNDX. For
+ SHT_STRTAB, check whether the strtab is for symtab or dynsymtab by
+ looking at cached symtab info first, before iterating over headers.
+ For SHT_REL and SHT_RELA, load dynsymtab if needed.
+ * elfcode.h (elf_object_p): Don't load section header stringtab
+ specially.
+
+2005-02-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_relocate_section): Disallow R_386_GOTOFF
+ against protected function when building shared library.
+
+ PR 584
+ * elf64-x86-64.c (is_32bit_relative_branch): New.
+ (elf64_x86_64_relocate_section): Alllow R_X86_64_PC32 on a
+ protected function symbol when building shared library for
+ 32bit relative branch instruction.
+
+2005-02-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (add_symbol_adjust): Don't create fake descriptor
+ syms when doing a relocatable link.
+ (ppc64_elf_gc_mark_hook): Check that syms are defined before looking
+ at u.def.section.
+ (ppc64_elf_tls_setup): Likewise.
+ (ppc64_elf_edit_opd): Don't use an undefined func desc sym.
+
+2005-02-04 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (struct ppc_link_hash_entry): Add "fake".
+ (link_hash_newfunc): Clear all locals using memset.
+ (make_fdh): Remove flags param. Always create fake func desc
+ weak. Link the descriptor with the code entry sym.
+ (ppc64_elf_archive_symbol_lookup): Don't return fake syms.
+ (add_symbol_adjust): Adjust make_fdh call.
+ (func_desc_adjust): Likewise. Twiddle any pre-existing fake
+ descriptor to strong undefined if code entry is strong.
+
+2005-02-04 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (bfd_elf_record_link_assignment): Do "provide" symbol
+ lookup here. Set to new before calling bfd_link_repair_undef_list.
+ (elf_smash_syms): Check that u.undef.weak isn't the not_needed bfd.
+
+2005-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ * linker.c (_bfd_link_hash_newfunc): Set all local fields.
+
+2005-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ * linker.c (_bfd_generic_link_add_one_symbol): Set u.undef.weak.
+ * elflink.c (elf_smash_syms): Restore symbols that were undefweak
+ before the as-needed lib was loaded. Abort on unexpected refs.
+
+2005-02-02 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_smash_syms): Expand comments.
+ (elf_link_add_object_symbols): Only call elf_smash_syms for
+ as-needed dynamic objects.
+
+ * elfxx-ia64.c (elfNN_ia64_new_elf_hash_entry): Don't clear
+ everything, just the field specific to ia64.
+ * elf64-hppa.c (elf64_hppa_new_dyn_hash_entry): Likewise.
+
+2005-02-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (func_desc_adjust): Move code creating func desc sym to..
+ (make_fdh): ..here. New function. Don't set BSF_OBJECT for
+ undefined syms.
+ (struct add_symbol_adjust_data): New.
+ (add_symbol_adjust): Make an undefweak func desc for old ABI
+ objects to link with --as-needed shared libs. Return fail status.
+ Don't adjust old ABI func entry sym to weak if func desc syms
+ isn't defined.
+ (ppc64_elf_check_directives): Adjust call to add_symbol_adjust,
+ and return status.
+
+2005-02-01 Hans-Peter Nilsson <hp@axis.com>
+
+ * cpu-cris.c (get_compatible): Rearrange disabled code and comment
+ for clarity.
+
+2005-02-01 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_check_directives): Move undefs list fixup..
+ * linker.c (bfd_link_repair_undef_list): ..to new function, but don't
+ remove anything but new and undefweak.
+ * elflink.c (_bfd_elf_link_create_dynamic_sections): Override any
+ existing _DYNAMIC.
+ (_bfd_elf_create_dynamic_sections): Formatting.
+ (bfd_elf_record_link_assignment): Call bfd_link_repair_undef_list.
+ (_bfd_elf_merge_symbol): Don't handle as-needed syms here.
+ (struct elf_smash_data): New.
+ (elf_smash_syms): New function.
+ (elf_link_add_object_symbols): Call elf_smash_syms. Don't add
+ unneeded dynamic objects to loaded list.
+ (elf_link_output_extsym): Don't handle as-needed here. Strip
+ bfd_link_hash_new symbols.
+ * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
+ delref when dynindx is already -1.
+ * elf64-alpha.c (elf64_alpha_output_extsym): Strip bfd_link_hash_new
+ symbols.
+ * elfxx-mips.c (mips_elf_output_extsym): Likewise.
+
+2005-02-01 Ben Elliston <bje@au.ibm.com>
+
+ * elfxx-target.h (bfd_elfNN_bfd_discard_group): Redefine.
+
+2005-02-01 Ben Elliston <bje@au.ibm.com>
+
+ * aout-arm.c, aout-target.h, aoutx.h, archive.c, armnetbsd.c,
+ bfd-in.h, bfdio.c, coff-alpha.c, coff-arm.c, coff-h8300.c,
+ coff-i860.c, coff-mcore.c, coff-or32.c, coff-ppc.c, coff-sh.c,
+ coff-sparc.c, coffcode.h, coffgen.c, cofflink.c, cpu-cris.c,
+ cpu-h8500.c, cpu-ns32k.c, ecoff.c, ecofflink.c, elf.c,
+ elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-hppa.c,
+ elf32-i860.c, elf32-ip2k.c, elf32-m32r.c, elf32-sh.c,
+ elf32-v850.c, elf64-mips.c, elf64-sparc.c, elflink.c,
+ i386aout.c, i386msdos.c, i386os9k.c, ieee.c, mach-o.c,
+ nlm32-sparc.c, oasys.c, opncls.c, pdp11.c, pe-mips.c, peXXigen.c,
+ pef.c, peicode.h, reloc.c, riscix.c, section.c, simple.c, som.c,
+ sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c,
+ hosts/delta68.h, hosts/vaxbsd.h: Remove #if 0'd code
+ throughout. Similarly, collapse #if 1'd code.
+
+2005-02-01 Ben Elliston <bje@au.ibm.com>
+
+ * elf-bfd.h (bfd_elf_discard_group): Remove.
+ * elf.c (bfd_elf_discard_group): Likewise.
+ * elfxx-target.h (bfd_elfNN_bfd_discard_group): Remove macro.
+
+2005-01-31 Richard Sandiford <rsandifo@redhat.com>
+
+ * elf-bfd.h (elf_backend_data): Add elf_backend_eh_frame_address_size.
+ (_bfd_elf_eh_frame_address_size): Declare.
+ * elfxx-target.h (elf_backend_eh_frame_address_size): Define a default.
+ (elfNN_bed): Initialize elf_backend_eh_frame_address_size.
+ * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Declare.
+ (elf_backend_eh_frame_address_size): Define.
+ * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): New function.
+ * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Get the address
+ size from the new backend hook.
+ (_bfd_elf_write_section_eh_frame): Likewise.
+ (_bfd_elf_eh_frame_address_size): New function.
+
+2005-01-31 Andrew Cagney <cagney@gnu.org>
+
+ * configure: Regenerate to track ../gettext.m4.
+
+2005-01-31 Mark Mitchell <mark@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_symbian_special_sections): Do not set
+ SHF_WRITE for .init_array, .fini_array, and .preinit_array.
+
+2005-01-31 Nick Clifton <nickc@redhat.com>
+
+ * confg.bfd: Make targets scheduled for obsoletion (m68k-lynxos,
+ sparc-lynxos, vax-vms) be obsolete.
+
+2005-01-28 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf-bfd.h (struct elf_backend_data): Add minpagesize.
+ * elf32-arm.c (ELF_MINPAGESIZE): Define.
+ * elf32-ppc.c (ELF_MINPAGESIZE): Define.
+ * elfcode.h (elf_object_p): Use minpagesize instead of
+ maxpagesize.
+ * elfxx-target.h (ELF_MINPAGESIZE): Default to ELF_MAXPAGESIZE.
+ (elfNN_bed): Include ELF_MINPAGESIZE.
+
+2005-01-28 Julian Brown <julian@codesourcery.com>
+
+ * bin-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
+ * bin-in2.h (bfd_elf32_arm_set_target_relocs): Update prototype.
+ * elf32-arm.c (elf32_arm_link_hash_table): Add fix_v4bx flag.
+ (bfd_elf32_arm_set_target_relocs): Add formal parameter fix_v4bx for
+ passing flag value from ld. Set flag value in global hash table entry.
+ (elf32_arm_final_link_relocate): Add code to implement R_ARM_V4BX
+ relocation.
+
+2005-01-27 Andrew Cagney <cagney@gnu.org>
+
+ * configure: Regenerate to track ../gettext.m4 change.
+
+2005-01-25 Mark Mitchell <mark@codesourcery.com>
+
+ * elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for
+ SymbianOS.
+
+2005-01-25 Alexandre Oliva <aoliva@redhat.com>
+
+ 2004-12-10 Alexandre Oliva <aoliva@redhat.com>
+ * elf32-frv.c (elf32_frv_relocate_section): Force local binding
+ for TLSMOFF.
+ * reloc.c: Add R_FRV_TLSMOFF.
+ * elf32-frv.c (elf32_frv_howto_table): Likewise.
+ (frv_reloc_map, frv_reloc_type_lookup): Map it.
+ (elf32_frv_relocate_section): Handle it.
+ (elf32_frv_check_relocs): Likewise.
+ * libbfd.h, bfd-in2.h: Rebuilt.
+ 2004-11-26 Alexandre Oliva <aoliva@redhat.com>
+ * elf32-frv.c (_frvfdpic_emit_got_relocs_plt_entries): Don't crash
+ when given an undefweak TLS symbol. Fix constant TLS PLT entries
+ such that they return the constant in gr9.
+ (_frvfdpic_relax_tls_entries): Don't crash for undefweak TLS
+ symbols.
+ (_frvfdpic_size_got_plt): Set _cooked_size of dynamic sections.
+ too, such that they shrink on relaxation.
+ (elf32_frvfdpic_finish_dynamic_sections): Check __ROFIXUP_END__ as
+ marking the position right past the _GLOBAL_OFFSET_TABLE_ value.
+ (_frvfdpic_assign_plt_entries): Shrink constant TLS PLT entries
+ if we can guarantee the use of 16-bit constants.
+ 2004-11-10 Alexandre Oliva <aoliva@redhat.com>
+ Introduce TLS support for FR-V FDPIC.
+ * reloc.c: Add TLS relocations.
+ * elf32-frv.c (elf32_frv_howto_table): Add TLS relocations.
+ (elf32_frv_rel_tlsdesc_value_howto): New.
+ (elf32_frv_rel_tlsoff_howto): New.
+ (frv_reloc_map): Add new mappings.
+ (struct frvfdpic_elf_link_hash_table): Add pointer to summary
+ reloc information.
+ (frvfdpic_dynamic_got_plt_info): New.
+ (frvfdpic_plt_tls_ret_offset): New.
+ (ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE): Move earlier.
+ (struct _frvfdpic_dynamic_got_info): Likewise. Add TLS members.
+ (struct _frvfdpic_dynamic_got_plt_info): Likewise.
+ (FRVFDPIC_SYM_LOCAL): Regard symbols defined in the absolute
+ section as local.
+ (struct frvfdpic_relocs_info): Add TLS fields.
+ (frvfdpic_relocs_info_hash): Warning clean up.
+ (frvfdpic_relocs_info_find): Initialize tlsplt_entry.
+ (frvfdpic_pic_merge_early_relocs_info): Merge TLS fields.
+ (FRVFDPIC_TLS_BIAS): Define.
+ (tls_biased_base): New.
+ (_frvfdpic_emit_got_relocs_plt_entries): Deal with TLS
+ relocations.
+ (frv_reloc_type_lookup): Likewise.
+ (frvfdpic_info_to_howto_rel): Likewise.
+ (elf32_frv_relocate_section): Likewise.
+ (_frv_create_got_section): Create the PLT section here.
+ (elf32_frvfdpic_create_dynamic_sections): Not here.
+ (_frvfdpic_count_nontls_entries): Move out of...
+ (_frvfdpic_count_got_plt_entries): ... here.
+ (_frvfdpic_count_tls_entries): Likewise. Add TLS support.
+ (_frvfdpic_count_relocs_fixups): Likewise. Add relaxation
+ support.
+ (_frvfdpic_relax_tls_entries): New.
+ (_frvfdpic_compute_got_alloc_data): Add TLS support.
+ (_frvfdpic_get_tlsdesc_entry): New.
+ (_frvfdpic_assign_got_entries): Add TLS support.
+ (_frvfdpic_assign_plt_entries): Likewise.
+ (_frvfdpic_reset_got_plt_entries): New.
+ (_frvfdpic_size_got_plt): Move out of...
+ (elf32_frvfdpic_size_dynamic_sections): ... here.
+ (_frvfdpic_relax_got_plt_entries): New.
+ (elf32_frvfdpic_relax_section): New.
+ (elf32_frvfdpic_finish_dynamic_sections): Add TLS sanity check.
+ (elf32_frv_check_relocs): Add TLS support.
+ (bfd_elf32_bfd_relax_section): Define for FDPIC.
+ * libbfd.h, bfd-in2.h: Rebuilt.
+
+2005-01-25 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (_bfd_elf_get_dynamic_reloc_upper_bound): Only include
+ loadable reloc sections.
+ (_bfd_elf_canonicalize_dynamic_reloc): Likewise.
+ (_bfd_elf_get_synthetic_symtab): Return 0 if no dynamic syms.
+
+2005-01-25 Alan Modra <amodra@bigpond.net.au>
+
+ * elflink.c (elf_link_add_object_symbols): Don't create link dynamic
+ sections immediately when linking shared libs. Instead, wait until
+ we know a lib is needed.
+ (_bfd_elf_link_create_dynstrtab): Extract from..
+ (_bfd_elf_link_create_dynamic_sections_): ..here.
+ (elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and
+ _bfd_elf_link_create_dynamic_sections. Add abfd param. Allow
+ for non-existent .dynamic.
+ (elf_link_output_extsym): Don't complain about undefined symbols
+ in as-needed dynamic libs that aren't actually linked.
+
+2005-01-24 Andrew Cagney <cagney@gnu.org>
+
+ * configure: Regenerate, ../gettext.m4 was updated.
+
+2005-01-21 Ben Elliston <bje@au.ibm.com>
+
+ * aout-encap.c: Remove unused file.
+
+2005-01-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR 679
+ * elflink.c (_bfd_elf_dynamic_symbol_p): Only protected
+ non-function symbols are local.
+ (_bfd_elf_symbol_refs_local_p): Likewise.
+
+2005-01-18 Alan Modra <amodra@bigpond.net.au>
+
+ * bfd.c (bfd_link_just_syms): Add abfd param.
+ * bfd-in2.h: Regenerate.
+
+2005-01-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * elf-eh-frame.c (skip_cfa_op, skip_non_nops): New functions.
+ (_bfd_elf_discard_section_eh_frame): Use them to interpret the CFA
+ instructions. If the amount of padding is known, reduce the size
+ of the CIE or FDE by that amount.
+
+2005-01-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * elf-bfd.h (struct cie): Use bfd_vmas for code_align, ra_column and
+ augmentation_size. Use bfd_signed_vmas for data_align.
+ * elf-eh-frame.c (read_uleb128, read_sleb128): Delete in favor of...
+ (read_byte, skip_leb128, read_uleb128, read_sleb128): ...these new
+ functions. Don't read past the end of the enclosing CIE or FDE.
+ (skip_bytes): New utility function.
+ (_bfd_elf_discard_section_eh_frame): Use new functions, adding more
+ sanity checking.
+ (_bfd_elf_write_section_eh_frame): Use new functions.
+
+2005-01-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use an
+ assert-style REQUIRE() macro to handle sanity checks.
+
+2005-01-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * dwarf2.c (dwarf2_debug): Move info_ptr_unit to ...
+ (comp_unit): Here.
+ (read_unsigned_leb128): Removed.
+ (read_signed_leb128): Removed.
+ (find_abstract_instance_name): Updated.
+ (parse_comp_unit): Accept info_ptr_unit.
+ (_bfd_dwarf2_find_nearest_line): Set info_ptr_unit for each
+ comp unit and pass it to parse_comp_unit.
+
+ * elf-eh-frame.c (read_unsigned_leb128): Moved to ...
+ (read_signed_leb128): Moved to ...
+ * libbfd.c: Here.
+
+ * libbfd-in.h (read_unsigned_leb128): New prototype.
+ (read_signed_leb128): Likewise.
+ * libbfd.h: Regenerated.
+
+2005-01-17 Andrew Stubbs <andrew.stubbs@st.com>
+ Nick Clifton <nickc@redhat.com>
+
+ * cpu-sh.c (bfd_to_arch_table): Change arch_sh1_up to arch_sh_up,
+ arch__sh4_nofp_up to arch_sh4_nofpu_up and arch_sh4a_nofp_up to
+ arch_sh4a_nofpu_up in order to match the external names and make the
+ testsuite's job easier.
+ * archuires.c: Rename bfd_mach_sh2a_fake? to more meaningful
+ names.
+ * bfd-in2.h: Regenerate.
+
+2005-01-15 Andrew Cagney <cagney@gnu.org>
+
+ * bfd.m4: New file.
+ * acinclude.m4: Move BFD_NEED_DECLARATION,
+ BFD_HAVE_SYS_PROCFS_TYPE and BFD_HAVE_SYS_PROCFS_TYPE_MEMBER to
+ the new file bfd.m4. Include ../bfd/bfd.m4.
+ * configure: Re-generate.
+
+2005-01-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_howto_raw): Delete RELAX32* entries.
+ (ppc_elf_relax_section): Use PLT variants of RELAX32 relocs for
+ reaching PLT.
+ (ppc_elf_relocate_section): Handle R_PPC_RELAX32_PLT and
+ R_PPC_RELAX32PC_PLT.
+
+2005-01-11 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Follow indirect and warning
+ symbols.
+ * elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise.
+ * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise.
+ * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise.
+ * elf32-i386.c (elf_i386_gc_sweep_hook): Likewise.
+ * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise.
+ * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
+ * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise.
+ * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
+ * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
+ * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise.
+ * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
+ * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise.
+ * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
+ * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
+
+2005-01-11 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-ppc.c (ppc_elf_create_dynamic_sections): Correct
+ .dynsbss flags.
+
+2005-01-10 Inderpreet Singh <inderpreetb@noida.hcltech.com>
+
+ * archures.c: Define bfd_mach_maxq10 and bfd_mach_maxq20.
+ * bfd-in2.h: Regenerate.
+ * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Add code
+ to support these new machine values.
+ * cpu-maxq.c (bfd_maxq10_arch): New architecture definition for
+ the maxq10.
+ (bfd_maxq_arch): Update values for the maxq20.
+
+2005-01-10 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): When linking a
+ non-shared object, do not reserve space in .plt and .rela.plt for
+ regular symbols neither defined nor referenced in shared objects.
+
+2005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * elf32-sparc.c (elf32_sparc_link_hash_table_create): Use bfd_zmalloc
+ to zero the structure.
+ (create_got_section): Use BFD_ASSERT instead of abort.
+ * elf64-sparc.c (struct sparc64_elf_link_hash_table): New 'sgot' and
+ 'srelgot' fields.
+ (create_got_section): New function.
+ (sparc64_elf_create_dynamic_sections): Likewise.
+ (sparc64_elf_check_relocs): Invoke create_got_section instead of
+ _bfd_elf_create_got_section. Use the sgot and srelgot shortcuts.
+ (sparc64_elf_size_dynamic_sections): Use the srelgot shortcut.
+ (sparc64_elf_relocate_section): Use the sgot and srelgot shortcuts.
+ (sparc64_elf_finish_dynamic_symbol): Likewise.
+ (sparc64_elf_finish_dynamic_sections): Use the sgot shortcut.
+ (elf_backend_create_dynamic_sections): Define to
+ sparc64_elf_create_dynamic_sections.
+
+2005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * elf32-sparc.c (elf32_sparc_omit_section_dynsym): New function.
+ (elf_backend_omit_section_dynsym): Define to it.
+ * elf64-sparc.c (sparc64_elf_omit_section_dynsym): New function.
+ (elf_backend_omit_section_dynsym): Define to it.
+
+2005-01-07 Jakub Jelinek <jakub@redhat.com>
+
+ * elf.c (INCLUDE_SECTION_IN_SEGMENT): Don't put empty sections into
+ PT_DYNAMIC segment, unless .dynamic.
+
+2005-01-06 Paul Brook <paul@codesourcery.com>
+
+ * config.bfd: Add entry for arm-*-vxworks and arm-*-windiss.
+ * configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec.
+ * configure: Regenerate.
+ * elf32-arm.c: Add VxWorks target bfd.
+ (USE_REL): Remove.
+ (elf32_arm_link_hash_table): Add use_rel.
+ (elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate,
+ elf32_arm_relocate_section): Replace USE_REL with runtime check.
+ Correct offset calculation for RELA case.
+ (elf_backend_may_use_rel_p, elf_backend_may_use_rela_p,
+ elf_backend_default_use_rela_p, elf_backend_rela_normal): Define.
+ (elf32_arm_vxworks_link_hash_table_create): New function.
+ * targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration.
+ (bfd_elf32_littlearm_vxworks_vec): Ditto.
+ (_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec.
+
+2005-01-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (struct ppc_link_hash_table): Add no_multi_toc and
+ multi_toc_needed.
+ (has_toc_reloc, makes_toc_func_call, call_check_in_progress): Define.
+ (ppc64_elf_check_relocs): Update references to has_gp_reloc.
+ (ppc64_elf_setup_section_lists): Add no_multi_toc parm, set htab bit.
+ (ppc64_elf_next_toc_section): Heed no_multi_toc.
+ (ppc64_elf_reinit_toc): Set multi_toc_needed.
+ (toc_adjusting_stub_needed): Rewrite.
+ (ppc64_elf_next_input_section): Use multi_toc_needed to shortcut
+ toc tests. Adjust for toc_adjusting_stub_needed changes.
+ (ppc64_elf_size_stubs): Update references to has_gp_reloc.
+ * elf64-ppc.h (ppc64_elf_setup_section_lists): Update prototype.
+ * section.c: Expand comment on backend bits.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2005-01-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): When determining need for
+ toc adjusting stub, do not test source section flags.
+
+2005-01-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows
+ from STABS debugging sections again.
+
+2005-01-05 Fred Fish <fnf@specifixinc.com>
+
+ * dwarf2.c (struct dwarf2_debug): Add info_ptr_unit member.
+ (find_abstract_instance_name): New function.
+ (scan_unit_for_functions): Handle DW_TAG_inlined_subroutine.
+ (scan_unit_for_functions): Handle DW_AT_abstract_origin.
+ (_bfd_dwarf2_find_nearest_line): Initialize info_ptr_unit.
+
+For older changes see ChangeLog-2004
+
+Copyright (C) 2005 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End: