]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/ChangeLog
PR24697, R_PPC_EMB_SDA21 relocation
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
index b019ca6fa43c4d43e38b18e1d6c8fc96e5baa71f..f40f6ed63dc8fdcaec2d735344c45c194cb41e21 100644 (file)
@@ -1,3 +1,667 @@
+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
+       processing on "size error in section".
+
+2019-05-22  Alan Modra  <amodra@gmail.com>
+
+       * som.c (som_bfd_free_cached_info): Call
+       _bfd_generic_close_and_cleanup.
+
+2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
+       for TLS_TPREL_HI16(/LO16) relocations in shared library.
+
+2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
+       checks.  Search the RELA table for n64 relocations.
+
+2019-05-21  Matthew Fortune  <matthew.fortune@mips.com>
+           Faraz Shahbazker  <fshahbazker@wavecomp.com>
+
+       * elfxx-mips.c (LA25_BC): New macro.
+       (mips_elf_link_hash_table)<compact_branches>: New field.
+       (STUB_JALRC): New macro.
+       (mipsr6_o32_exec_plt0_entry_compact): New array.
+       (mipsr6_n32_exec_plt0_entry_compact): Likewise.
+       (mipsr6_n64_exec_plt0_entry_compact): Likewise.
+       (mipsr6_exec_plt_entry_compact): Likewise.
+       (mips_elf_create_la25_stub): Use BC instead of J for stubs
+       when compact_branches is true.
+       (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
+       PLT for MIPSR6 with compact_branches.  Do not reorder the
+       compact branches PLT.  Switch the lazy stub for MIPSR6
+       with compact_branches to use JALRC.
+       (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
+       when compact_branches is true.
+       (_bfd_mips_elf_compact_branches): New function.
+       * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
+
+2019-05-21  Tamar Christina  <tamar.christina@arm.com>
+
+       PR ld/24373
+       * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
+       Fix print formatter.
+
+2019-05-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>
+
+       PR 24460
+       * elf32-arm.c (get_value_helper): Remove.
+       (elf32_arm_final_link_relocate): Fix branch future relocations.
+
+2019-05-21  Tamar Christina  <tamar.christina@arm.com>
+
+       PR ld/24373
+       * bfd-in.h (enum erratum_84319_opts): New
+       (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
+       int to enum erratum_84319_opts.
+       * bfd-in2.h: Regenerate.
+       * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
+       fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
+       (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
+       (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
+       (_bfd_aarch64_resize_stubs): Amend comment.
+       (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
+       requested.
+       (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
+       (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
+       erratum workaround.
+       (clear_erratum_843419_entry): Update erratum conditional.
+
+2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
+
+       PR ld/24571
+       * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
+       when computing distance_short_enough.
+
+2019-05-21  Senthil Kumar Selvaraj  <senthilkumar.selvaraj@microchip.com>
+
+       PR ld/24564
+       * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
+       Wrap around even if distance equals avr_pc_wrap_around.
+
+2019-05-20  Nick Clifton  <nickc@redhat.com>
+
+       * po/fr.po: Updated French translation.
+
+2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
+
+       * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
+
+2019-05-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-arm.c (elf32_arm_write_section): Revert last change.
+
+2019-05-15  Alan Modra  <amodra@gmail.com>
+
+       * elf32-arm.c (elf32_arm_write_section): Don't leave
+       error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
+       unitialised section contents.
+
+2019-05-14  Jamey Hicks  <jamey.hicks@gmail.com>
+
+       PR 19921
+       * verilog.c: (VerilogDataWidth): New variable.
+       (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
+
+2019-05-08  Nick Clifton  <nickc@redhat.com>
+
+       PR 24523
+       * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
+       rather than FALSE if encountering a non-ELF file.
+
+2019-05-06  Alan Modra  <amodra@gmail.com>
+
+       * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
+
+2019-05-06  Alan Modra  <amodra@gmail.com>
+
+       * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
+       (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
+       Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
+       * libbfd.h: Regenerate.
+       * bfd-in2.h: Regenerate.
+
+2019-05-04  Alan Modra  <amodra@gmail.com>
+
+       PR 24511
+       * syms.c (coff_section_type): Only allow '.', '$' and numeric
+       following the standard section names.
+       (bfd_decode_symclass): Prioritize section flag tests in
+       decode_section_type before name tests in coff_section_type.
+       * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
+       and fake_common_section using BFD_FAKE_SECTION.  Use "fake" as
+       their names and choose standard .text section flags for
+       fake_section.
+
+2019-05-02  Nick Clifton  <nickc@redhat.com>
+
+       PR 24493
+       * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
+       .gnu.debugaltlink sections as debugging sections.
+
+2019-04-30  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
+       (struct _ppc64_elf_section_data): Likewise.
+       (ppc64_elf_check_relocs): Set above fields.
+       (ppc64_elf_edit_toc): Add a pass over GOT relocs.
+       (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
+       when possible.
+
+2019-04-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24486
+       * elflink.c (elf_link_output_extsym): Don't complain undefined
+       weak dynamic reference.
+
+2019-04-25  Sudakshina Das  <sudi.das@arm.com>
+
+       * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
+       (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
+       (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
+       (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
+       (elfNN_aarch64_small_plt0_pac_entry): Remove.
+       (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
+       (elfNN_aarch64_small_plt0_bti_entry): Update.
+       (elfNN_aarch64_small_plt_bti_entry): Update.
+       (elfNN_aarch64_small_plt_pac_entry): Update.
+       (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
+       (setup_plt_values): Setup new entries.
+       (elfNN_aarch64_finish_dynamic_sections): Remove size change.
+       (elfNN_aarch64_plt_sym_val): Likewise.
+
+2019-04-22  Jim Wilson  <jimw@sifive.com>
+
+       * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
+
+2019-04-19  Alan Modra  <amodra@gmail.com>
+
+       * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
+
+2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
+       building shared object.
+       * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
+
+2019-04-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24458
+       * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
+       linker_def.
+
+2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
+
+       * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
+       relocation.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Likewise.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Regenerated.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Likewise.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Regenerated.
+       * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
+       (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
+       and R_ARM_THM_BF12 together.
+       (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
+       * libbfd.h: Regenerated.
+       * bfd-in2.h: Regenerated.
+       * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
+       (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
+       and R_ARM_THM_BF18 together.
+       (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Regenerated.
+       * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
+       (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
+       and R_ARM_THM_BF16 together.
+       (get_value_helper): New reloc helper.
+       (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
+
+2019-04-15  Sudakshina Das  <sudi.das@arm.com>
+
+       * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
+2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
+
+       * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
+       * bfd-in2.h: Regenerate.
+       * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
+       * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
+       and update assert.
+       (using_thumb2): Likewise.
+       (using_thumb2_bl): Update assert.
+       (arch_has_arm_nop): Likewise.
+       (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
+       (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
+
+2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf-linker-x86.h (elf_x86_cet_report): New.
+       (elf_linker_x86_params): Add cet_report.
+       * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
+       missing IBT and SHSTK properties if needed.
+
+2019-04-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/24436
+       * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
+       "h != NULL".  Don't check "h != NULL" before calling.
+       bfd_elf_gc_record_vtentry.
+       * elf32-arm.c (elf32_arm_check_relocs): Likewise.
+       * elf32-bfin.c (bfin_check_relocs): Likewise.
+       * elf32-cris.c (cris_elf_check_relocs): Likewise.
+       * elf32-csky.c (csky_elf_check_relocs): Likewise.
+       * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
+       * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
+       * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
+       * elf32-frv.c (elf32_frv_check_relocs): Likewise.
+       * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
+       * elf32-i386.c (elf_i386_check_relocs): Likewise.
+       * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
+       * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
+       * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
+       * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+       * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
+       * elf32-metag.c (elf_metag_check_relocs): Likewise.
+       * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
+       * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
+       * elf32-s390.c (elf_s390_check_relocs): Likewise.
+       * elf32-sh.c (sh_elf_check_relocs): Likewise.
+       * elf32-v850.c (v850_elf_check_relocs): Likewise.
+       * elf32-vax.c (elf_vax_check_relocs): Likewise.
+       * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
+       * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
+       * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
+       * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
+       * elf64-s390.c (elf_s390_check_relocs): Likewise.
+       * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
+       * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
+       VTENTRY entry.
+
+2019-04-11  Alan Modra  <amodra@gmail.com>
+
+       PR 24435
+       * elflink.c (elf_link_add_object_symbols): Don't read partial
+       dynamic entries from fuzzed objects.
+
+2019-04-11  Tamar Christina  <tamar.christina@arm.com>
+
+       PR ld/24302
+       * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
+       DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
+       (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
+
+2019-04-10  Michael Forney  <mforney@mforney.org>
+
+       PR 24427
+       * doc/chew.c (free_words): Correctly free "push_text" strings.
+
+2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
+
+2019-04-08  Alan Modra  <amodra@gmail.com>
+
+       * configure.ac (elfxx_x86): Define and use.
+       * configure: Regenerate.
+
+2019-04-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf-linker-x86.h: New file.
+       * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
+       to get x86-specific linker options.
+       * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
+       (elf_x86_64_check_relocs): Likewise.
+       (elf_x86_64_relocate_section): Likewise.
+       (elf_x86_64_link_setup_gnu_properties): Likewise.
+       * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
+       (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
+       (_bfd_elf_linker_x86_set_options): New function.
+       * elfxx-x86.h: Include "elf-linker-x86.h".
+       (elf_x86_link_hash_table): Add params.
+
+2019-04-03  Alan Modra  <amodra@gmail.com>
+
+       * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
+       * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
+       * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
+       * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
+       * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
+       * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
+
+2019-04-02  Jim Wilson  <jimw@sifive.com>
+
+       PR 24389
+       * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
+       ELF header flags to after check for ELF object file.  Loop through
+       sections looking for code sections, if none, then skip ABI checks.
+
+2019-03-30  Andrew Waterman  <andrew@sifive.com>
+
+       * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
+       rd == X_RA case.
+
+2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
+       info->export_dynamic to the conditional.
+
+2019-03-28  Alan Modra  <amodra@gmail.com>
+
+       PR 24392
+       * configure.ac: Invoke AC_CHECK_SIZEOF(int).
+       * configure: Regenerate.
+       * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
+       workaround with SIZEOF_LONG vs. SIZEOF_INT check.
+       * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
+       * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
+       * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
+
+2019-03-21  Jim Wilson  <jimw@sifive.com>
+
+       PR 24365
+       * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
+       verify sym non-NULL before using.  Add identical check using h.
+
+2019-03-21  Sudakshina Das  <sudi.das@arm.com>
+
+       * elf-bfd.h (struct elf_backend_data): Add argument to
+       merge_gnu_properties.
+       * elf-properties.c (elf_merge_gnu_properties): Add argument to
+       itself and while calling bed->merge_gnu_properties.
+       (elf_merge_gnu_property_list): Update the calls for
+       elf_merge_gnu_properties.
+       * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
+       of --force-bti warning and add argument.
+       * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
+       warning.
+       * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
+       * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
+       declaration.
+
+2019-03-20  Sudakshina Das  <sudi.das@arm.com>
+
+       * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
+       * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
+       (elf_backend_fixup_gnu_properties): Define for AArch64.
+
+2019-03-18  Alan Modra  <amodra@gmail.com>
+
+       PR 24355
+       * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
+       for local iplt syms with ent->plt.offset == -1.  Remove ineffective
+       attempt at writing glink stubs only once.
+
+2019-03-16  Alan Modra  <amodra@gmail.com>
+
+       PR 24337
+       * elf.c (_bfd_elf_rela_local_sym): Revert last change.
+       (_bfd_elf_rel_local_sym): Likewise.
+       * elflink.c (elf_link_input_bfd): Use bfd_und_section for
+       section of symbols with unrecognized shndx.
+
 2019-03-15  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/24267