* elfxx-mips.c (_bfd_mips_elf_symbol_processing,
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 5090a01bdb200353fa023bafdf426304ea1b185f..1ee68b9f2179b80d448536fc2867b15d03806a9e 100644 (file)
@@ -1,3 +1,545 @@
+2006-08-14  Thiemo Seufer  <ths@mips.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_symbol_processing,
+       _bfd_mips_elf_add_symbol_hook): Don't try to place small common TLS
+       symbols in .scommon.
+
+2006-08-11  Thiemo Seufer  <ths@mips.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Set
+       sh_entsize only when sgot was already initialized.
+
+2006-08-08  DJ Delorie  <dj@redhat.com>
+
+       * elf32-sh.c (sh_elf_relax_section): Allow for branches across
+       non-moving .align directives.  Preserve any DIR32 offset when
+       converting bsr's to jsr's.
+
+2006-08-08  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf64-ppc.c (ppc64_elf_build_stubs): Clear relbrlt reloc_count
+       after stubs have been built.
+
+2006-08-07  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-sh.c (vxworks_object_p): Only check for vxworks target
+       vectors if they are going to be created.
+
+2006-08-07  Nick Clifton  <nickc@redhat.com>
+
+       * configure.in (bfd_elf32_shnbsd_vec): Fix typo.
+       * configure: Regenerate.
+
+2006-08-07  Nick Clifton  <nickc@redhat.com>
+
+       * coff-arm.c (coff_arm_rtype_to_howto): Only check for ARM_SECREL
+       relocation types if the target is ARM_WINCE.
+
+2006-08-05  Pedro Alves  <pedro_alves@portugalmail.pt>
+
+       * bfd.c (bfd_get_sign_extend_vma): Add cases for pe-arm-little
+       and pei-arm-little.
+       * coff-arm.c (coff_arm_rtype_to_howto) [COFF_WITH_PE]: Handle
+       ARM_SECREL.
+       (coff_arm_reloc_type_lookup): Map BFD_RELOC_32_SECREL to
+       ARM_SECREL.
+       * pe-arm.c [COFF_SECTION_ALIGNMENT_ENTRIES]: Define.
+       * pei-arm.c [TARGET_UNDERSCORE]: Define for ARM_WINCE like in
+       pe-arm.c.
+       [COFF_SECTION_ALIGNMENT_ENTRIES]: Define.
+
+2006-08-04  Marcelo Tosatti  <marcelo@kvack.org>
+
+       * elflink.c (elf_gc_sweep): If info.print_gc_sections is true,
+       list removed sections to stderr.
+
+2006-08-04  Richard Sandiford  <richard@codesourcery.com>
+           Kazu Hirata  <kazu@codesourcery.com>
+           Phil Edwards  <phil@codesourcery.com>
+           Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config.bfd (sh-*-vxworks): Use bfd_elf32_shvxworks_vec and
+       bfd_elf32_shlvxworks_vec.
+       * configure.in (bfd_elf32_sh64_vec): Add elf-vxworks.lo.
+       (bfd_elf32_sh64l_vec, bfd_elf32_sh64lin_vec): Likewise.
+       (bfd_elf32_sh64blin_vec, bfd_elf32_sh64lnbsd_vec): Likewise.
+       (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh_vec): Likewise.
+       (bfd_elf32_shblin_vec, bfd_elf32_shl_vec): Likewise.
+       (bfd_elf32_shl_symbian_vec, bfd_elf32_shlin_vec): Likewise.
+       (bfd_elf32_shlnbsd_vec, bfd_elf32_shnbsd_vec): Likewise.
+       (bfd_elf32_shlvxworks_vec, bfd_elf32_shvxworks_vec): New stanzas.
+       * configure: Regenerate.
+       * Makefile.am: Regenerate dependencies.
+       * Makefile.in: Regenerate.
+       * elf-vxworks.c (elf_vxworks_gott_symbol_p): New function.
+       (elf_vxworks_add_symbol_hook): Use it.
+       (elf_vxworks_link_output_symbol_hook): Likewise.  Use the hash
+       table entry to check for weak undefined symbols and to obtain
+       the original bfd.
+       (elf_vxworks_emit_relocs): Use target_index instead of this_idx.
+       * elf32-sh-relocs.h: New file, split from elf32-sh.c.
+       (R_SH_DIR32): Use SH_PARTIAL32 for the partial_inplace field,
+       SH_SRC_MASK32 for the src_mask field, and SH_ELF_RELOC for the
+       special_function field.
+       (R_SH_REL32): Use SH_PARTIAL32 and SH_SRC_MASK32 here too.
+       (R_SH_REL32, R_SH_TLS_GD_32, R_SH_TLS_LD_32): Likewise.
+       (R_SH_TLS_LDO_32, R_SH_TLS_IE_32, R_SH_TLS_LE_32): Likewise.
+       (R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32, R_SH_TLS_TPOFF32): Likewise.
+       (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT): Likewise.
+       (R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): Likewise.
+       (SH_PARTIAL32, SH_SRC_MASK32, SH_ELF_RELOC): Undefine at end of file.
+       * elf32-sh.c: Include elf32-vxworks.h.
+       (MINUS_ONE): Define.
+       (sh_elf_howto_table): Include elf32-sh-relocs.h with SH_PARTIAL32
+       set to TRUE, SH_SRC_MASK32 set to 0xffffffff, and SH_ELF_RELOC set
+       to sh_elf_reloc.
+       (sh_vxworks_howto_table): New variable.  Include elf32-sh-relocs.h
+       with SH_PARTIAL32 set to FALSE, SH_SRC_MASK32 set to 0, and
+       SH_ELF_RELOC set to bfd_elf_generic_reloc.
+       (vxworks_object_p, get_howto_table): New functions.
+       (sh_elf_reloc_type_lookup): Fix typo.  Use get_howto_table.
+       (sh_elf_info_to_howto): Use get_howto_table.
+       (sh_elf_relax_section): Honor the partial_inplace field of the
+       R_SH_DIR32 howto.
+       (sh_elf_relax_delete_bytes): Likewise.
+       (elf_sh_plt_info): New structure.
+       (PLT_ENTRY_SIZE): Replace both definitions with...
+       (ELF_PLT_ENTRY_SIZE): ...this new macro, with separate definitions for
+       INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
+       (elf_sh_plt0_entry_be): Update sizes of both definitions accordingly.
+       (elf_sh_plt0_entry_le): Likewise.
+       (elf_sh_plt_entry_be, elf_sh_plt_entry_le): Likewise.
+       (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): Likewise.
+       (elf_sh_plts): New structure, with separate definitions for
+       INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
+       (elf_sh_plt0_entry): Delete both definitions.
+       (elf_sh_plt_entry, elf_sh_pic_plt_entry): Likewise.
+       (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset): Likewise.
+       (elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset): Likewise.
+       (elf_sh_plt_reloc_offset): Likewise.
+       (movi_shori_putval): Delete in favor of...
+       (install_plt_field): ...this new function, with separate definitions
+       for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
+       (get_plt_info): New function, with separate definitions
+       for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
+       (elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset): Delete.
+       (VXWORKS_PLT_HEADER_SIZE, VXWORKS_PLT_ENTRY_SIZE): New macros.
+       (vxworks_sh_plt0_entry_be, vxworks_sh_plt0_entry_le): New constants.
+       (vxworks_sh_plt_entry_be, vxworks_sh_plt_entry_le): Likewise.
+       (vxworks_sh_pic_plt_entry_be, vxworks_sh_pic_plt_entry_le): Likewise.
+       (get_plt_index, get_plt_offset): New functions.
+       (elf_sh_link_hash_table): Add srelplt2, plt_info and vxworks_p fields.
+       (sh_elf_link_hash_table_create): Initialize them.
+       (sh_elf_create_dynamic_sections): Call
+       elf_vxworks_create_dynamic_sections for VxWorks.
+       (allocate_dynrelocs): Use htab->plt_info to get the size of PLT
+       entries.  Allocate relocation entries in .rela.plt.unloaded if
+       generating a VxWorks executable.
+       (sh_elf_always_size_sections): New function.
+       (sh_elf_size_dynamic_sections): Extend .rela.plt handling to
+       .rela.plt.unloaded.
+       (sh_elf_relocate_section): Use get_howto_table.  Honor
+       partial_inplace when calculating the addend for dynamic
+       relocations.  Use get_plt_index.
+       (sh_elf_finish_dynamic_symbol): Use get_plt_index, install_plt_field
+       and htab->plt_info.  Fill in the bra .plt offset for VxWorks
+       executables.  Populate .rela.plt.unloaded.  Do not make
+       _GLOBAL_OFFSET_TABLE_ absolute on VxWorks.
+       (sh_elf_finish_dynamic_sections): Use install_plt_field and
+       htab->plt_info.  Handle cases where there is no special PLT header.
+       Populate the first relocation in .rela.plt.unloaded and fix up
+       the remaining entries.
+       (sh_elf_plt_sym_val): Use get_plt_info.
+       (elf_backend_always_size_sections): Define.
+       (TARGET_BIG_SYM, TARGET_BIG_NAME): Override for VxWorks.
+       (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
+       (elf32_bed, elf_backend_want_plt_sym): Likewise.
+       (elf_symbol_leading_char, elf_backend_want_got_underscore): Likewise.
+       (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Likewise.
+       (elf_backend_add_symbol_hook): Likewise.
+       (elf_backend_link_output_symbol_hook): Likewise.
+       (elf_backend_emit_relocs): Likewise.
+       (elf_backend_final_write_processing): Likewise.
+       (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Likewise.
+       * targets.c (bfd_elf32_shlvxworks_vec): Declare.
+       (bfd_elf32_shvxworks_vec): Likewise.
+       (_bfd_target_vector): Include bfd_elf32_shlvxworks_vec and
+       bfd_elf32_shvxworks_vec.
+
+2006-08-02  Mark Kettenis  <kettenis@gnu.org>
+
+       * configure.in (arm-*-openbsd*): Set COREFILE to netbsd-core.lo.
+       * configure: Regenerate.
+
+2006-08-02  Petr Salinger  <Petr.Salinger@seznam.cz>
+
+       PR binutils/2983
+       * elf64-x86-64.c: Add FreeBSD support.
+       (elf64_x86_64_fbsd_post_process_headers): New function.
+       * targets.c (_bfd_target_vector): Add bfd_elf64_x86_64_freebsd_vec.
+       * config.bfd (x64_64-*-freebsd*): Add bfd_elf64_x86_64_freebsd_vec
+       to the targ_selvecs.
+       * configure.in: Add entry for bfd_elf64_x86_64_freebsd_vec.
+       * configure: Regenerate.
+
+2006-07-26  Andreas Schwab  <schwab@suse.de>
+
+       * elfxx-ia64.c (elfNN_ia64_choose_gp): Use rawsize if set.
+
+2006-07-26  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf.c (elf_modify_segment_map): Delete empty PT_LOAD segments.
+       * elf32-xtensa.c (elf_xtensa_modify_segment_map): Delete.
+       (define elf_backend_modify_segment_map): Don't define.
+
+2006-07-25  Thiemo Seufer  <ths@networkno.de>
+
+       * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Allow
+       linking of objects for compatible machine types.
+
+2006-07-25  Thiemo Seufer  <ths@networkno.de>
+
+       * elfxx-mips.c (mips_elf_next_relocation): Tighten check to test
+       also for same symbol.
+
+2006-07-25  Thiemo Seufer  <ths@mips.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation): Remove magic constant.
+
+2006-07-24  Michael Wetherell  <mike.wetherell@ntlworld.com>
+
+       * elf.c (bfd_section_from_shdr): Reject unrecognised OS-specific
+       sections only if the SHF_OS_NONCONFORMING flag is present.
+
+2006-07-24  Nick Clifton  <nickc@redhat.com>
+
+       PR ld/2729
+       * peXXigen.c (_bfd_XXi_final_link_postscript): Check for the
+       existance of output sections before putting their entries into the
+       DataDictionary.
+
+2006-07-20  Thiemo Seufer  <ths@mips.com>
+
+       * elf32-mips.c (mips16_jump_reloc): Remove function.
+       (elf_mips16_howto_table_rel): Use _bfd_mips_elf_generic_reloc
+       instead of mips16_jump_reloc.
+       * elf64_mips.c, wlfn32-mips.c (mips16_jump_reloc): Remove function.
+       (elf_mips16_howto_table_rel, elf_mips16_howto_table_rela): Use
+       _bfd_mips_elf_generic_reloc instead of mips16_jump_reloc.
+
+2006-07-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * bfd-in.h (enum notice_asneeded_action): Define.
+       * bfd-in2.h: Regenerate.
+       * elflink.c (elf_link_add_object_symbols): Call linker "notice"
+       function with NULL name for as-needed handling.
+
+2006-07-18  Paul Brook  <paul@codesourcery.com>
+
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * reloc.c: Add BFD_RELOC_ARM_T32_ADD_IMM.
+
+2006-07-18  Nick Clifton  <nickc@redhat.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_common_definition): New function.
+       Consider SHN_MIPS_ACOMMON and SHN_MIPS_SCOMMON as being common
+       sections.
+       * elfxx-mips.h  (_bfd_mips_elf_common_definition): Prototype.
+
+2006-07-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Fix cinfo.shift2 value.
+
+2006-07-14  Mark Kettenis  <kettenis@gnu.org>
+
+       * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Move declarations
+       to the start of a block.
+
+2006-07-13  Nick Clifton  <nickc@redhat.com>
+
+       * coff-sh.c (_bfd_sh_align_load_span): Catch sh_insn_info()
+       returning a NULL value.
+
+2006-07-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/2884
+       * elflink.c (_bfd_elf_merge_symbol): Copy the symbol info from
+       the old versioned dynamic definition to the new one with
+       non-default visibility.  Hide the symbol if it is hidden or
+       internal.
+
+2006-07-12  Matthew R. Dempsky  <mrd@alkemio.org>
+
+       * cpu-m68k.c (bfd_m68k_compatible): Handle CPU32.
+
+2006-07-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_GNU_HASH.
+       (bfd_section_from_shdr, elf_fake_sections, assign_section_numbers):
+       Handle SHT_GNU_HASH.
+       (special_sections_g): Include .gnu.hash section.
+       (bfd_elf_gnu_hash): New function.
+       * elf-bfd.h (bfd_elf_gnu_hash, _bfd_elf_hash_symbol): New prototypes.
+       (struct elf_backend_data): Add elf_hash_symbol method.
+       * elflink.c (_bfd_elf_link_create_dynamic_sections): Create .hash
+       only if info->emit_hash, create .gnu.hash section if
+       info->emit_gnu_hash.
+       (struct collect_gnu_hash_codes): New type.
+       (elf_collect_gnu_hash_codes, elf_renumber_gnu_hash_syms,
+       _bfd_elf_hash_symbol): New functions.
+       (compute_bucket_count): Don't compute HASHCODES array, instead add
+       that and NSYMS as arguments.  Use bed->s->sizeof_hash_entry
+       instead of bed->s->arch_size / 8.  Fix .hash size estimation.
+       When not optimizing, use the number of hashed symbols rather than
+       dynsymcount.
+       (bfd_elf_size_dynamic_sections): Only add DT_HASH if info->emit_hash,
+       and ADD DT_GNU_HASH if info->emit_gnu_hash.
+       (bfd_elf_size_dynsym_hash_dynstr): Size .hash only if info->emit_hash,
+       adjust compute_bucket_count caller.  Create and populate .gnu.hash
+       section if info->emit_gnu_hash.
+       (elf_link_output_extsym): Only populate .hash section if
+       finfo->hash_sec != NULL.
+       (bfd_elf_final_link): Adjust assertion.  Handle DT_GNU_HASH.
+       * elfxx-target.h (elf_backend_hash_symbol): Define if not yet defined.
+       (elfNN_bed): Add elf_backend_hash_symbol.
+       * elf64-x86-64.c (elf64_x86_64_hash_symbol): New function.
+       (elf_backend_hash_symbol): Define.
+       * elf32-i386.c (elf_i386_hash_symbol): New function.
+       (elf_backend_hash_symbol): Define.
+
+2006-07-05  Nick Clifton  <nickc@redhat.com>
+
+       PR ld/2659
+       * cofflink.c (_bfd_coff_link_input_bfd): Fix selection of aux
+       entry when multiple definitions of a symbol are encountered.
+
+2006-06-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_relocate_section): Use xchg %ax,%ax
+       instead of 2 nops.
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
+       (elf64_x86_64_plt0_entry): Use nopl 0(%rax) instead of 4 nops.
+
+2006-06-29  Jakub Jelinek  <jakub@redhat.com>
+
+       PR ld/2513
+       * elf32-i386.c (GOT_TLS_MASK, GOT_TLS_IE_IE, GOT_TLS_IE_GD,
+       GOT_TLS_IE_MASK, elf_i386_check_relocs, allocate_dynrelocs): Revert
+       2006-04-08 changes.
+       (elf_i386_relocate_section): Likewise.  For GD->IE transition
+       change subl into addl whenever tls_type is GOT_TLS_IE_POS.
+
+2006-06-23  Alan Modra  <amodra@bigpond.net.au>
+
+       PR ld/2754
+       * elf.c (bfd_elf_mkobject): Don't alloc if already done.  Set
+       program_header_size to -1.
+       (_bfd_elf_map_sections_to_segments): Adjust program_header_size check.
+       (assign_file_positions_for_load_sections ): Likewise.
+       (_bfd_elf_sizeof_headers): Use saved program_header_size if
+       available.
+       * elf32-arm.c (elf32_arm_mkobject): Call bfd_elf_mkobject, don't
+       alloc if already done.
+       * elf32-i386.c (elf_i386_mkobject): Likewise.
+       * elf32-ppc.c (ppc_elf_mkobject): Likewise.
+       * elf32-s390.c (elf_s390_mkobject): Likewise.
+       * elf32-sh.c (sh_elf_mkobject): Likewise.
+       * elf64-alpha.c (elf64_alpha_mkobject): Likewise.
+       * elf64-ppc.c (ppc64_elf_mkobject): Likewise.
+       * elf64-s390.c (elf_s390_mkobject): Likewise.
+       * elf64-x86-64.c (elf64_x86_64_mkobject): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_mkobject): Likewise.
+
+2006-06-20  Jakub Jelinek  <jakub@redhat.com>
+
+       * elflink.c (elf_link_add_object_symbols): Don't create .tcommon
+       section for relocatable link.
+
+2006-06-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf-bfd.h (struct elf_backend_data): Add
+       elf_backend_modify_program_headers.
+       * elfxx-target.h (elf_backend_modify_program_headers): Define.
+       (elfNN_bed): Init new field.
+       * elf.c (elf_modify_segment_map): Remove comment.
+       (assign_file_positions_for_load_sections): Only call
+       elf_modify_segment_map for objcopy/strip.
+       (assign_file_positions_except_relocs): Call
+       elf_backend_modify_program_headers.
+       * elf32-frv.c (elf32_frvfdpic_always_size_sections): Don't make
+       .stack section.
+       (elf32_frvfdpic_modify_segment_map): Delete.
+       (elf32_frvfdpic_modify_program_headers): New.
+       (elf_backend_modify_segment_map): Don't define.
+       (elf_backend_modify_program_headers): Define.
+       * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Don't make
+       .stack section.
+       (elf32_bfinfdpic_modify_segment_map): Delete.
+       (elf32_bfinfdpic_modify_program_headers): New.
+       (elf_backend_modify_segment_map): Don't define.
+       (elf_backend_modify_program_headers): Define.
+       * elfxx-ia64.c (elfNN_ia64_modify_program_headers): New function.
+       Split out from..
+       (elfNN_ia64_modify_segment_map): ..here.
+       (elf_backend_modify_program_headers): Define.
+
+2006-06-20  Jakub Jelinek  <jakub@redhat.com>
+
+       * bfd.c (bfd_record_phdr): Clear p_align and p_align_valid fields.
+       * elf.c (_bfd_elf_link_hash_table_init): Clear hplt field.
+
+2006-06-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf-bfd.h: Formatting.
+       (_bfd_elf_map_sections_to_segments): Declare.
+       * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame_hdr): Don't
+       clear program_header_size.
+       * elf.c (get_program_header_size): Move.  Don't use or set saved
+       program_header_size here.
+       (elf_modify_segment_map): New function.  Split out from..
+       (assign_file_positions_for_load_sections): ..here.  Assert
+       header size is correct.  Remove dead code.
+       (_bfd_elf_map_sections_to_segments): Rename from
+       map_sections_to_segments.  Make global.  Use get_program_header_size
+       when we need estimate of header size.  Call elf_modify_segment_map.
+       Set program_header_size.
+       (print_segment_map): Delete.
+       (_bfd_elf_sizeof_headers): If segment_map available, get the
+       actual size.
+       * elf32-arm.c (elf32_arm_symbian_modify_segment_map): Make safe
+       for calling more than once.
+       * elf32-bfin.c (elf32_bfinfdpic_modify_segment_map): Likewise.
+       * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise.
+       * elf32-i370.c (elf_backend_add_symbol_hook): Delete.
+       (elf_backend_additional_program_headers): Delete.
+       (elf_backend_modify_segment_map): Delete.
+       * elf64-hppa.c (elf64_hppa_modify_segment_map): Convert to ISO C.
+       * elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise.
+       * doc/bfdint.texi: Delete SIZEOF_HEADERS difficulties.
+
+2006-06-19  Vladimir Prus  <vladimir@codesourcery.com>
+
+       * elf32-arm.c (elf32_arm_swap_symbol_out): Don't set low
+       bit for undefined symbols.
+
+2006-06-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf-bfd.h (struct elf_backend_data): Add bfd_link_info pointer
+       parameter.
+       (_bfd_elf_sizeof_headers): Replace bfd_boolean param with
+       bfd_link_info pointer.
+       * targets.c (struct bfd_target <_bfd_sizeof_headers>): Likewise.
+       * bfd.c (bfd_sizeof_headers): Tweak param name.
+       * aout-adobe.c (aout_adobe_sizeof_headers): Adjust.
+       * aoutx.h (NAME (aout, sizeof_headers)): Adjust.
+       * binary.c (binary_sizeof_headers): Adjust.
+       * bout.c (b_out_sizeof_headers): Adjust.
+       * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Adjust.
+       * coff64-rs6000.c (xcoff64_sizeof_headers): Adjust.
+       * coffgen.c (coff_sizeof_headers): Adjust.
+       * ecoff.c (_bfd_ecoff_sizeof_headers): Adjust.
+       (ecoff_compute_section_file_positions): Adjust.
+       (_bfd_ecoff_write_object_contents): Adjust.
+       * elf.c (get_program_header_size, _bfd_elf_sizeof_headers): Adjust.
+       * elf32-arm.c (elf32_arm_additional_program_headers): Adjust.
+       * elf32-i370.c (elf_backend_additional_program_headers): Adjust.
+       * elf32-ppc.c (ppc_elf_additional_program_headers): Adjust.
+       * elf64-hppa.c (elf64_hppa_additional_program_headers): Adjust.
+       * elf64-x86-64.c (elf64_x86_64_additional_program_headers): Adjust.
+       * elfxx-ia64.c (elfNN_ia64_additional_program_headers): Adjust.
+       * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Adjust.
+       * elfxx-mips.h (_bfd_mips_elf_additional_program_headers): Adjust.
+       * i386msdos.c: Convert to ISO C.
+       (msdos_sizeof_headers): Adjust.
+       * i386os9k.c: Convert to ISO C.
+       (os9k_sizeof_headers): Adjust.
+       * ieee.c (ieee_sizeof_headers): Adjust.
+       * ihex.c (ihex_sizeof_headers): Adjust.
+       * libaout.h (NAME (aout, sizeof_headers)): Adjust.
+       * libbfd-in.h (_bfd_nolink_sizeof_headers): Adjust.
+       * libcoff-in.h (coff_sizeof_headers): Adjust.
+       * libecoff.h (_bfd_ecoff_sizeof_headers): Adjust.
+       * mach-o.c (bfd_mach_o_sizeof_headers): Adjust.
+       * mmo.c (mmo_sizeof_headers): Adjust.
+       * oasys.c (oasys_sizeof_headers): Adjust.
+       * pdp11.c (NAME (aout, sizeof_headers)): Adjust.
+       * pef.c (bfd_pef_sizeof_headers): Adjust.
+       * ppcboot.c (ppcboot_sizeof_headers): Adjust.
+       * som.c (som_sizeof_headers): Adjust.
+       * srec.c (srec_sizeof_headers): Adjust.
+       * tekhex.c (tekhex_sizeof_headers): Adjust.
+       * versados.c (versados_sizeof_headers): Adjust.
+       * vms.c (vms_sizeof_headers): Adjust.
+       * xcoff-target.h (_bfd_xcoff_sizeof_headers): Adjust.
+       * xsym.c (bfd_sym_sizeof_headers): Adjust.
+       * xsym.h (bfd_sym_sizeof_headers): Adjust.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * libcoff.h: Regenerate.
+
+2006-06-15  Mark Shinwell  <shinwell@codesourcery.com>
+
+       * bfd-in2.h: Regenerate.
+       * elf32-arm.c (R_ARM_ALU_PC_G0_NC, R_ARM_ALU_PC_G0,
+       R_ARM_ALU_PC_G1_NC, R_ARM_ALU_PC_G1, R_ARM_ALU_PC_G2,
+       R_ARM_LDR_PC_G1, R_ARM_LDR_PC_G2, R_ARM_LDRS_PC_G0,
+       R_ARM_LDRS_PC_G1, R_ARM_LDRS_PC_G2, R_ARM_LDC_PC_G0,
+       R_ARM_LDC_PC_G1, R_ARM_LDC_PC_G2, R_ARM_ALU_SB_G0_NC,
+       R_ARM_ALU_SB_G0, R_ARM_ALU_SB_G1_NC, R_ARM_ALU_SB_G1,
+       R_ARM_ALU_SB_G2, R_ARM_LDR_SB_G0, R_ARM_LDR_SB_G1,
+       R_ARM_LDR_SB_G2, R_ARM_LDRS_SB_G0, R_ARM_LDRS_SB_G1,
+       R_ARM_LDRS_SB_G2, R_ARM_LDC_SB_G0, R_ARM_LDC_SB_G1,
+       R_ARM_LDC_SB_G2): New relocation types.
+       (R_ARM_PC13): Rename to AAELF name R_ARM_LDR_PC_G0 and
+       adjust HOWTO entry to be consistent with R_ARM_LDR_PC_G1
+       and friends.
+       (elf32_arm_howto_table_3): Delete; contents merged into
+       elf32_arm_howto_table_2.
+       (elf32_arm_howto_from_type): Adjust correspondingly.
+       (elf32_arm_reloc_map): Extend with the above relocations.
+       (calculate_group_reloc_mask): New function.
+       (identify_add_or_sub): New function.
+       (elf32_arm_final_link_relocate): Support for the above
+       relocations.
+       * reloc.c: Add enumeration entries for BFD_RELOC_ARM_...
+       codes to correspond to the above relocations.
+
+2006-06-14  Richard Sandiford  <richard@codesourcery.com>
+
+       * elf32-m68k.c (elf_m68k_plt_info): New structure.
+       (elf_m68k_plt0_entry): Add R_68K_PC32-style in-place addends.
+       (elf_m68k_plt_entry): Likewise.
+       (elf_m68k_plt_info): New table.
+       (CFV4E_PLT_ENTRY_SIZE): Rename to...
+       (ISAB_PLT_ENTRY_SIZE): ...this.
+       (CFV4E_FLAG): Delete.
+       (elf_cfv4e_plt0_entry): Rename to...
+       (elf_isab_plt0_entry): ...this.  Adjust comments.  Use (-6,%pc,%d0)
+       for the second instruction too.
+       (elf_cfv4e_plt_entry): Rename to...
+       (elf_isab_plt_entry): ...this.  Adjust comments and use (-6,%pc,%d0).
+       (elf_isab_plt_info): New table.
+       (CPU32_FLAG): Delete.
+       (PLT_CPU32_ENTRY_SIZE): Rename to...
+       (CPU32_PLT_ENTRY_SIZE): ...this.
+       (elf_cpu32_plt0_entry): Update bounds accordingly.  Add R_68K_PC32-
+       style in-place addends.
+       (elf_cpu32_plt_entry): Likewise.
+       (elf_cpu32_plt_info): New table.
+       (elf_m68k_link_hash_table): Add a plt_info field.
+       (elf_m68k_link_hash_table_create): Initialize it.
+       (elf_m68k_get_plt_info): New function.
+       (elf_m68k_always_size_sections): Likewise.
+       (elf_m68k_adjust_dynamic_symbol): Use the plt_info hash table field.
+       (elf_m68k_install_pc32): New function.
+       (elf_m68k_finish_dynamic_symbol): Factor code using plt_info and
+       elf_m68k_install_pc32.
+       (elf_m68k_finish_dynamic_sections): Likewise.
+       (elf_m68k_plt_sym_val): Use elf_m68k_get_plt_info.
+       (elf_backend_always_size_sections): Define.
+
 2006-06-14  Alan Modra  <amodra@bigpond.net.au>
 
        * elflink.c (elf_link_add_object_symbols): Save and restore
This page took 0.031206 seconds and 4 git commands to generate.