PR ld/12942
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 69a881ceff60783eba5f5f39fee92a6ce2be41db..a1b91973d459d0261edf3ff480d65b97caa4d0de 100644 (file)
@@ -1,3 +1,292 @@
+2011-07-09  Alan Modra  <amodra@gmail.com>
+
+       PR ld/12942
+       * elflink.c (elf_link_add_object_symbols): Use elf_discarded_section
+       rather than kept_section to determine whether a symbol is from
+       a discarded section.
+       * cofflink.c (coff_link_add_symbols): Make symbols from discarded
+       sections appear undefined.
+
+2011-07-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/12942
+       * elf-bfd.h (_bfd_elf_section_already_linked): Replace
+       "asection *" with "struct already_linked *".
+       * libbfd-in.h (_bfd_nolink_section_already_linked): Likewise.
+       (_bfd_generic_section_already_linked): Likewise.
+       (bfd_section_already_linked_table_insert): Likewise.
+       (struct already_linked): New.
+       (struct bfd_section_already_linked): Use it.
+       * elflink.c (_bfd_elf_section_already_linked): Replace.
+       "asection *" with "struct already_linked *".  Replace the plugin
+       dummy with the LTO output.
+       * linker.c (_bfd_generic_section_already_linked): Likewise.
+       * targets.c (struct already_linked): Add forward declaration.
+       (bfd_target): Replace "struct bfd_section *" with
+       "struct already_linked *" in _section_already_linked.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2011-07-06  Tristan Gingold  <gingold@adacore.com>
+
+       * mach-o.h: Move loader related definitions to
+       include/mach-o/loader.h.  Include it.
+
+2011-07-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_backend_post_process_headers): Always
+       define to _bfd_elf_set_osabi.
+
+2011-07-03  Samuel Thibault  <samuel.thibault@gnu.org>
+           Thomas Schwinge  <thomas@schwinge.name>
+
+       PR binutils/12913
+       * elf.c (_bfd_elf_set_osabi): Use ELFOSABI_GNU name instead of
+       ELFOSABI_LINUX alias.
+       * elf32-hppa.c: Likewise.
+       * elf32-i370.c: Likewise.
+       * elf64-hppa.c: Likewise.
+
+2011-07-01  Ian Lance Taylor  <iant@google.com>
+
+       * elf32-i386.c (elf_i386_eh_frame_plt): Correct expression: change
+       DW_OP_lit3 to DW_OP_lit2.
+
+2011-07-01  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't look at
+       dyn relocs when called to copy flags for a weak sym.
+       * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
+       (ppc64_elf_merge_private_bfd_data): Delete.
+       (bfd_elf64_bfd_merge_private_bfd_data): Define as
+       _bfd_generic_verify_endian_match.
+
+2011-06-30  Bernd Schmidt  <bernds@codesourcery.com>
+
+       * bfd/elf32-tic6x.c (elf32_tic6x_set_osabi): Also set it if
+       link_info is NULL.
+
+2011-06-28  Tristan Gingold  <gingold@adacore.com>
+
+       * vms-alpha.c (vms_private_data_struct): Make vms_linkage_index
+       unsigned int.
+       (_bfd_vms_write_etir): Write linkage index from reloc.
+
+2011-06-28  Fawzi Mohamed <fawzi.mohamed@nokia.com>
+
+       * mach-o.c (bfd_mach_o_read_command): Also ignore
+       BFD_MACH_O_LC_ROUTINES_64.
+
+2011-06-27  Tristan Gingold  <gingold@adacore.com>
+
+       * vms-alpha.c (_bfd_vms_write_etir): Use 'section' to get current
+       section target index.
+
+2011-06-27  Nick Clifton  <nickc@redhat.com>
+
+       * cisco-core.c (cisco_core_little_vec): Add initialization of
+       match_priority field.
+
+2011-06-27  Tristan Gingold  <gingold@adacore.com>
+
+       * cache.c: Include bfd_stdint.h.
+       (cache_bmmap): Change profile.  Return region start and size.
+       * bfdio.c (struct bfd_iovec): Change bmmap profile.
+       (bfd_mmap): Change profile and adjust.   Update comment.
+       (memory_bmmap): Change profile.
+       * opncls.c (opncls_bmmap): Change profile.
+       * vms-lib.c (vms_lib_bmmap): Likewise.
+       * libbfd.h: Regenerate.
+       * bfd-in2.h: Regenerate.
+
+2011-06-27  Tristan Gingold  <gingold@adacore.com>
+
+       * vms-misc.c (vms_time_to_time_t): Adjust overflow detection.
+       Add comment.
+
+2011-06-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_backend_post_process_headers): Don't
+       define for FreeBSD/x86-64 nor FreeBSD/L1OM.  Define for L1OM.
+
+2011-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Initialize
+       PLT_EH_FRAME.
+       * elf32-i386.c (elf_i386_link_hash_table): Likewise.
+
+2011-06-24  Richard Henderson  <rth@redhat.com>
+
+       PR ld/12928
+       * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Recover the
+       tlsgd insn before swapping adjacent insns.
+
+2011-06-24  Tristan Gingold  <gingold@adacore.com>
+
+       * vms-alpha.c (alpha_vms_slurp_relocs): Add a guard for relocs in the
+       absolute section.
+
+2011-06-24  Alan Modra  <amodra@gmail.com>
+
+       PR ld/12921
+       * elf.c (assign_file_positions_for_load_sections): Don't align
+       sh_offset for all SHT_NOBITS sections here, just .tbss sections
+       that don't get a PT_LOAD.
+
+2011-06-22  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       * elf32-sh.c (sh_elf_relocate_section): Allow R_SH_TLS_LE_32 for PIE.
+       (sh_elf_check_relocs): Likewise.
+
+2011-06-22  Richard Henderson  <rth@redhat.com>
+
+       * elf64-alpha.c (elf64_alpha_check_relocs): No dynamic reloc for
+       TPREL in a PIE image.
+       (alpha_dynamic_entries_for_reloc): Likewise.
+       (elf64_alpha_relocate_section): Allow TPREL in PIE images.
+       (elf64_alpha_relax_got_load): Likewise.
+
+2011-06-22  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
+
+       * elf32-arm.c (elf32_arm_final_link_relocate): Allow R_ARM_TLS_LE32
+       for PIE.
+
+2011-06-22  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (_bfd_elf_merge_symbol): Allow type changes for
+       plugin symbols.  Fix segfault on linker scrip defined syms.
+
+2011-06-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR ld/12570
+       * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Allow no relocations
+       at all for linker created .eh_frame sections.
+       (_bfd_elf_discard_section_eh_frame): Handle linker created
+       .eh_frame sections with no relocations.
+       * elf64-x86-64.c: Include dwarf2.h.
+       (elf_x86_64_eh_frame_plt): New variable.
+       (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
+       PLT_FDE_LEN_OFFSET): Define.
+       (struct elf_x86_64_link_hash_table): Add plt_eh_frame field.
+       (elf_x86_64_create_dynamic_sections): Create and fill in
+       .eh_frame section for .plt section.
+       (elf_x86_64_size_dynamic_sections): Write .plt section size
+       into .eh_frame FDE covering .plt section.
+       (elf_x86_64_finish_dynamic_sections): Write .plt section
+       start into .eh_frame FDE covering .plt section.  Call
+       _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
+       (elf_backend_plt_alignment): Define to 4.
+       * elf32-i386.c: Include dwarf2.h.
+       (elf_i386_eh_frame_plt): New variable.
+       (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
+       PLT_FDE_LEN_OFFSET): Define.
+       (struct elf_i386_link_hash_table): Add plt_eh_frame field.
+       (elf_i386_create_dynamic_sections): Create and fill in
+       .eh_frame section for .plt section.
+       (elf_i386_size_dynamic_sections): Write .plt section size
+       into .eh_frame FDE covering .plt section.
+       (elf_i386_finish_dynamic_sections): Write .plt section
+       start into .eh_frame FDE covering .plt section.  Call
+       _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
+       (elf_backend_plt_alignment): Define to 4.
+
+2011-06-19  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_backend_post_process_headers): Defined
+       for x32.
+
+2011-06-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c: Include <stdarg.h> and CORE_HEADER if
+       CORE_HEADER is defined.
+       (elf_x86_64_write_core_note): New.
+       (elf_backend_write_core_note): Likewise.
+
+       * hosts/x86-64linux.h (uint64_t): New.
+       (user_regsx32_struct): Likewise.
+       (elf_gregx32_t): Likewise.
+       (ELF_NGREGX32): Likewise.
+       (elf_gregsetx32_t): Likewise.
+       (elf_prstatusx32): Likewise.
+       (prstatusx32_t): Likewise.
+       (user_fpregs32_struct): Removed.
+       (user_fpxregs32_struct): Likewise.
+       (user32): Likewise.
+       (elf_fpregset32_t): Likewise.
+       (elf_fpxregset32_t): Likewise.
+       (prgregset32_t): Likewise.
+       (prfpregset32_t): Likewise.
+
+2011-06-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_grok_prstatus): Support x32.
+       (elf_x86_64_grok_psinfo): Likewise.
+
+2011-06-16  Nick Clifton  <nickc@redhat.com>
+
+       * elf.c (elf_find_function): Fail if not provided with a symbol
+       table.
+
+2011-06-15  Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * elf-bfd.h (elfcore_write_arm_vfp): Add prototype.
+       * elf.c (elfcore_grok_arm_vfp): New function.
+       (elfcore_grok_note): Call it to handle NT_ARM_VFP notes.
+       (elfcore_write_arm_vfp): New function.
+       (elfcore_write_register_note): Call it to handle .reg-arm-vfp.
+
+2011-06-14  Richard Henderson  <rth@redhat.com>
+
+       * elf64-alpha.c (elf64_alpha_copy_indirect_symbol): Rename from
+       elf64_alpha_merge_ind_symbols; adjust for the generic interface.
+       (elf64_alpha_always_size_sections): Don't call
+       elf64_alpha_merge_ind_symbols.
+       (elf_backend_copy_indirect_symbol): New.
+
+2011-06-14  Alan Modra  <amodra@gmail.com>
+
+       PR ld/12887
+       * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Check sec_info_type
+       before doing anything.
+       (_bfd_elf_discard_section_eh_frame): Likewise.
+
+2011-06-14  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.am: Formatting.
+       * Makefile.in: Regenerate.
+       * configure.in (bfd_elf64_tilegx_vec): Add elfxx-tilegx.lo.
+       * po/SRC-POTFILES.in: Regnerate.
+
+2011-06-14  Alan Modra  <amodra@gmail.com>
+
+       * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Don't use PTR.
+       (allocate_dynrelocs, readonly_dynrelocs): Replace PTR with void *.
+       Don't handle warning symbols here.
+       * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): As above.
+       (allocate_dynrelocs, readonly_dynrelocs): As above.
+
+2011-06-14  Alan Modra  <amodra@gmail.com>
+
+       PR ld/12851
+       * elflink.c (_bfd_elf_gc_mark_extra_sections): New function.
+       (elf_gc_sweep): Don't treat debug and sections like .comment
+       specially here.
+       (bfd_elf_gc_sections): Treat note sections as gc roots only when
+       not part of a group.  Always call gc_mark_extra_sections.
+       * elf-bfd.h (_bfd_elf_gc_mark_extra_sections): Declare.
+       * elfxx-target.h (elf_backend_gc_mark_extra_sections): Default to
+       _bfd_elf_gc_mark_extra_sections.
+       * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Call
+       _bfd_elf_gc_mark_extra_sections.
+       * elf32-tic6x.c (elf32_tic6x_gc_mark_extra_sections): Likewise.
+
+2011-06-13  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-tilepro.c (tilepro_elf_check_relocs): Delete unused local
+       variable 'local_got_offsets'.
+       * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
+       (tilegx_finish_dyn): Delete unused local variable 'abi_64_p'.
+
 2011-06-13  Walter Lee  <walt@tilera.com>
 
        * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
This page took 0.027248 seconds and 4 git commands to generate.