+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.ac: Add bpf_elf64_le_vec and bpf_elf64_be_vec.
* configure: Regenerated.
* Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
(ALL_MACHINES_CFILES): Add cpu-bpf.c.