+2015-09-20 Rich Felker <dalias@libc.org>
+
+ * elflink.c (_bfd_elf_link_create_dynamic_sections): Don't create
+ .interp when info->nointerp.
+ (bfd_elf_size_dynamic_sections): Adjust assert.
+ * elf32-arm.c (elf32_arm_size_dynamic_sections): Don't size .interp
+ when info->nointerp.
+ * elf32-bfin.c (elf32_bfinfdpic_size_dynamic_sections): Likewise.
+ * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
+ * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
+ * elf32-frv.c (elf32_frvfdpic_size_dynamic_sections): Likewise.
+ * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
+ * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
+ * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
+ * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
+ * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
+ * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
+ * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
+ * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
+ * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
+ * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
+ * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
+ * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
+ * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Likewise.
+ * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
+ * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
+ * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
+ * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
+ * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
+ * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_size_dynamic_sections): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
+
+2015-09-18 Doug Evans <xdje42@gmail.com>
+
+ * targets.c (enum bfd_flavour): Add comment.
+ (bfd_flavour_name): New function.
+ * bfd-in2.h: Regenerate.
+
+2015-09-18 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.h (struct ppc64_elf_params <tls_get_addr_opt>): Rename
+ from no_tls_get_addr_opt.
+ * elf64-ppc.c: Update for rename and inversion of tls_get_addr_opt.
+ (ppc64_elf_tls_setup): Set tls_get_addr_opt to 0 only when at
+ default of -1.
+
+2015-09-17 Alan Modra <amodra@gmail.com>
+
+ PR 18867
+ * elflink.c (elf_link_adjust_relocs): Correct start of insertion
+ sort main loop.
+
+2015-09-16 Alan Modra <amodra@gmail.com>
+
+ PR 18867
+ * elflink.c (elf_link_adjust_relocs): Modify insertion sort to
+ insert a run. Return status in case of malloc failure.
+ Adjust callers.
+
+2015-09-15 Max Filippov <jcmvbkbc@gmail.com>
+
+ * elf32-xtensa.c (elf_xtensa_be_plt_entry)
+ (elf_xtensa_le_plt_entry): Emit 'entry' instruction only for
+ windowed ABI.
+ (elf_xtensa_create_plt_entry): Generate 'l32r' offsets and fix
+ up instructions according to ABI.
+
+2015-09-14 Rich Felker <dalias@libc.org>
+
+ * elf32-sh.c (sh_elf_relocate_section): Set EF_SH_PIC flag
+ instead of clearing it on cross-section relocations.
+ (sh_elf_merge_private_data): Clear EF_SH_PIC flag by default.
+
+2015-09-12 Helge Deller <deller@gmx.de>
+
+ PR ld/18514
+ * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Set .plt entry
+ size to 0.
+
+2015-09-09 Jiong Wang <jiong.wang@arm.com>
+
+ * elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Sort alphabetically.
+
+2015-09-09 Jiong Wang <jiong.wang@arm.com>
+
+ * elfnn-aarch64.c (aarch64_tls_transition_without_check): Support three
+ TLS local dynamic traditional relocations types.
+ (elfNN_aarch64_tls_relax): Support TLS local dynamic traditional to
+ local executable relaxation.
+
+2015-09-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Remove
+ convert_mov_to_lea.
+
+2015-09-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (R_386_irelative): Renamed to ...
+ (R_386_ext2): This.
+ (R_386_vt_offset): Updated.
+ (elf_i386_rtype_to_howto): Likewise.
+ (elf_i386_relocate_section): Likewise.
+
+2015-09-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/18900
+ * elf32-i386.c (elf_i386_link_hash_entry): Add
+ func_pointer_refcount.
+ (elf_i386_link_hash_newfunc): Clear func_pointer_refcount.
+ (elf_i386_get_local_sym_hash): Likewise.
+ (elf_i386_copy_indirect_symbol): Also copy
+ func_pointer_refcount.
+ (elf_i386_check_relocs): Increment func_pointer_refcount.
+ (elf_i386_gc_sweep_hook): Decrement func_pointer_refcount.
+ (elf_i386_allocate_dynrelocs): Don't create the PLT entry if
+ there are only function pointer relocations which can be
+ resolved at run-time. Keep dynanamic relocations for run-time
+ function pointer initialization.
+ (elf_i386_relocate_section): Copy dynamic function pointer
+ relocations.
+ * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add
+ func_pointer_refcount.
+ (elf_x86_64_link_hash_newfunc): Clear func_pointer_refcount.
+ (elf_x86_64_get_local_sym_hash): Likewise.
+ (elf_x86_64_copy_indirect_symbol): Also copy
+ func_pointer_refcount.
+ (elf_x86_64_check_relocs): Increment func_pointer_refcount.
+ (elf_x86_64_gc_sweep_hook): Decrement func_pointer_refcount.
+ (elf_x86_64_allocate_dynrelocs): Don't create the PLT entry if
+ there are only function pointer relocations which can be
+ resolved at run-time. Keep dynanamic relocations for run-time
+ function pointer initialization.
+ (elf_x86_64_relocate_section): Copy dynamic function pointer
+ relocations.
+
+2015-09-01 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_maybe_function_sym): Adjust symbol value
+ if .opd section has been edited.
+
+2015-09-01 Alan Modra <amodra@gmail.com>
+
+ PR 18878
+ * elf64-ppc.c (ARRAY_SIZE): Define. Use throughout.
+ (enum ppc_stub_type): Add ppc_stub_save_res.
+ (struct map_stub): Add "next" and "needs_save_res".
+ (struct ppc_link_hash_entry): Add "save_res" flag.
+ (struct ppc_link_hash_table): Add "group".
+ (sfpr_define): Add stub_sec param. Define symbol in stub_sec if
+ stub_sec is non-null. Set "save_res".
+ (save_res_funcs): Make file scope, rename from funcs. Adjust uses.
+ (ppc64_elf_adjust_dynamic_symbol): Prohibit plt call to save_res syms.
+ (ppc_build_one_stub): Handle ppc_stub_save_res.
+ (ppc_size_one_stub): Set stub type to ppc_size_one_stub on finding
+ stub for linker defined save_res sym.
+ (group_sections): Init new fields of struct map_stub.
+ (ppc64_elf_size_stubs): Reserve space for save/restore func copy.
+ (ppc64_elf_build_stubs): Copy save/restore funcs to groups. Emit
+ alias syms too.
+ (ppc64_elf_relocate_section): Set destination for ppc_stub_save_res.
+
+2015-08-31 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (get_r2off): Return -1 on error.
+ (ppc_build_one_stub): Adjust for get_r2off change. Don't emit
+ addi r2,r2,0 on r2off stubs when the low 16-bit delta is zero.
+ (ppc_size_one_stub): Corresponding size changes for r2off stubs.
+ Add condition in test for -R objects.
+
2015-08-31 Alan Modra <amodra@gmail.com>
* section.c (section_id): Make file scope.