]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/ChangeLog
x86-64: Move PIC check for PC-relative relocations back
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
index 4f523fa3ae1a9217499a19cbe2b5ea11a33434fa..962fc1f0375cd4b5633fc48abb19566b5b53be81 100644 (file)
@@ -1,3 +1,725 @@
+2019-08-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24905
+       * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
+       PC-relative relocations back to ...
+       (elf_x86_64_relocate_section): Here.
+
+2019-08-16  Martin Liska  <mliska@suse.cz>
+
+       PR ld/24912
+       * elflink.c: Report error only for not relocatable.
+       * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
+       here lto_slim_object as it's handled in caller.
+
+2019-08-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
+
+2019-08-15  Jim Wilson  <jimw@sifive.com>
+
+       * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
+       RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
+       to c.li instruction, and use ENCODE_RVC_IMM to set value.
+
+2019-08-15  Tom Tromey  <tromey@adacore.com>
+
+       * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
+       of section.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       PR 24623
+       * dwarf2.c (stash_comp_unit): New function, extracted from..
+       (_bfd_dwarf2_find_nearest_line): ..here.
+       (find_abstract_instance): Parse comp units and decode line info
+       as needed.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
+       (comp_unit_find_nearest_line): Use it here..
+       (_bfd_dwarf2_find_symbol_bias): ..and here.
+
+2019-08-14  Alan Modra  <amodra@gmail.com>
+
+       * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
+       * libbfd-in.h  (_bfd_dwarf2_find_nearest_line): Update prototype.
+       * coffgen.c (coff_find_nearest_line_with_names): Adjust
+       _bfd_dwarf2_find_nearest_line calls.
+       * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
+       * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
+       * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
+       * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
+       * libbfd.h: Regenerate.
+
+2019-08-09  Mihailo Stojanovic  <mihailo.stojanovic@rt-rk.com>
+
+       * elf-bfd.h (struct elf_backend_data): New members.
+       * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
+       .gnu.hash section if necessary.
+       (struct collect_gnu_hash_codes): New member.
+       (elf_gnu_hash_process_symidx): New function name.
+       (elf_renumber_gnu_hash_syms): Ignore local and undefined
+       symbols. Record xlat location for every symbol which should have
+       a .MIPS.xhash entry.
+       (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
+       dynamic section if necessary.
+       (GNU_HASH_SECTION_NAME): New define.
+       (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
+       Update the section size info.
+       * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
+       (struct mips_elf_link_hash_entry): New member.
+       (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
+       table location.
+       (mips_elf_sort_hash_table): Initialize the pointer to the
+       .MIPS.xhash section.
+       (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
+       translation table entry with the symbol dynindx.
+       (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
+       (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
+       info.
+       (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
+       section.
+       (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
+       dynamic section.
+       (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
+       (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
+       sh_link info.
+       (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
+       (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
+       (_bfd_mips_post_process_headers): Mark the ABI version as
+       MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
+       but not a .hash section.
+       (_bfd_mips_elf_record_xhash_symbol): New function. Record a
+       position in the translation table, associated with the hash
+       entry.
+       * elfxx-mips.h (literal_reloc_p): Define
+       elf_backend_record_xhash_symbol backend hook.
+       * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
+       backend hook.
+
+2019-08-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * elf64-bpf.c (bpf_elf_relocate_section): New function.
+       (bpf_elf_insn_disp_reloc): Delete function.
+       (elf_backend_relocate_section): Define.
+
+2019-08-07  Alan Modra  <amodra@gmail.com>
+
+       PR 24644
+       * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
+       for overflow in expressions involving nsymz.
+
+2019-08-01  Ilia Diachkov  <ilia.diachkov@optimitech.com>
+
+       * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
+       two pages in relro presence.
+
+2019-08-01  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
+       (get_wsr_lbeg_opcode): New functions.
+       (check_loop_aligned): Detect relaxed loops and adjust loop_len
+       and insn_len for the first actual instruction of the loop.
+
+2019-07-30  Alan Modra  <amodra@gmail.com>
+
+       PR 24768
+       * bfd.c (struct bfd): Add lto_slim_object flag.
+       * bfd-in2.h: Regenerate.
+
+2019-07-29  Martin Liska  <mliska@suse.cz>
+
+       PR 24768
+       * archive.c (_bfd_compute_and_write_armap): Come up with
+       report_plugin_err variable.
+       * bfd-in2.h (struct bfd): Add lto_slim_object flag.
+       * elf.c (struct lto_section): New.
+       (_bfd_elf_make_section_from_shdr): Parse content of
+       .gnu_lto_.lto section.
+       * elflink.c: Report error for a missing LTO plugin.
+       * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
+2019-07-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24857
+       PR 24339
+       * elflink.c (elf_link_add_object_symbols): Report an informative
+       error on finding local symbols with index equal or greater than
+       symbol table sh_info.  Correct comment.  Allow such symbols in
+       dynamic objects.  Abort on NULL section for symbol.
+
+2019-07-26  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
+       (elf_linker): Don't define.
+       * elflink.c (bfd_elf_final_link): Don't set elf_linker.
+
+2019-07-25  YunQiang Su  <syq@debian.org>
+
+       PR 24832
+       * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
+       mips inputs.
+
+2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * elf32-arc.c (bfd_get_32_me): Add a small description, fix
+       formating.
+       (reloc_type_to_name): Fix formating.
+       (arc_elf_object_p): Likewise.
+       (debug_arc_reloc): Likewise.
+       (arc_do_relocation): Likewise.
+
+2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>
+
+       * elf32-arc.c (bfd_get_32_me): New function.
+       (bfd_put_32_me): Likewise.
+       (arc_elf_relax_section): Likewise.
+       (bfd_elf32_bfd_relax_section): Define.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
+       elf_backend_final_write_processing, don't pass linker arg.
+       (_bfd_elf_final_write_processing): Update prototype.
+       * elf.c (_bfd_elf_write_object_contents): Adjust call.
+       (_bfd_elf_final_write_processing): Return error on incompatible
+       OSABI and has_gnu_osabi.  Remove linker arg.
+       * elf-nacl.h (nacl_final_write_processing): Update prototype.
+       * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
+       * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
+       (_bfd_mips_elf_final_write_processing): Likewise.
+       * elf-hppa.h (elf_hppa_final_write_processing): Return status
+       and remove linker arg.
+       * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
+       * elf-nacl.c (nacl_final_write_processing): Likewise.
+       * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
+       * elf32-arc.c (arc_elf_final_write_processing): Likewise.
+       * elf32-arm.c (arm_final_write_processing): Likewise.
+       (elf32_arm_final_write_processing): Likewise.
+       (elf32_arm_nacl_final_write_processing): Likewise.
+       (elf32_arm_vxworks_final_write_processing): Likewise.
+       * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
+       * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
+       * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
+       * elf32-cris.c (cris_elf_final_write_processing): Likewise.
+       * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
+       * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
+       * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
+       * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
+       * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
+       * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
+       * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
+       * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
+       * elf32-pj.c (pj_elf_final_write_processing): Likewise.
+       * elf32-ppc.c (ppc_final_write_processing): Likewise.
+       (ppc_elf_final_write_processing): Likewise.
+       (ppc_elf_vxworks_final_write_processing): Likewise.
+       * elf32-sparc.c (sparc_final_write_processing): Likewise.
+       (elf32_sparc_final_write_processing): Likewise.
+       (elf32_sparc_vxworks_final_write_processing): Likewise.
+       * elf32-v850.c (v850_elf_final_write_processing): Likewise.
+       * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
+       * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+       * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
+       * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
+       * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
+       (_bfd_mips_elf_final_write_processing): Likewise.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+       * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
+       early.
+       * elf32-arc.c (arc_elf_final_write_processing): Likewise.
+       * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+
+2019-07-24  Alan Modra  <amodra@gmail.com>
+
+       * elf32-visium.c (visium_elf_post_process_headers): Don't set
+       EI_OSABI header byte here.
+       (ELF_OSABI): Define.
+
+2019-07-23  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
+       * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
+       (get_program_header_size): Formatting.  Only test SH_GNU_MBIND
+       when elf_gnu_osabi_mbind is set.
+       (_bfd_elf_map_sections_to_segments): Likewise.
+       (_bfd_elf_init_private_section_data): Likewise.
+       (_bfd_elf_final_write_processing): Update comment.
+       * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
+       (elf_backend_special_sections): Define without .tbss for linux.
+
+2019-07-23  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
+       Remove none, any, all enums.
+       (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
+       (_bfd_elf_final_write_processing): Declare.
+       * elf.c (_bfd_elf_write_object_contents): Unconditionally call
+       elf_backend_final_write_processing.
+       (_bfd_elf_post_process_headers): Move body of function to..
+       (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
+       only when not already set.  Adjust for rename.
+       * elfxx-target.h (elf_backend_final_write_processing): Default to
+       _bfd_elf_final_write_processing.
+       * elf-hppa.h (elf_hppa_final_write_processing): Call
+       _bfd_elf_final_write_processing.
+       * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
+       * elf-nacl.c (nacl_final_write_processing): Likewise.
+       * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
+       * elf32-arc.c (arc_elf_final_write_processing): Likewise.
+       * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
+       * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
+       * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
+       * elf32-cris.c (cris_elf_final_write_processing): Likewise.
+       * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
+       * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
+       * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
+       * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
+       * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
+       * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
+       * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
+       * elf32-pj.c (pj_elf_final_write_processing): Likewise.
+       * elf32-v850.c (v850_elf_final_write_processing): Likewise.
+       * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
+       * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
+       * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
+       * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
+       * elf32-arm.c (arm_final_write_processing): Split out from..
+       (elf32_arm_final_write_processing): ..here.  Call
+       _bfd_elf_final_write_processing.
+       (elf32_arm_nacl_final_write_processing): Adjust.
+       * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
+       (_bfd_mips_elf_final_write_processing): ..here.  Call
+       _bfd_elf_final_write_processing.
+       * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
+       * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
+       * elf32-ppc.c (ppc_final_write_processing): Split out from..
+       (ppc_elf_final_write_processing): ..here.  Call
+       _bfd_elf_final_write_processing.
+       (ppc_elf_vxworks_final_write_processing): Adjust.
+       * elf32-sparc.c (sparc_final_write_processing): Split out from..
+       (elf32_sparc_final_write_processing): ..here.  Call
+       _bfd_elf_final_write_processing.
+       (elf32_sparc_vxworks_final_write_processing): Adjust.
+       * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
+       * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
+       * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
+       * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
+       * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
+       * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
+       * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+       * elflink.c (elf_link_add_object_symbols): Likewise.
+       (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
+       instead.
+
+2019-07-23  Omar Majid  <omajid@redhat.com>
+
+       * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
+       I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
+       AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
+       AMD64_NETBSD_MAGIC.
+       * peXXigen.c: Add comment about source of .NET magic numbers.
+
+2019-07-19  Alan Modra  <amodra@gmail.com>
+
+       * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
+       (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
+       (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
+       (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
+       * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
+       (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
+       (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
+       (ppc64_elf_check_relocs): Support pcrel tls relocs.
+       (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
+       a TLS section symbol for edited relocs.  Tighten TLS symbol/reloc
+       match test.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
+       (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
+       is more than 8 bits.
+       (ppc64_elf_tls_optimize): Likewise.  Make tls_set, tls_clear, and
+       tls_type vars unsigned int.
+       (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
+       to select r_type edit.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+       * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
+       Correct comment.
+       * elf64-ppc.c (TLS_GDIE): Likewise.
+
+2019-07-18  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
+       range of tp-relative offsets.
+
+2019-07-15  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
+       alias is no longer bfd_link_hash_defined, clear the alias.
+
+2019-07-13  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
+       tls_sec.
+       (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
+       (_bfd_elf_init_2_index_sections): Likewise.
+       * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
+       relocations for local TLS symbols, use STN_UNDEF as the relocation
+       symbol.
+       * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
+       leave TLS symbol value in the addend.
+
+2019-07-08  Alan Modra  <amodra@gmail.com>
+
+       PR 24785
+       * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
+       size before reading first word.
+
+2019-07-02  Nick Clifton  <nickc@redhat.com>
+
+       PR 24717
+       * elf.c (is_debuginfo_file): New function.
+       (assign_file_positions_for_non_load_sections): Do not warn about
+       allocated sections outside of loadable segments if they are found
+       in a debuginfo file.
+       * elf-bfd.h (is_debuginfo_file): Prototype.
+
+2019-07-02  Nick Clifton  <nickc@redhat.com>
+
+       PR 24753
+       * compress.c (bfd_get_full_section_contents): Do not complain
+       about linker created sections that are larger than the file size.
+
+2019-07-02  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
+       (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
+       for CMSE stubs.
+       (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
+
+2019-07-02  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
+
+       * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
+       sections when .text section contain secure entry functions
+       is marked.
+
+2019-07-01  Nick Clifton  <nickc@redhat.com>
+
+       PR 23839
+       * elf32-arm.c (elf32_arm_update_relocs): Do not include the
+       section VMA in the offset used to update exidx relocs.
+
+2019-06-28  Nick Clifton  <nickc@redhat.com>
+
+       PR 24708
+       * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
+       large version reference section.
+       * compress.c (bfd_get_full_section_contents): Check for an
+       uncompressed section whose size is larger than the file size.
+
+2019-06-28  Alan Modra  <amodra@gmail.com>
+
+       * format.c (bfd_check_format_matches): Don't match plugin target
+       if another target matches.  Expand comment.
+       * targets.c (_bfd_target_vector): Move plugin_vec after all other
+       non-corefile targets, outside !SELECT_VECS.
+       * config.bfd: Don't handle targ=plugin here.
+       * configure.ac: Don't add plugin to enable_targets or handle in
+       target loop setting selvecs and other target vars.
+       * configure: Regenerate.
+
+2019-06-26  Nick Clifton  <nickc@redhat.com>
+
+       PR 24703
+       * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
+       messages for failures.
+       * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
+       if returning an error value.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
+       * elf-properties.c (elf_find_and_remove_property): Rename last
+       parameter. Mention it in comment.
+
+2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
+
+       * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
+       SEC_MERGE or SEC_CODE flags are set.
+       (_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
+       symtype consistently.  Don't include sec_addr (sym_sec) in symval.
+       Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
+       Add sec_addr (sym_sec) after handling merge sections.
+
+2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24721
+       * elf-properties.c (elf_merge_gnu_property_list): Remove the
+       property after reporting property removal.
+
+2019-06-23  Alan Modra  <amodra@gmail.com>
+
+       PR 24704
+       * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
+       (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
+       Reduce range of offsets allowed for other GOT relocs.
+
+2019-06-23  Alan Modra  <amodra@gmail.com>
+
+       PR 24689
+       * elfcode.h (elf_object_p): Warning fix.
+
+2019-06-21  Alan Modra  <amodra@gmail.com>
+
+       PR 24689
+       * elfcode.h (elf_object_p): Check type of e_shstrndx section.
+
+2019-06-19  Alan Modra  <amodra@gmail.com>
+
+       PR 24697
+       * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
+       R_PPC_EMB_RELSDA.  Mask low bit of R_PPC_EMB_SDA21 r_offset.
+
+2019-06-19  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
+       functions that require r2 valid to use local entry.
+       (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
+
+2019-06-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
+       (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
+       with elfNN_aarch64_allocate_local_dynrelocs.
+
+2019-06-14  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
+
+2019-06-14  Alan Modra  <amodra@gmail.com>
+
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+
+2019-06-14  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c: Fix comments involving paddi.
+
+2019-06-12  Adam Lackorzymski  <adam@os.inf.tu-dresden.de>
+
+       PR 24643
+       * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
+       absent, or the bfd is not in the ELF formart.
+       * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
+
+2019-06-10  Christos Zoulas  <christos@zoulas.com>
+
+       PR 24650
+       * elf.c (elfcore_make_auxv_note_section): New function.
+       (elfcore_grok_note): Use it.
+       (elfcore_grok_freebsd_note): Likewise.
+       (elfcore_grok_openbsd_note): Likewise.
+       (elfcore_grok_netbsd_note): Likewise.  Plus add support for
+       NT_NETBSDCORE_AUXV notes.
+
+2019-06-06  Sudakshina Das  <sudi.das@arm.com>
+
+       * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
+       alignment of the new gnu property section.
+
+2019-06-06  Sudakshina Das  <sudi.das@arm.com>
+
+       * bfd-in.h: Change comment.
+       * bfd-in2.h: Regenerate.
+       * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
+       * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
+       Likwise.
+
+2019-05-28  Faraz Shahbazker  <fshahbazker@wavecomp.com>
+
+       * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
+       Remove overflow check.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * cofflink.c (coff_link_check_archive_element): Don't assume
+       element is a coff object file after calling add_archive_element.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
+       attempt to set sh_entsize for excluded PLT section.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
+       to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
+       allocated in alpha_dynamic_entries_for_reloc.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
+       on NULL output_section.
+       * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
+       entry when MUST_FIND.  Abort when MUST_FIND not found.
+       (elf_m68k_get_bfd2got_entry): Likewise.
+       (elf_m68k_relocate_section): Remove now useless assert.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
+       from bfd_link_info, not an output section owner.
+       (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
+       (elf_hppa_final_link_relocate): Likewise.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
+       create_object_symbols_section, obj_textsec, obj_datasec or
+       obj_bsssec.  Fix other errors in placement.
+       * config.bfd: Obsolete tic30-aout.
+
+2019-05-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
+       end of section list as well as section_count.
+       * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
+       section list before returning error.
+
+2019-05-27  Alan Modra  <amodra@gmail.com>
+
+       * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
+
+2019-05-27  Alan Modra  <amodra@gmail.com>
+
+       PR 24596
+       * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
+
+2019-05-24  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
+       (struct elf_aarch64_link_hash_table): Add variant_pcs member.
+       (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
+       (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
+       (elf_backend_merge_symbol_attribute): Define.
+
+2019-05-24  Alan Modra  <amodra@gmail.com>
+
+       * po/SRC-POTFILES.in: Regenerate.
+
+2019-05-24  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c: Comment on powerxx _notoc stub variants.
+       (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
+       (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
+       (struct ppc_link_hash_table): Add powerxx_stubs.
+       (ppc64_elf_check_relocs): Set powerxx_stubs.
+       (build_powerxx_offset, size_powerxx_offset),
+       (num_relocs_for_powerxx_offset),
+       (emit_relocs_for_powerxx_offset): New functions.
+       (plt_stub_size): Size powerxx stubs.
+       (ppc_build_one_stub): Emit powerxx stubs.
+       (ppc_size_one_stub): Size powerxx stubs.  Omit .eh_frame for
+       powerxx stubs.
+
+2019-05-24  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
+       R_PPC64_GOT_PCREL34.
+       (xlate_pcrel_opt): New function.
+       (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
+       (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
+       for R_PPC64_GOT_PCREL34.  Implement R_PPC64_PCREL_OPT optimisation.
+
+2019-05-24  Alan Modra  <amodra@gmail.com>
+
+       * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
+       (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
+       (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
+       (BFD_RELOC_PPC64_PLT_PCREL34),
+       (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
+       (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
+       (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
+       (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
+       (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
+       * elf64-ppc.c (PNOP): Define.
+       (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
+       (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
+       (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
+       relocs.
+       (ppc64_elf_prefix_reloc): New function.
+       (struct ppc_link_hash_table): Add notoc_plt.
+       (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
+       (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
+       R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
+       (ppc64_elf_check_relocs): Handle pcrel got and plt relocs.  Set
+       has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC.  Handle
+       possible need for dynamic relocs on non-pcrel powerxx relocs.
+       (dec_dynrel_count): Handle non-pcrel powerxx relocs.
+       (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
+       (toc_adjusting_stub_needed): Likewise.
+       (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
+       (ppc64_elf_relocate_section): Handle new powerxx relocs.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
+       * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
+       bpf_elf64_be_vec.
+       * configure: Regenerate.
+
+2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * configure: Regenerated.
+       * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
+       (ALL_MACHINES_CFILES): Add cpu-bpf.c.
+       (BFD64_BACKENDS): Add elf64-bpf.lo.
+       (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
+       * Makefile.in (SOURCE_HFILES): Regenerate.
+       * config.bfd (targ_cpu): Handle bpf-*-* targets.
+       * cpu-bpf.c: New file.
+       * elf64-bpf.c: Likewise.
+       * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
+       bpf_elf64_le_vec.
+       * archures.c: Define architecture bfd_arch_bpf and machine
+       bfd_arch_bpf.
+       * reloc.c: Define BFD relocations used by the BPF target.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Likewise.
+
+2019-05-22  Alan Modra  <amodra@gmail.com>
+
+       * elf32-arm.c (arm_allocate_glue_section_space): Clear section
+       contents.
+
 2019-05-22  Alan Modra  <amodra@gmail.com>
 
        * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further