X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=402cdc49deb32a5a7b2565a0e07ad45e1fd5215f;hb=9143e72c6d4ddefbcb41c0f6361ad140354145ef;hp=f190b9f3be042725e5d47fc58a7598cdf8f8afeb;hpb=ac98f9e2275ffcca560eaa0bddd282a1ff94fc28;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index f190b9f3be..402cdc49de 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,505 @@ +2018-07-11 Maciej W. Rozycki + Rich Felker + + PR ld/22570 + * elfxx-mips.c (mips_tls_got_relocs): Use `bfd_link_dll' rather + than `bfd_link_pic' to determine whether dynamic relocations are + to be produced. + (mips_elf_initialize_tls_slots): Likewise. + +2018-07-10 Maciej W. Rozycki + + * elflink.c (bfd_elf_final_link): Rename `remove' local variable + to `remove_section'. + +2018-07-10 Alan Modra + + * elf32-xgate.h: Delete. + * elf32-xgate.c: Delete unnecessary forward declarations, add two + that are now needed. + (xgate_elf_bfd_link_hash_table_create) + (xgate_elf_bfd_link_hash_table_free) + (xgate_elf_set_mach_from_flags, struct xgate_scan_param) + (stub_hash_newfunc, elf32_xgate_add_symbol_hook) + (elf32_xgate_setup_section_lists, elf32_xgate_size_stubs) + (elf32_xgate_build_stubs, elf32_xgate_check_relocs) + (elf32_xgate_relocate_section, _bfd_xgate_elf_set_private_flags) + (elf32_xgate_post_process_headers): Delete. + (elf32_xgate_backend_symbol_processing): New function. + (xgate_elf_ignore_reloc, xgate_elf_special_reloc) + (_bfd_xgate_elf_print_private_bfd_data): Make static. + (ELF_TARGET_ID, elf_info_to_howto, elf_backend_check_relocs) + (elf_backend_relocate_section, elf_backend_object_p) + (elf_backend_final_write_processing, elf_backend_can_gc_sections) + (elf_backend_post_process_headers, elf_backend_add_symbol_hook) + (bfd_elf32_bfd_link_hash_table_create) + (bfd_elf32_bfd_set_private_flags) + (xgate_stub_hash_lookup): Don't define. + (elf_backend_symbol_processing): Define. + * elf-bfd.h (elf_target_id): Delete XGATE_ELF_DATA. + +2018-07-09 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Don't set + `->needs_lazy_stub' if the stubs output section is the absolute + section. + +2018-07-09 H.J. Lu + + PR ld/23388 + * configure.ac: Use changequote for "i[3-7]86-*-linux-*". + * configure: Regenerated. + +2018-07-09 Alan Modra + + * elf32-m68hc1x.c (elf32_m68hc11_post_process_headers): Call + _bfd_elf_post_process_headers. + +2018-07-06 Max Filippov + + * elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Don't allocate + space for dynamic relocation for undefined weak symbol. + (elf_xtensa_relocate_section): Don't emit R_XTENSA_RELATIVE + relocation for undefined weak symbols. + (shrink_dynamic_reloc_sections): Don't shrink dynamic relocation + section for relocations against undefined weak symbols. + +2018-07-06 Alan Hayward + + * elf.c (elfcore_grok_aarch_sve): New function. + (elfcore_grok_note): Check for Aarch64 SVE. + (elfcore_write_aarch_sve): New function. + (elfcore_write_register_note): Check for Aarch64 SVE. + * elf-bfd.h(elfcore_grok_aarch_sve): New declaration. + +2018-07-06 Alan Modra + + * elf32-arm.c (elf32_arm_nabi_write_core_note): Don't use + DIAGNOTIC_PUSH and DIAGNOSTIC_POP unconditionally. + * elf32-ppc.c (ppc_elf_write_core_note): Likewise. + * elf32-s390.c (elf_s390_write_core_note): Likewise. + * elf64-ppc.c (ppc64_elf_write_core_note): Likewise. + * elf64-s390.c (elf_s390_write_core_note): Likewise. + * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. + +2018-07-05 Jim Wilson + + * config.bfd (riscv32*-*-*): Renamed from riscv32-*-*. + (riscv64*-*-*): Likewise. + (riscv-*-*): Add as an alias for riscv32*-*-*. + +2018-07-05 H.J. Lu + + PR ld/23372 + * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove x86 + ISA properties with empty bits. + +2018-07-05 Nick Clifton + + * po/ru.po: Updated Russian translation. + +2018-07-05 Alan Modra + + * elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Update prototype. + * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Return error + on mismatch. Remove "warning: " from messages. Track last bfd + used to set tags. + (ppc_elf_merge_obj_attributes): Likewise. Handle status from + _bfd_elf_ppc_merge_fp_attributes. + * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Handle status + from _bfd_elf_ppc_merge_fp_attributes. + +2018-07-04 H.J. Lu + + * Makefile.am (bfdinclude_HEADERS): Add $(INCDIR)/diagnostics.h. + * Makefile.in: Regenerated. + +2018-07-03 Alan Modra + + * elflink.c (bfd_elf_final_link): Remove zero size .gnu.attributes + sections. + +2018-07-03 Alan Modra + + * elf-bfd.h (ATTR_TYPE_FLAG_ERROR, ATTR_TYPE_HAS_ERROR): Define. + * elf-attrs.c (is_default_attr): Handle ATTR_TYPE_HAS_ERROR. + * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Use + ATTR_TYPE_FLAG_INT_VAL. Set ATTR_TYPE_HAS_ERROR on finding + incompatible attribute. + (ppc_elf_merge_obj_attributes): Likewise. Return + _bfd_elf_merge_object_attributes result. + * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Return + _bfd_elf_merge_object_attributes result. + +2018-07-03 Alan Modra + + PR 17550 + * elflink.c (_bfd_elf_fix_symbol_flags): Hide dynamic symbols + in discarded sections. + +2018-07-02 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Set + `mark' for symbols created from `mips_elf_dynsym_rtproc_names' + list. + +2018-07-02 Maciej W. Rozycki + + * elf64-mips.c (micromips_elf64_howto_table_rel): Add + R_MICROMIPS_HI0_LO16, R_MICROMIPS_TLS_GD, R_MICROMIPS_TLS_LDM, + R_MICROMIPS_TLS_DTPREL_HI16, R_MICROMIPS_TLS_DTPREL_LO16, + R_MICROMIPS_TLS_GOTTPREL, R_MICROMIPS_TLS_TPREL_HI16, + R_MICROMIPS_TLS_TPREL_LO16, R_MICROMIPS_GPREL7_S2 and + R_MICROMIPS_PC23_S2 relocation entries. + (micromips_elf64_howto_table_rela): Likewise. + (micromips_reloc_map): Likewise. + * elfn32-mips.c (elf_micromips_howto_table_rel): Likewise. + (elf_micromips_howto_table_rela): Likewise. + (micromips_reloc_map): Likewise. + +2018-07-02 H.J. Lu + + PR ld/23324 + * elf64-x86-64.c (elf_x86_64_relocate_section): Clear the + R_X86_64_converted_reloc_bit bit. + +2018-07-02 Jeff Muizelaar + Tom Tromey + + PR 13157 + PR 21787 + * mach-o.c (bfd_mach_o_fat_close_and_cleanup): New function. + (bfd_mach_o_close_and_cleanup): Redefine. + * archive.c (_bfd_unlink_from_archive_parent): New function, + extracted from.. + (_bfd_archive_close_and_cleanup): ..here. + (bfd_generic_archive_p): Do not clear archive's format. + * libbfd-in.h (_bfd_unlink_from_archive_parent): Declare. + * libbfd.h: Regenerate. + +2018-07-02 Thomas Preud'homme + + * archures.c (bfd_mach_arm_5TEJ, bfd_mach_arm_6, bfd_mach_arm_6KZ, + bfd_mach_arm_6T2, bfd_mach_arm_6K, bfd_mach_arm_7, bfd_mach_arm_6M, + bfd_mach_arm_6SM, bfd_mach_arm_7EM, bfd_mach_arm_8, bfd_mach_arm_8R, + bfd_mach_arm_8M_BASE, bfd_mach_arm_8M_MAIN): Define. + * bfd-in2.h: Regenerate. + * cpu-arm.c (arch_info_struct): Add entries for above new + bfd_mach_arm values. + * elf32-arm.c (bfd_arm_get_mach_from_attributes): Add Tag_CPU_arch to + bfd_mach_arm mapping logic for pre Armv4 and Armv5TEJ and later + architectures. Force assert failure for any new Tag_CPU_arch value. + +2018-07-02 Thomas Preud'homme + + * doc/bfdint.texi: Use command-line consistently when used in a + compount word. + * doc/bfdsumm.texi: Likewise. + +2018-06-29 Maciej W. Rozycki + + * elfxx-mips.c (allocate_dynrelocs): Remove extraneous symbol + visibility check made for undefined weak symbols. + +2018-06-26 Nick Clifton + + * po/uk.po: Updated Ukranian translation. + +2018-06-25 Nick Clifton + + * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_stub_name): Check + for malloc returning NULL. + (_bfd_aarch64_erratum_843419_fixup): Check for + _bfd_aarch64_erratum_835769_stub_name returning NULL. + +2018-06-24 Nick Clifton + + * po/bfd.pot: Regenerate. + +2018-06-24 Nick Clifton + + * version.m4: Update version string to 2.31.51. + * configure: Regenerate. + +2018-06-24 Nick Clifton + + 2.31 branch created. + +2018-06-21 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_compact_eh_encoding) + (_bfd_mips_elf_cant_unwind_opcode): Correct formatting. + +2018-06-21 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_post_process_headers): Keep + EI_ABIVERSION setting together. + +2018-06-21 Maciej W. Rozycki + + * elfxx-mips.c (MIPS_LIBC_ABI_DEFAULT, MIPS_LIBC_ABI_MIPS_PLT) + (MIPS_LIBC_ABI_UNIQUE, MIPS_LIBC_ABI_MIPS_O32_FP64) + (MIPS_LIBC_ABI_MAX): New enumeration constants. + (_bfd_mips_post_process_headers): Use them in place of magic + numbers. + +2018-06-21 Jim Wilson + + * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Update comment. + Use SYMBOL_REFERENCES_LOCAL. Add asserts for h->got.offset. + +2018-06-21 Alan Modra + + * doc/Makefile.am (AUTOMAKE_OPTIONS): Add "foreign". + * doc/Makefile.in: Regenerate. + +2018-06-20 Renlin Li + + * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use PG_OFFSET + to resolve BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, + BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC. + +2018-06-20 Nick Clifton + + PR 23316 + * opncls.c (get_build_id): Check for a negative or excessive data + size in the build-id note. + +2018-06-20 Nick Clifton + + PR 23299 + * mach-o.c (cputype): New function. + (cpusubtype): New function. + (bfd_mach_o_bfd_print_private_data): New function. Dispalys the + values in the MACH-O file header. + (bfd_mach_o_bfd_copy_private_header_data): Copy the cputype and + cpusubtype fields from the input bfd's mach-o header to the output + bfd. + * mach-o-target.c (bfd_mach_o_bfd_print_private_bfd_data): + Redefine to bfd_mach_o_bfd_print_private_data. + * mach-o.h (bfd_mach_o_bfd_print_private_bfd_data): Prototype. + +2018-06-19 Maciej W. Rozycki + + PR ld/22966 + * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Verify the + `.got.plt' entry referred is in range. + (mips_finish_exec_plt): Correct the range check for `.got.plt' + start. Replace the assertion used for that with a proper error + message. + +2018-06-19 Maciej W. Rozycki + + * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Fix + formatting. + +2018-06-19 Simon Marchi + + * Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11. + (INCLUDES): Rename to ... + (AM_CPPFLAGS): ... this. + * configure.ac: Remove AC_PREREQ. + * doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add + info-in-builddir no-texinfo.tex. + (info_TEXINFOS): Rename bfd.texinfo to bfd.texi. + * doc/bfd.texinfo: Rename to ... + * doc/bfd.texi: ... this. + * Makefile.in: Re-generate. + * aclocal.m4: Re-generate. + * config.in: Re-generate. + * configure: Re-generate. + * doc/Makefile.in: Re-generate. + +2018-06-18 Mephi + + PR 23297 + * mach-o-x86-64.c (x86_64_howto_table): Add entry for + BFD_RELOC_MACH_O_X86_64_RELOC_TLV. + (bfd_mach_o_x86_64_canonicalize_one_reloc): Handle the new reloc. + (bfd_mach_o_x86_64_swap_reloc_out): Likewise. + * reloc.c (BFD_RELOC_MACH_O_X86_64_TV): New entry. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2018-06-14 Faraz Shahbazker + + * elfxx-mips.c (print_mips_ases): Add GINV extension. + +2018-06-14 H.J. Lu + + PR binutils/23267 + * elf.c (_bfd_elf_get_symbol_version_string): Check if the first + symbol version is base version. + +2018-06-14 Alan Modra + + * elf-bfd.h (struct elf_link_hash_table): Add "dynamic_relocs". + * elflink.c (_bfd_elf_init_2_index_sections): Comment fix. + (_bfd_elf_add_dynamic_entry): Set "dynamic_relocs". + (_bfd_elf_link_renumber_dynsyms): Exclude all section symbols when + "dynamic_relocs" is not set. + * elfxx-mips.c (count_section_dynsyms): Likewise. + +2018-06-14 Alan Modra + + PR 23282 + * bfdio.c (bfd_seek): Optimize away seeks to current position. + +2018-06-13 Scott Egerton + Faraz Shahbazker + + * elfxx-mips.c (print_mips_ases): Add CRC. + +2018-06-08 H.J. Lu + + PR ld/23161 + * elfxx-x86.c (elf_x86_hide_linker_defined): New function. + (_bfd_x86_elf_link_check_relocs): Use it to hide hidden + __bss_start, _end and _edata in shared libraries. + +2018-06-07 Alan Modra + + * elf32-tic6x.c (elf32_tic6x_check_relocs): Reference + __c6xabi_DSBT_BASE explicitly for R_C6000_SBR_* relocs. + +2018-06-05 Alan Modra + + * bfd.c (struct bfd): Update comment on "where" usage. + * bfdio.c (bfd_bwrite, bfd_stat): Use and update "iovec", + "iostream", and "where" from containing archive file. Return + error on NULL iovec. + (bfd_bread): Similarly, and return error attempted out of + bounds archive element access. + (bfd_tell, bfd_flush): Use and update "iovec", "iostream", and + "where" from containing archive file. + (bfd_seek): Likewise. Return error on NULL iovec. Don't + attempt to optimize away seeks. Don't paper over errors by + calling bfd_tell. + (bfd_get_mtime): Call bfd_stat rather than iovec->bstat. + (bfd_get_size): Likewise. + (bfd_mmap): Operate on and use iovec of containing archive + file. Return error on NULL iovec. + * cache.c (bfd_cache_lookup_worker): Abort if working on + archive element bfd. + (cache_bread_1): Delete bfd parameter, add FILE* parameter. + Don't ignore zero byte reads. + (cache_bread): Look up FILE* in cache here. Error on NULL + lookup. + (cache_bwrite): Rename "where" to "from". + (cache_bmmap): Don't handle archive elements. + * coffcode.h (coff_slurp_line_table): Exit early on zero + lineno count. + * bfd-in2.h: Regenerate. + +2018-06-05 Alan Modra + + PR 23254 + * plugin.c (bfd_plugin_open_input): Allow for possibility of + nested archives. Open file again for plugin. + (try_claim): Don't save and restore file position. Close file + if not claimed. + * sysdep.h (O_BINARY): Define. + +2018-06-04 Max Filippov + + * elf32-xtensa.c (xtensa_read_table_entries): Make global. + (compute_fill_extra_space): Drop declaration. Rename function to + xtensa_compute_fill_extra_space. + (compute_ebb_actions, remove_dead_literal): Update references to + compute_fill_extra_space. + +2018-06-04 Volodymyr Arbatov + + * elf32-xtensa.c (elf32xtensa_separate_props): New global + variable. + (xtensa_add_names): New function. + (xtensa_property_section_name): Add new parameter + separate_sections, use it to choose property section name. + (xtensa_get_separate_property_section): New function. + (xtensa_get_property_section): Invoke + xtensa_get_separate_property_section to get individual property + section if it exists, common property section otherwise. + (xtensa_make_property_section): Pass elf32xtensa_separate_props + to xtensa_property_section_name. + +2018-06-04 H.J. Lu + + PR binutils/23146 + * bfd-in.h: Include "diagnostics.h". + * bfd-in2.h: Regenerated. + * elf32-arm.c (elf32_arm_nabi_write_core_note): Use + DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and + DIAGNOSTIC_POP to silence GCC 8.1 warnings with + -Wstringop-truncation. + * elf32-ppc.c (ppc_elf_write_core_note): Likewse. + * elf32-s390.c (elf_s390_write_core_note): Likewse. + * elf64-ppc.c (ppc64_elf_write_core_note): Likewse. + * elf64-s390.c (elf_s390_write_core_note): Likewse. + * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse. + +2018-06-03 Jim Wilson + + PR ld/23244 + * elfnn-riscv.c (riscv_elf_relocate_section) : Check + for and handle an undefined weak with no PLT. + + PR ld/22756 + * elfnn-riscv.c (riscv_relax_delete_bytes): Add versioned_hidden check + to code that ignores duplicate symbols. + +2018-06-01 H.J. Lu + + * version.m4: Bump version to 2.30.52 + * configure: Regenerated. + +2018-06-01 Alan Modra + + * bfd.c (_bfd_error_handler): Arrange for this function to be + declared in bfd-in2.h. + * libbfd-in.h (_bfd_error_handler): Don't declare. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2018-05-30 Amaan Cheval + + * config.bfd (x86_64-*-*): Add pei-x86-64 target to x86_64-*-rtems* + This is needed to generate UEFI application image files from ELFs. + +2018-05-28 H.J. Lu + + * elf32-i386.c (elf_i386_lazy_plt): Add plt_tlsdesc_entry, + plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, + plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and + plt_tlsdesc_got2_insn_end for TLSDESC entry. + (elf_i386_lazy_ibt_plt): Likewise. + (elf_i386_nacl_plt): Likewise. + * elf64-x86-64.c (tlsdesc_plt_entry): Moved and renamed to ... + (elf_x86_64_tlsdesc_plt_entry): This. + (elf_x86_64_lazy_plt): Add plt_tlsdesc_entry, + plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, + plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and + plt_tlsdesc_got2_insn_end for TLSDESC entry. + (elf_x86_64_lazy_bnd_plt): Likewise. + (elf_x86_64_lazy_ibt_plt): Likewise. + (elf_x32_lazy_ibt_plt): Likewise. + (elf_x86_64_nacl_plt): Likewise. + (elf_x86_64_finish_dynamic_sections): Use plt_tlsdesc_entry, + plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, + plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and + plt_tlsdesc_got2_insn_end to update TLSDESC entry. + * elfxx-x86.h (elf_x86_lazy_plt_layout): Update comments. + Add plt_tlsdesc_entry, plt_tlsdesc_entry_size, + plt_tlsdesc_got1_offset, plt_tlsdesc_got2_offset, + plt_tlsdesc_got1_insn_end and plt_tlsdesc_got2_insn_end. + (elf_x86_non_lazy_plt_layout): Update comments. + (elf_x86_plt_layout): Likewise. + 2018-05-28 H.J. Lu PR ld/23238