X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2FChangeLog;h=b281a045201b2744cd6e1b28515952d96d0cc901;hb=cf35638d431e230d51d54550e8a249e730264ea5;hp=32c44a934a436ede995aedac98151b407eec1f3e;hpb=9fff0c39572a974ff8a2920f0345351e50005159;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 32c44a934a..b281a04520 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,654 @@ +2010-09-24 Thomas Schwinge + + * elf32-arm.c, elf32-cris.c, elf32-hppa.c, elf32-i370.c, elf32-m32r.c, + elf32-m68k.c, elf32-microblaze.c, elf32-ppc.c, elf32-score.c, + elf32-score7.c, elf32-sh.c, elf32-vax.c, elf32-xtensa.c, elf64-alpha.c, + elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-sparc.c, elfcode.h, + elflink.c, elfxx-ia64.c, elfxx-mips.c: Use STN_UNDEF when referring to + the zero symbol index. + + * elflink.c (bfd_elf_reloc_symbol_deleted_p): Compare the symbol index + to STN_UNDEF, not SHN_UNDEF. + +2010-09-23 Bernd Schmidt + + * elf32-tic6x.c (elf32_tic6x_fake_sections): New function. + (elf_backend_fake_sections): Define. + +2010-09-23 Matthew Gretton-Dann + + * bfd-in2.h (BFD_RELOC_ARM_HVC): New enum value. + +2010-09-23 Alan Modra + + * cpu-d10v.c: Make bits_per_address 18 for all arch_info entries. + +2010-09-23 Alan Modra + + * elf.c (_bfd_elf_init_private_section_data): Allow for SEC_RELOC + difference between input and output section. + +2010-09-22 Kai Tietz + + * coffcode.h (sec_to_styp_flags): Adjust debug + sections to be conform to pe-coff specification + and avoid marking them as excluded. + (styp_to_sec_flags): Doing reverse mapping. + + * peXXigen.c (_bfd_XXi_final_link_postscript): Add handling for + setting IAT directory entry. + +2010-09-20 Richard Henderson + + * elf64-alpha.c (elf64_alpha_howto_table): Use bfd_elf_generic_reloc. + +2010-09-19 Richard Sandiford + + * elfxx-mips.c (mips_elf_link_hash_entry): Add got_only_for_calls. + (mips_elf_link_hash_newfunc): Initialize it. + (mips_elf_record_global_got_symbol): Add a for_call parameter. + (mips_elf_count_got_symbols): Check SYMBOL_CALLS_LOCAL rather + than SYMBOL_REFERENCES_LOCAL if the GOT entry is only used for calls. + Try to remove .got entries in favour of .got.plt entries on VxWorks. + (_bfd_mips_elf_check_relocs): Do not try to avoid allocating + a global GOT entry for VxWorks calls. Update uses of + mips_elf_record_global_got_symbol. + (allocate_dynrelocs): Set got_only_for_calls to false if the GOT + entry is used for dynamic relocations. + +2010-09-19 Richard Sandiford + + * elfxx-mips.c (mips_got_entry): Adjust commentary. + (mips_elf_create_local_got_entry): If given a symbol, check that it + has been assigned to the local part of the GOT. + (mips_elf_count_got_symbols): Take the bfd_link_info as argument + instead of the master GOT. Put all locally-binding symbols in + the local area. + (mips_elf_make_got_per_bfd): Use global_got_area to decide whether + a symbol lives in the local or global area. + (mips_elf_local_relocation_p): Remove check_forced argument and + retain only the !check_forced behavior. + (mips_elf_calculate_relocation): Adjust call accordingly. + Use global_got_area to decide whether an output relocation + should be local or global. Explicitly decay R_MIPS_GOT_PAGE + into R_MIPS_GOT_DISP where appropriate. Fix selection of + local vs. global semantics for R_MIPS*_26. Remove redundant + reevaluation of what is stored in was_local_p. + (mips_elf_create_dynamic_relocation): Use global_got_area to decide + whether the relocation should be against a global or local symbol. + (mips_elf_lay_out_got): Update the GOT traversal after the above + change to mips_elf_count_got_symbols. + (mips_elf_adjust_addend): Adjust call to mips_elf_local_relocation_p. + (_bfd_mips_elf_relocate_section): Likewise. + (_bfd_mips_elf_finish_dynamic_symbol): Use global_got_area to decide + whether the symbol has a global got entry. + (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. + +2010-09-19 Richard Sandiford + + * elfxx-mips.c (allocate_dynrelocs): Don't add relocation symbols + to the global GOT on VxWorks. + +2010-09-19 Richard Sandiford + + * elfxx-mips.c (_bfd_mips_elf_check_relocs): On VxWorks, + exclude __GOTT_BASE__ and __GOTT_INDEX__ from the warning + about HI/LO relocations in shared objects. + +2010-09-16 Alan Modra + + * elf32-spu.c (spu_elf_size_sections): Omit fixups for non-alloc + sections. + (spu_elf_create_sections): Mark .fixup with SEC_LINKER_CREATED and + set dynobj. + (spu_elf_finish_dynamic_sections): New function. + (elf_backend_finish_dynamic_sections): Define. + +2010-09-16 Alan Modra + + * elf.c (bfd_elf_get_default_section_type): Don't test SEC_NEVER_LOAD. + * elflink.c (elf_link_input_bfd): Likewise. + +2010-09-15 Kai Tietz + + * pei-x86_64.c (pex64_get_unwind_info): Reorgnized. + (pex64_get_scope_entry): Removed. + (find_next_xdata_or_end): New helper. + (pex64_dump_xdata): Reworked. + (pex64_bfd_print_pdata): Add checking for + valid pdata sorting and values. Reworked + output. + +2010-09-15 H.J. Lu + + PR binutils/12004 + * plugin.c (bfd_plugin_object_p): Handle NULL iostream. + +2010-09-14 Kai Tietz + + * pe-x86_64.c (COFF_SECTION_ALIGNMENT_ENTRIES): Make + .rdata, .data, and .text partial matched section names. + * pei-x86_64.c: Likewise. + + * peXXigen.c (sort_x64_pdata): New helper. + (_bfd_XXi_final_link_postscript): Do pdata sorting. + +2010-09-09 H.J. Lu + + PR ld/11998 + * elf.c (assign_file_positions_for_load_sections): Don't warn + zero LMA adjustment. + +2010-09-09 Bernd Schmidt + + bfd/ + * elflink.c (bfd_elf_final_link): Correct calculation of + max_external_reloc_size. + +2010-09-07 Alan Modra + Marcus Brinkmann + + * peXXigen.c: Whitespace. + (pe_print_idata): Correct section limit calculations. Tidy array + indexing. + (_bfd_XX_print_ce_compressed_pdata): Don't leak memory. + +2010-09-02 Richard Henderson + + * config.bfd (x86_64-*-mingw*): Select 32-bit pei vectors too. + +2010-09-01 Pedro Alves + + * netbsd-core.c (netbsd_core_core_file_pid): Renamed to ... + (netbsd_core_file_pid): ... this. + +2010-09-01 Tristan Gingold + + * coffcode.h (coff_slurp_line_table): Add a cast. + (coff_slurp_reloc_table): Ditto. + +2010-08-30 Gunther Nikl + + * cisco-core.c (cisco_core_file_pid): Define. + +2010-08-30 Alan Modra + + PR binutils/11953 + * elf.c (copy_elf_program_header): Calculate map->header_size + from lowest_section, not first_section. Validate program + header p_paddr against section lma. Find lowest_section in + second loop over headers. + +2010-08-28 Alan Modra + + * elflink.c (_bfd_elf_dynamic_symbol_p): Rename param. Make + common syms local. + (_bfd_elf_symbol_refs_local_p): Expand comment. + (elf_link_output_extsym): Fix style nit. + +2010-08-26 Nathan Sidwell + + * elf32-arm.c (elf32_arm_final_link): Process stub sections + exactly once. + +2010-08-25 H.J. Lu + + PR ld/11939 + * elflink.c (elf_link_add_object_symbols): Don't set + unique_global for non-ELF hash link table. + +2010-08-25 H.J. Lu + + PR ld/11944 + * elf-bfd.h (elf_backend_data): Add target_id. + (bfd_elf_make_generic_object): Renamed to ... + (bfd_elf_make_object): This. + + * elf.c (bfd_elf_make_generic_object): Removed. + (bfd_elf_make_object): New. + (bfd_elf_mkcorefile): Really treat it as an object file. + + * elf-m10300.c (ELF_TARGET_ID): New. + * elf32-arm.c (ELF_TARGET_ID): Likewise. + * elf32-bfin.c (ELF_TARGET_ID): Likewise. + * elf32-cris.c (ELF_TARGET_ID): Likewise. + * elf32-frv.c (ELF_TARGET_ID): Likewise. + * elf32-i386.c (ELF_TARGET_ID): Likewise. + * elf32-lm32.c (ELF_TARGET_ID): Likewise. + * elf32-m32r.c (ELF_TARGET_ID): Likewise. + * elf32-m68hc11.c (ELF_TARGET_ID): Likewise. + * elf32-m68hc12.c (ELF_TARGET_ID): Likewise. + * elf32-m68k.c (ELF_TARGET_ID): Likewise. + * elf32-microblaze.c (ELF_TARGET_ID): Likewise. + * elf32-ppc.c (ELF_TARGET_ID): Likewise. + * elf32-s390.c (ELF_TARGET_ID): Likewise. + * elf32-sh.c (ELF_TARGET_ID): Likewise. + * elf32-sparc.c (ELF_TARGET_ID): Likewise. + * elf32-spu.c (ELF_TARGET_ID): Likewise. + * elf32-tic6x.c (ELF_TARGET_ID): Likewise. + * elf32-xtensa.c (ELF_TARGET_ID): Likewise. + * elf64-alpha.c (ELF_TARGET_ID): Likewise. + * elf64-hppa.c (ELF_TARGET_ID): Likewise. + * elf64-ppc.c (ELF_TARGET_ID): Likewise. + * elf64-s390.c (ELF_TARGET_ID): Likewise. + * elf64-x86-64.c (ELF_TARGET_ID): Likewise. + * elfxx-ia64.c (ELF_TARGET_ID): Likewise. + + * elf32-hppa.c (elf32_hppa_mkobject): Removed. + (bfd_elf32_mkobject): Likewise. + (ELF_TARGET_ID): New. + + * elf32-mips.c (ELF_TARGET_ID): New. + (bfd_elf32_mkobject): Removed. + + * elf64-mips.c (ELF_TARGET_ID): New. + (bfd_elf64_mkobject): Removed. + + * elfn32-mips.c (ELF_TARGET_ID): New. + (bfd_elf32_mkobject): Removed. + + * elfxx-mips.c (_bfd_mips_elf_mkobject): Removed. + * elfxx-mips.h (_bfd_mips_elf_mkobject): Likewise. + + * elfxx-target.h (bfd_elfNN_mkobject): Default to + bfd_elf_make_object. + (ELF_TARGET_ID): New. Default to GENERIC_ELF_DATA. + (elfNN_bed): Initialize target_id. + +2010-08-25 Julian Brown + + * elf32-arm.c (arm_stub_required_alignment): New. + (arm_build_one_stub): Use above to partition stubs. + (make_branch_to_a8_stub): Use arm_stub_a8_veneer_lwm not + arm_stub_a8_veneer_b_cond. + +2010-08-25 Alan Modra + + * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. + * aout-ns32k.c (MY(bfd_reloc_type_lookup)): Likewise. + * aoutx.h (NAME(aout,reloc_type_lookup)): Likewise. + * coff-arm.c (coff_arm_reloc_type_lookup): Likewise. + * elf-hppa.h (elf_hppa_reloc_final_type): Likewise. + * reloc.c (bfd_default_reloc_type_lookup): Likewise. + * riscix.c (riscix_reloc_type_lookup): Likewise. + +2010-08-25 Alan Modra + + * elf.c (_bfd_elf_map_sections_to_segments): Don't load program + headers if any loaded section wraps the address space. Simplify + ~(m-1) to -m. Use lma rather than vma when determining whether + note sections are adjacent. + +2010-08-22 H.J. Lu + + PR ld/11933 + * elflink.c (elf_link_add_object_symbols): Don't check relocation + if input ELF object ID doesn't match output. + +2010-08-21 Ralf Wildenhues + + * configure: Regenerate. + +2010-08-20 H.J. Lu + + * merge.c (sec_merge_emit): Revert the last checkin. + +2010-08-20 Maciej W. Rozycki + + * elf32-sh.c (sh_elf_relocate_section): Handle non-ELF output + BFD. + +2010-08-20 Maciej W. Rozycki + + * elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT + options unless an m68k hash table has been found. + +2010-08-20 Nick Clifton + + * merge.c (sec_merge_emit): Do not zero pad sections that do not + have an alignment. + +2010-08-18 Pedro Alves + + PR corefile/8210 + + * bfd-in2.h: Regenerate. + * corefile.c (bfd_core_file_pid): New. + + * targets.c (BFD_JUMP_TABLE_CORE): Add NAME##_core_file_pid. + (struct bfd_target) <_core_file_pid>: New. + + * libbfd-in.h (_bfd_nocore_core_file_pid): Declare. + * libbfd.c (_bfd_nocore_core_file_pid): New. + + * elf-bfd.h (bfd_elf32_core_file_pid, bfd_elf64_core_file_pid): + Declare. + * elfcode.h (elf_core_file_pid): New define. + * elfcore.h (elf_core_file_pid): New function. + + * elf.c (elfcore_make_pid): Rewrite. + (elfcore_grok_prstatus): Only set core_pid if not set yet. + (elfcore_grok_prstatus) [!HAVE_PRSTATUS_T_PR_WHO]: Fallback to + getting the lwpid from prstat.pr_pid. + + * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + (elf64_x86_64_grok_psinfo): Extract the the main process's PID, + and store it in elf_tdata's core_pid field. + * elf32-i386.c (elf_i386_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + (elf_i386_grok_psinfo): Extract the the main process's PID, and + store it in elf_tdata's core_pid field. + + * elf32-am33lin.c (elf32_am33lin_grok_prstatus): Write the LWPID + to elf_tdata's core_lwpid instead of to core_pid. + * elf32-arm.c (elf32_arm_nabi_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-cris.c (cris_elf_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-frv.c (elf32_frv_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-hppa.c (elf32_hppa_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-mips.c (elf32_mips_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-ppc.c (ppc_elf_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-s390.c (elf_s390_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-score.c (s3_bfd_score_elf_grok_prstatus): Write the LWPID + to elf_tdata's core_lwpid instead of to core_pid. + * elf32-score7.c (s7_bfd_score_elf_grok_prstatus): Write the LWPID + to elf_tdata's core_lwpid instead of to core_pid. + * elf32-sh.c (elf32_shlin_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf32-xtensa.c (elf_xtensa_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf64-hppa.c (elf64_hppa_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf64-mips.c (elf64_mips_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elf64-ppc.c (ppc64_elf_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + * elfn32-mips.c (elf32_mips_grok_prstatus): Write the LWPID to + elf_tdata's core_lwpid instead of to core_pid. + + * plugin.c (bfd_plugin_core_file_pid): New function. + * aout-target.h (MY_core_file_pid): Define. + * aout-tic30.c (MY_core_file_pid, MY_core_file_p): New defines. + * coff-rs6000.c (coff_core_file_pid): New define. + (rs6000coff_vec, pmac_xcoff_vec): Use BFD_JUMP_TABLE_CORE. + * coff64-rs6000.c (coff_core_file_pid): New define. + (rs6000coff64_vec): Use BFD_JUMP_TABLE_CORE. + (xcoff64_core_file_pid): New define. + (aix5coff64_vec): Use BFD_JUMP_TABLE_CORE. + * mach-o-target.c (bfd_mach_o_core_file_pid): New define. + * aix386-core.c (aix386_core_file_pid): New define. + * hppabsd-core.c (hppabsd_core_core_file_pid): New define. + * hpux-core.c (hpux_core_core_file_pid): New define. + * irix-core.c (irix_core_core_file_pid): New define. + * lynx-core.c (lynx_core_file_pid): New define. + * osf-core.c (osf_core_core_file_pid): New define. + * ptrace-core.c (ptrace_unix_core_file_pid): New define. + * sco5-core.c (sco5_core_file_pid): New define. + * xcoff-target.h (coff_core_file_pid): New define. + * netbsd-core.c (netbsd_core_core_file_pid): New define. + +2010-08-13 H.J. Lu + + PR ld/11913 + * elf32-i386.c (elf_i386_finish_dynamic_sections): Check if + .got.plt section is discarded. + * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Likewise. + +2010-08-13 Nathan Sidwell + + * elf32-m69k.c (elf32_m68k_print_private_bfd_data): Detect EMAC_B + variant. + +2010-08-12 H.J. Lu + + PR binutils/11909 + * Makefile.am (coff-tic4x.lo): New. Disable -Werror. + (coff-tic54x.lo): Likewise. + * Makefile.in: Regenerated. + +2010-08-12 Todd Veldhuizen + + PR ld/11843 + * elflink.c (compute_bucket_count): Avoid futile long searches for + the best bucket size. + +2010-08-09 Richard Henderson + + PR ld/11891 + * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Disallow relaxing + to tlshi/lo until pos0 and pos1 are adjacent. Use the destination + register from the tldgd insn. + +2010-08-09 Catherine Moore + + * elfxx-mips.c (mips_elf_perform_relocation): Improve + interlinking error message. + +2010-08-06 Alan Modra + + * elf64-ppc.c (ha_reloc_match): Allow matches to other than r2. + (ppc64_elf_relocate_section): Nop out high part insn of large toc + code sequence when the high part of offset is zero. + +2010-08-04 Tristan Gingold + + * vms-alpha.c (alpha_vms_build_fixups): Write the EICP. + (alpha_vms_bfd_final_link): Explicitly forbid relocatable links. + Clear the SEC_RELOC flag. + +2010-08-04 Tristan Gingold + + * vms-alpha.c (alpha_vms_create_eisd_for_section): Make writable + sections with relocs. + (alpha_vms_add_fixup_lp): Set SEC_RELOC flag. + (alpha_vms_add_fixup_ca): Ditto. + (alpha_vms_add_fixup_qr): Ditto. + Add comments. + +2010-08-04 Tristan Gingold + + * vms-alpha.c (alpha_vms_create_eisd_for_section): Do not make + CODE sections writable. + +2010-08-04 Tristan Gingold + + * vms-alpha.c (alpha_vms_add_lw_fixup): Renamed to ... + (alpha_vms_add_fixup_lr): ... this for consistency. + (alpha_vms_add_qw_fixup): Removed. + Fix some comments. + (vms_get_symbol_info): Adjust type for unknown sections. + +2010-08-04 Tristan Gingold + + * vms-alpha.c (_bfd_vms_slurp_egsd): Use the canonical absolute + section for any absolute section. Remove some debugging code. + +2010-08-03 DJ Delorie + + * elf32-m32c.c (ELF_MAXPAGESIZE): Change page size to 256 bytes. + +2010-08-03 Tristan Gingold + + * vms-misc.c (vms_convert_to_var): Make it static. + (_bfd_vms_convert_to_var_unix_filename): Make it public. + +2010-08-03 Tristan Gingold + + * makefile.vms (OBJS): Update list. + +2010-08-03 Tristan Gingold + + * vms-alpha.c (_bfd_vms_slurp_egsd): Do not set SEC_HAS_CONTENTS + nor SEC_RELOC for empty sections. + +2010-08-03 Tristan Gingold + + * vms-alpha.c (evax_section_flags): Fix flags for absolute + section. Remove useless parenthesis. + +2010-08-03 Tristan Gingold + + * vms-lib.c (vms_lib_bread_raw): Change type of BUF argument. + (vms_lib_bread, vms_lib_bopen): Adjust. + +2010-08-02 Alan Modra + + PR 11866 + * elf.c (assign_file_positions_for_load_sections): Use p_vaddr to + calculate off_adjust rather than first section vma. + +2010-07-30 H.J. Lu + + * elflink.c (compute_bucket_count): Add ATTRIBUTE_UNUSED to info. + +2010-07-30 Anthony Green + + * config.bfd (targ_cpu): Add moxie-*-rtems support. + +2010-07-29 Alan Modra + + * elf64-ppc.c (ppc64_elf_edit_toc): Always adjust local syms in + .toc section, even when none are used in relocs. + +2010-07-27 Maciej W. Rozycki + + * elfxx-mips.h: Include "elf/mips.h". + (gprel16_reloc_p): New static inline function. + * elfxx-mips.c (_bfd_mips_elf_check_relocs) + [R_MIPS16_GOT16, R_MIPS_GOT16, R_MIPS_GOT_HI16, R_MIPS_GOT_LO16]: + Use got16_reloc_p. + (_bfd_mips_elf_relocate_section)[bfd_reloc_overflow]: Use + gprel16_reloc_p. + * elf32-mips.c (mips_info_to_howto_rel): Likewise. + * elfn32-mips.c (mips_info_to_howto_rel): Likewise. + +2010-07-27 Maciej W. Rozycki + + * elf64-mips.c (mips_elf64_howto_table_rela) + [R_MIPS_TLS_DTPMOD64]: Clear partial_inplace. + [R_MIPS_TLS_DTPREL64, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise. + [R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise. + [R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL64]: Likewise. + [R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise. + * elfn32-mips.c (elf_mips_howto_table_rela) + [R_MIPS_TLS_DTPMOD32]: Likewise. + [R_MIPS_TLS_DTPREL32, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise. + [R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise. + [R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL32]: Likewise. + [R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise. + +2010-07-23 Naveen.H.S + Ina Pandit + + * archures.c (DESCRIPTION): Define bfd_mach_v850e2 and + bfd_mach_v850e2v3. + * reloc.c (bfd_architecture): Define bfd_mach_v850e2 and + bfd_mach_v850e2v3. + (BFD_RELOC_V850_16_PCREL, BFD_RELOC_V850_17_PCREL, + BFD_RELOC_V850_22_PCREL, BFD_RELOC_V850_23, + BFD_RELOC_V850_32_PCREL, BFD_RELOC_V850_32_ABS, + BFD_RELOC_V850_16_SPLIT_OFFSET, BFD_RELOC_V850_16_S1, + BFD_RELOC_V850_LO16_SPLIT_OFFSET, BFD_RELOC_V850_SDA_15_16_OFFSET, + BFD_RELOC_V850_ZDA_16_16_OFFSET, BFD_RELOC_V850_CALLT_15_16_OFFSET, + BFD_RELOC_V850_32_GOTPCREL, BFD_RELOC_V850_16_GOT, + BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, + BFD_RELOC_V850_32_PLT_PCREL, BFD_RELOC_V850_COPY, + BFD_RELOC_V850_GLOB_DAT, BFD_RELOC_V850_JMP_SLOT, + BFD_RELOC_V850_RELATIVE, BFD_RELOC_V850_16_GOTOFF, + BFD_RELOC_V850_32_GOTOFF, BFD_RELOC_V850_CODE, + BFD_RELOC_V850_DATA): New relocations for V850 target. + * config.bfd: Match all v850 targets. + * cpu-v850.c (arch_info_struct): Define V850e2 and V850e2v3. + * elf32-v850.c (v850_elf_check_relocs): Check the newly added + relocations. + (v850_elf_perform_relocation ): Update the newly added + relocations. + (v850_elf_howto_t): Update the specifications of added + relocations. + (v850_elf_reloc_map): Update the relocation mappings. + (v850_elf_final_link_relocate): Maps added relocation into the + appropriate howto structure. + (v850_elf_object_p): Add support for V850E2 and V850E2V3. + (v850_elf_final_write_processing): Likewise. + (v850_elf_merge_private_bfd_data): Likewise. + (v850_elf_print_private_bfd_data): Likewise. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2010-07-23 Alan Modra + + * archive.c (_bfd_archive_bsd44_construct_extended_name_table): + Correct format specifier. + +2010-07-22 Alan Modra + + * ecoff.c: Don't include aout/ranlib.h. + (_bfd_ecoff_slurp_armap): Use correct struct for ardata->symdefs. + (_bfd_ecoff_write_armap): Output ar_date and ar_size using + _bfd_ar_spacepad. + +2010-07-22 Alan Modra + + * aoutx.h (some_aout_object_p): Don't set EXEC_P for files with + relocs. + +2010-07-20 Alan Modra + + * elf.c (assign_file_positions_for_load_sections): Check that + zero size sections are allocated in segments too. + (assign_file_positions_for_non_load_sections): Warn if zero + size alloc sections are found here. + (copy_elf_program_header): Don't drop zero size sections from + segment map. + (copy_private_bfd_data): Check for changes in zero size sections. + +2010-07-17 Alan Modra + + * elf.c (_bfd_elf_map_sections_to_segments): Force new segment + for sections with overlapping LMAs. + (assign_file_positions_for_load_sections): Catch overlap for + sections that wrap around the address space. Replace a + warning that duplicates ld's --check-sections error with a + warning that lma has been adjusted for overlapping sections. + +2010-07-14 Cary Coutant + + PR ld/11817 + * dwarf2.c (read_section): Revert patch for compressed debug sections. + (find_line): Likewise. + (read_and_uncompress_section): Remove. + +2010-07-13 H.J. Lu + + PR ld/11812 + * elf32-i386.c (elf_i386_size_dynamic_sections): Don't + allocate .got.plt section if there are no GOT nor PLT + entries. + * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. + +2010-07-13 H.J. Lu + + PR ld/11791 + * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Support + garbage collection against STT_GNU_IFUNC symbols. + + * elf32-i386.c (elf_i386_get_local_sym_hash): Don't set + elf.plt.offset/elf.got.offset to -1. + (elf_i386_tls_transition): Skip TLS transition for functions. + (elf_i386_gc_sweep_hook): Support STT_GNU_IFUNC symbols. + + * elf64-x86-64.c (elf64_x86_64_get_local_sym_hash): Don't set + elf.plt.offset/elf.got.offset to -1. + (elf64_x86_64_tls_transition): Skip TLS transition for functions. + (elf64_x86_64_gc_sweep_hook): Support STT_GNU_IFUNC symbols. + 2010-07-12 H.J. Lu * elf32-i386.c (elf_i386_check_relocs): Re-indent.