+2016-05-11 Alan Modra <amodra@gmail.com>
+
+ PR 20060
+ * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local.
+ * elf32-ppc.c (ppc_elf_tls_setup): Likewise.
+
+2016-05-10 Jiong Wang <jiong.wang@arm.com>
+
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant
+ aarch64_tls_transition check.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type
+ enumerator.
+ (arm_stub_sym_claimed): New function.
+ (elf32_arm_create_stub): Use veneered symbol name and section if
+ veneer needs to claim its symbol, and keep logic unchanged otherwise.
+ (arm_stub_claim_sym): New function.
+ (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim
+ veneered symbol, otherwise create local symbol as before.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Use new macros
+ ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get
+ and set branch type of a symbol.
+ (bfd_elf32_arm_process_before_allocation): Likewise.
+ (elf32_arm_relocate_section): Likewise and fix identation along the
+ way.
+ (allocate_dynrelocs_for_symbol): Likewise.
+ (elf32_arm_finish_dynamic_symbol): Likewise.
+ (elf32_arm_swap_symbol_in): Likewise.
+ (elf32_arm_swap_symbol_out): Likewise.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter.
+ * bfd-in2.h: Regenerated.
+ * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section
+ parameter to add_stub_section callback.
+ (elf32_arm_create_or_find_stub_sec): Get output section from link_sec
+ and pass it down to add_stub_section.
+ (elf32_arm_add_stub): Set section to stub_sec if NULL before using it
+ for error message.
+ (elf32_arm_size_stubs): Add output section parameter to
+ add_stub_section function pointer parameter.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_create_stub): New function.
+ (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (enum elf32_arm_stub_type): Delete
+ arm_stub_a8_veneer_lwm enumerator.
+ (arm_stub_a8_veneer_lwm): New unsigned constant to replace
+ aforementioned enumerator.
+ (struct elf32_arm_stub_hash_entry): Delete target_addend
+ field and add source_value.
+ (struct a8_erratum_fix): Delete addend field and add target_offset.
+ (stub_hash_newfunc): Initialize source_value field amd remove
+ initialization for target_addend.
+ (arm_build_one_stub): Stop special casing Thumb relocations: promote
+ the else to being always executed, moving the
+ arm_stub_a8_veneer_b_cond specific code in it. Remove
+ stub_entry->target_addend from points_to computation.
+ (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
+ to target symbol from start of section rather than the offset from the
+ stub address.
+ (elf32_arm_size_stubs): Set stub_entry's source_value and target_value
+ fields from struct a8_erratum_fix's offset and target_offset
+ respectively.
+ (make_branch_to_a8_stub): Rename target variable to loc. Compute
+ veneered_insn_loc and loc using stub_entry's source_value.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ (elf32_arm_merge_eabi_attributes): Add merging logic for
+ Tag_DSP_extension.
+
+2016-05-10 Pip Cet <pipcet@gmail.com>
+
+ PR ld/20059
+ * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type):
+ Define as _bfd_generic_copy_link_hash_symbol_type when using
+ generic hash table.
+
+2016-05-09 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/20063
+ * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link
+ field before accessing sections array.
+
+2016-05-09 Christophe Monat <christophe.monat@st.com>
+
+ PR ld/20030
+ * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding.
+ (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs
+ to nb_words.
+ (create_instruction_vldmia): Add is_dp to disambiguate SP/DP
+ encoding.
+ (create_instruction_vldmdb): Likewise.
+ (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding,
+ uses it to re-encode.
+
+2016-05-09 Nick Clifton <nickc@redhat.com>
+
+ PR 19938
+ * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental
+ commit.
+
+2016-05-09 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
+
+2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/17550
+ * elf-bfd.h (elf_link_hash_entry): Update comments for indx,
+ documenting that indx == -3 if symbol is defined in a discarded
+ section.
+ * elflink.c (elf_link_add_object_symbols): Set indx to -3 if
+ symbol is defined in a discarded section.
+ (elf_link_output_extsym): Strip a global symbol defined in a
+ discarded section.
+
+2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel
+ MCU.
+
+2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_convert_load): Extract the GOT load
+ conversion to ...
+ (elf_i386_convert_load_reloc): This. New function.
+ * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load
+ conversion to ...
+ (elf_x86_64_convert_load_reloc): This. New function.
+
+2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd.
+ Don't check if contents == NULL.
+ (elf_i386_tls_transition): Add from_relocate_section. Check
+ from_relocate_section instead of contents != NULL. Update
+ elf_i386_check_tls_transition call.
+ (elf_i386_check_relocs): Cache the section contents if
+ keep_memory is FALSE. Pass FALSE as from_relocate_section to
+ elf_i386_tls_transition.
+ (elf_i386_relocate_section): Pass TRUE as from_relocate_section
+ to elf_i386_tls_transition.
+ (elf_backend_caches_rawsize): New.
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check
+ if contents == NULL.
+ (elf_x86_64_tls_transition): Add from_relocate_section. Check
+ from_relocate_section instead of contents != NULL.
+ (elf_x86_64_check_relocs): Cache the section contents if
+ keep_memory is FALSE. Pass FALSE as from_relocate_section to
+ elf_x86_64_tls_transition.
+ (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section
+ to elf_x86_64_tls_transition.
+ (elf_backend_caches_rawsize): New.
+
+2016-05-03 Maciej W. Rozycki <macro@imgtec.com>
+
+ PR 10549
+ * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
+ STB_GNU_UNIQUE.
+
+2016-05-03 Jiong Wang <jiong.wang@arm.com>
+
+ * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.
+ * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
+ * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize
+ no_apply_dynamic_relocs.
+ (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though
+ dynamic relocations generated.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp
+ setting to ...
+ (elf_i386_create_dynamic_sections): Here.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move
+ interp setting to ...
+ (elf_x86_64_create_dynamic_sections): Here.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC
+ and replace (EH)->has_got_reloc with GOT_RELOC.
+ (elf_i386_fixup_symbol): Pass has_got_reloc to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ (elf_i386_allocate_dynrelocs): Likewise.
+ (elf_i386_relocate_section): Likewise.
+ (elf_i386_finish_dynamic_symbol): Likewise.
+ (elf_i386_convert_load): Pass TRUE to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take
+ GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC.
+ (elf_x86_64_fixup_symbol): Pass has_got_reloc to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ (elf_x86_64_allocate_dynrelocs): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+ (elf_x86_64_finish_dynamic_symbol): Likewise.
+ (elf_x86_64_convert_load): Pass TRUE to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (check_relocs_failed): New.
+ (elf_i386_check_relocs): Set check_relocs_failed on error.
+ (elf_i386_relocate_section): Skip if check_relocs failed.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Set
+ check_relocs_failed on error.
+
+2016-04-29 Nick Clifton <nickc@redhat.com>
+
+ PR 19938
+ * elf-bfd.h (struct elf_backend_data): Rename
+ elf_backend_set_special_section_info_and_link to
+ elf_backend_copy_special_section_fields.
+ * elfxx-target.h: Likewise.
+ * elf.c (section_match): Ignore the SHF_INFO_LINK flag when
+ comparing section flags.
+ (copy_special_section_fields): New function.
+ (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field.
+ Perform two scans over special sections. The first one looks for
+ a direct mapping between the output section and an input section.
+ The second scan looks for a possible match based upon section
+ characteristics.
+ * elf32-arm.c (elf32_arm_copy_special_section_fields): New
+ function. Handle setting the sh_link field of SHT_ARM_EXIDX
+ sections.
+ * elf32-i386.c (elf32_i386_set_special_info_link): Rename to
+ elf32_i386_copy_solaris_special_section_fields.
+ * elf32-sparc.c (elf32_sparc_set_special_section_info_link):
+ Rename to elf32_sparc_copy_solaris_special_section_fields.
+ * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to
+ elf64_x86_64_copy_solaris_special_section_fields.
+
+2016-04-28 Nick Clifton <nickc@redhat.com>
+
+ * po/zh_CN.po: Updated Chinese (simplified) translation.
+
+2016-04-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/20006
+ * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections
+ when estimating distances between output sections.
+
+2016-04-27 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (_bfd_elf_is_start_stop): New function.
+ (_bfd_elf_gc_mark_rsec): Use it.
+ * elf-bfd.h (_bfd_elf_is_start_stop): Declare.
+
+2016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *.
+ * mmo.c (mmo_get_section_contents): Likewise.
+ (mmo_set_section_contents): Likewise.
+
+2016-04-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_link_hash_table): Update comments for
+ dynsymcount.
+ * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for
+ the unused NULL entry at the head of dynamic symbol table.
+ (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0
+ checks.
+
+2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
+ created file from dynobj.
+
+2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
+ normal input file if possible.
+
+2016-04-21 Nick Clifton <nickc@redhat.com>
+
+ * aout-adobe.c: Use _bfd_generic_link_check_relocs.
+ * aout-target.h: Likewise.
+ * aout-tic30.c: Likewise.
+ * binary.c: Likewise.
+ * bout.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffcode.h: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * ieee.c: Likewise.
+ * ihex.c: Likewise.
+ * libbfd-in.h: Likewise.
+ * libecoff.h: Likewise.
+ * mach-o-target.c: Likewise.
+ * mmo.c: Likewise.
+ * nlm-target.h: Likewise.
+ * oasys.c: Likewise.
+ * pef.c: Likewise.
+ * plugin.c: Likewise.
+ * ppcboot.c: Likewise.
+ * som.c: Likewise.
+ * srec.c: Likewise.
+ * tekhex.c: Likewise.
+ * versados.c: Likewise.
+ * vms-alpha.c: Likewise.
+ * xsym.c: Likewise.
+ * elfxx-target.h: Use _bfd_elf_link_check_relocs.
+ * linker.c (bfd_link_check_relocs): New function.
+ (_bfd_generic_link_check_relocs): New function.
+ * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of
+ _bfd_link_check_relocs field.
+ (struct bfd_target)L Add _bfd_link_check_relocs field.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_gc_sweep_hook): Removed.
+ (elf_backend_gc_sweep_hook): Likewise.
+ * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
+ (elf_backend_gc_sweep_hook): Likewise.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
+ in excluded sections
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19969
+ * elf64-x86-64.c (check_relocs_failed): New.
+ (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
+ Support relocation agaist local symbol. Set check_relocs_failed.
+ (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
+ R_X86_64_32 relocation overflow.
+ (elf_x86_64_relocate_section): Skip if check_relocs failed.
+ Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_check_relocs): Call
+ _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (_bfd_elf_link_check_relocs): New.
+ * elflink.c (_bfd_elf_link_check_relocs): New function.
+ (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
+ if check_relocs_after_open_input is FALSE.
+
+2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * cache.c: Update old style function definitions.
+ * elf32-m68k.c: Likewise.
+ * elf64-mmix.c: Likewise.
+ * stab-syms.c: Likewise.
+
+2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
+
+2016-04-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.in: Regenerated with automake 1.11.6.
+ * aclocal.m4: Likewise.
+ * doc/Makefile.in: Likewise.
+
+2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf32-arc.c: Add 'opcode/arc.h' include.
+ (struct arc_relocation_data): Add symbol_name.
+ (arc_special_overflow_checks): New function.
+ (arc_do_relocation): Use arc_special_overflow_checks, reindent as
+ required, add an extra comment.
+ (elf_arc_relocate_section): Setup symbol_name in reloc_data.
+
+2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
+ entries.
+ (elf_arc_relocate_section): Update enum uses.
+ (elf_arc_check_relocs): Likewise.
+ (elf_arc_finish_dynamic_symbol): Likewise.
+
+2016-04-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
+ "sh_link".
+
+2016-04-14 Nick Clifton <nickc@redhat.com>
+
+ PR target/19938
+ * elf-bbfd.h (struct elf_backend_data): New field:
+ elf_strtab_flags.
+ New field: elf_backend_set_special_section_info_and_link
+ * elfxx-target.h (elf_backend_strtab_flags): Define if not already
+ defined.
+ (elf_backend_set_special_section_info_and_link): Define if not
+ already defined.
+ (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
+ elf_backend_strtab_flags macros to initialise fields in structure.
+ * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
+ being set even if SHF_MERGE is not set.
+ (elf_fake_sections): Likewise.
+ (section_match): New function. Matches two ELF sections based
+ upon fixed characteristics.
+ (find_link): New function. Locates a section in a BFD that
+ matches a section in a different BFD.
+ (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
+ fields of reserved sections.
+ (bfd_elf_compute_section_file_positions): Set the flags for the
+ .shstrtab section based upon the elf_strtab_flags field in the
+ elf_backend_data structure.
+ (swap_out_syms): Likewise for the .strtab section.
+ * elflink.c (bfd_elf_final_link): Set the flags for the
+ .strtab section based upon the elf_strtab_flags field in the
+ elf_backend_data structure.
+ * elf32-i386.c (elf32_i386_set_special_info_link): New function.
+ (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
+ targets.
+ (elf_backend_set_special_section_info_and_link): Define for
+ Solaris targets.
+ * elf32-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+
+2016-04-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19939
+ * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
+ to bfd_boolean.
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
+ Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
+ applies to read-only section.
+ * elf32-i386.c (elf_i386_link_hash_table): Add
+ readonly_dynrelocs_against_ifunc.
+ (elf_i386_allocate_dynrelocs): Updated.
+ (elf_i386_size_dynamic_sections): Issue an error for read-only
+ segment with dynamic IFUNC relocations only if
+ readonly_dynrelocs_against_ifunc is TRUE.
+ * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
+ readonly_dynrelocs_against_ifunc.
+ (elf_x86_64_allocate_dynrelocs): Updated.
+ (elf_x86_64_size_dynamic_sections): Issue an error for read-only
+ segment with dynamic IFUNC relocations only if
+ readonly_dynrelocs_against_ifunc is TRUE.
+ * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
+ Updated.
+
+2016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
+ a fall through from error_ret_free_internal. Free local_syms in
+ error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
+ (relocate_plt_for_entry): Likewise.
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_check_relocs): Changed
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (name_for_global_symbol): Changed assert.
+ (get_replace_function): Created.:
+ (struct arc_relocation_data): Changed to signed types.
+ (defines S, L, P, PDATA): Casted to signed type.
+ (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
+ (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
+ (arc_do_relocation): Changed.
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (name_for_global_symbol): Added assert to check for
+ symbol index.
+ (elf_arc_relocate_section): Added and changed asserts, validating
+ the synamic symbol index.
+ (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
+ relocation if symbol has dynindx set to -1.
+
+2016-04-05 Maciej W. Rozycki <macro@imgtec.com>
+
+ * elflink.c (elf_link_add_object_symbols): Always turn hidden
+ and internal symbols which have a dynamic index into local
+ ones.
+
+2016-04-04 Nick Clifton <nickc@redhat.com>
+
+ PR 19872
+ * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
+ version number if the version is zero.
+
+2016-04-01 Alan Modra <amodra@gmail.com>
+
+ PR 19886
+ * elflink.c (on_needed_list): Recursively check needed status.
+ (elf_link_add_object_symbols): Adjust.
+
+2016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
+
+ * elf32-avr.c (avr_elf32_load_records_from_section): Free
+ internal_relocs only if they aren't cached.
+
+2016-03-29 Nick Clifton <nickc@redhat.com>
+
+ PR 17334
+ * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
+ assertion on the size of the got section to allow it to be bigger
+ than the number of relocs.
+
+2016-03-29 Toni Spets <toni.spets@iki.fi>
+
+ PR 19878
+ * coffcode.h (coff_write_object_contents): Revert accidental
+ 2014-11-10 change.
+
+2016-03-22 Alan Modra <amodra@gmail.com>
+
+ PR 19850
+ * dwarf2.c (read_attribute_value): Skip info_ptr check for
+ DW_FORM_flag_present.
+
+2016-03-22 Nick Clifton <nickc@redhat.com>
+
+ * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
+ architecture name for backwards compatibility.
+
+ * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
+ unbounded stack use.
+
+ * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
+ sufficiently recent version of GCC.
+ * configure: Regenerate.
+
+2016-03-22 Alan Modra <amodra@gmail.com>
+
+ PR 19851
+ * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
+
+2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * archures.c (bfd_mach_arc_nps400): Define.
+ * bfd-in2.h: Regenerate.
+ * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
+ some existing entries to make space.
+ * elf32-arc.c (arc_elf_object_p): Add nps400 case.
+ (arc_elf_final_write_processing): Likewise.
+
+2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
+ EF_ARC_CPU_GENERIC.
+ (arc_elf_final_write_processing): Don't bother setting cpu field
+ in e_flags, this will have been set elsewhere.
+
+2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (arc_elf_final_write_processing): Switch to using
+ EF_ARC_MACH_MSK.
+
+2016-03-21 Nick Clifton <nickc@redhat.com>
+
+ * warning.m4 (GCC_WARN_CFLAGS): Add -Wstack-usage=262144
+ * configure: Regenerate.
+ * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Replace use of
+ alloca with call to xmalloc.
+ * elf32-nds32.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * pef.c: Likewise.
+ * pei-x86_64.c: Likewise.
+ * som.c: Likewise.
+ * xsym.c: Likewise.
+
+2016-03-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19827
+ * elf32-i386.c (elf_i386_check_relocs): Bind defined symbol
+ locally in PIE.
+ (elf_i386_relocate_section): Likewise.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+
+2016-03-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19807
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Check
+ no_reloc_overflow_check to diable R_X86_64_32/R_X86_64_32S
+ relocation overflow check.
+
+2016-03-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in2.h: Regenerated.
+
+2016-03-11 Dan Gissel <dgisselq@ieee.org>
+
+ PR 19713
+ * elf.c (_bfd_elf_section_offset): Ensure that the returned offset
+ uses bytes not octets.
+ * elflink.c (resolve_section): Likewise.
+ Add a bfd parameter.
+ (eval_section): Pass the input_bfd to resolve_section.
+ (bfd_elf_perform_complex_relocation): Convert byte offset to
+ octets before read and writing values.
+ (elf_link_input_bfd): Add byte to octet conversions.
+ (elf_reloc_link_order): Likewise.
+ (elf_fixup_link_order): Likewise.
+ (bfd_elf_final_link): Likewise.
+ * reloc.c (_bfd_final_link_relocate): Likewise.
+ * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
+
+2016-03-10 Nick Clifton <nickc@redhat.com>
+
+ * config.bfd: Mark the i370 target as obsolete.
+
+2016-03-09 Pedro Alves <palves@redhat.com>
+
+ * cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
+ gcc ABI)" to printable name.
+ * cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
+ of "v850-rh850" as printable name.
+
+2016-03-09 Leon Winter <winter-gcc@bfw-online.de>
+
+ PR ld/19623
+ * cofflink.c (_bfd_coff_generic_relocate_section): Do not apply
+ relocations against absolute symbols.
+
+2016-03-09 Alan Modra <amodra@gmail.com>
+
+ PR binutils/19775
+ * coff-alpha.c (alpha_ecoff_openr_next_archived_file): Allow zero
+ length elements in the archive.
+
+2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19789
+ * elflink.c (elf_link_add_object_symbols): Create dynamic sections
+ for -E/--dynamic-list only when not relocatable.
+
+2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19784
+ * elf32-i386.c (elf_i386_check_relocs): Increment PLT reference
+ count for locally defined local IFUNC symbols in shared object.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2016-03-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19579
+ * elflink.c (_bfd_elf_merge_symbol): Group common symbol checking
+ together.
+
+2016-03-08 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
+ Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (arc_bfd_get_32): Becomes an alias for bfd_get_32.
+ (arc_bfd_put_32): Becomes an alias for bfd_put_32.
+ (arc_elf_howto_init): Added assert to validate relocations.
+ (get_middle_endian_relocation): Delete.
+ (middle_endian_convert): New function.
+ (ME): Redefine, now does nothing.
+ (IS_ME): New define.
+ (arc_do_relocation): Extend the attached 'ARC_RELOC_HOWTO'
+ definition to call middle_endian_convert. Add a new local
+ variable and make use of this throughout. Added call to
+ arc_bfd_get_8 and arc_bfd_put_8 for 8 bit relocations.
+
+2016-03-07 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/19775
+ * archive.c (bfd_generic_openr_next_archived_file): Allow zero
+ length elements in the archive.
+
+2016-03-07 Jiong Wang <jiong.wang@arm.com>
+
+ * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Always create .got
+ section if the symbol "_GLOBAL_OFFSET_TABLE_" is referenced.
+
+2016-03-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19579
+ * elflink.c (_bfd_elf_merge_symbol): Treat common symbol in
+ executable as definition if the new definition comes from a
+ shared library.
+
+2016-03-02 Alan Modra <amodra@gmail.com>
+
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2016-02-29 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_relocate_section): Added rules to fix the
+ relocation addend when sections get merged.
+
+2016-02-29 Cupertino Miranda <Cupertino.Miranda@synopsys.com>
+
+ * elf32-arc.c (arc_elf_final_write_processing): Add condition to
+ the flag change.
+ (elf_arc_relocate_section): Fixes and conditions to support PIE.
+ Assert for code sections dynamic relocs.
+
+2016-02-26 Renlin Li <renlin.li@arm.com>
+
+ * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix signed overflow
+ check for MOVW_SABS_G0, MOVW_SABS_G1, MOVW_SABS_G2.
+
+2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19609
+ * elf32-i386.c (elf_i386_convert_load): Convert to R_386_32 for
+ load with locally bound symbols if PIC is false or there is no
+ base register. Optimize branch to 0 if PIC is false.
+ (elf_i386_relocate_section): Don't generate dynamic relocations
+ against undefined weak symbols if PIC is false.
+ * elf64-x86-64.c (elf_x86_64_convert_load): Disable optimization
+ if we can't estimate relocation overflow with --no-relax.
+ Convert to R_X86_64_32S/R_X86_64_32 for load with locally bound
+ symbols if PIC is false. Optimize branch to 0 if PIC is false.
+ (elf_x86_64_relocate_section): Don't generate dynamic relocations
+ against undefined weak symbols if PIC is false.
+
+2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19645
+ * bfd.c (bfd): Change flags to 20 bits.
+ (BFD_CONVERT_ELF_COMMON): New.
+ (BFD_USE_ELF_STT_COMMON): Likewise.
+ (BFD_FLAGS_SAVED): Add BFD_CONVERT_ELF_COMMON and
+ BFD_USE_ELF_STT_COMMON.
+ (BFD_FLAGS_FOR_BFD_USE_MASK): Likewise.
+ * configure.ac: Remove --enable-elf-stt-common.
+ * elf.c (swap_out_syms): Choose STT_COMMON or STT_OBJECT for
+ common symbol depending on BFD_CONVERT_ELF_COMMON and
+ BFD_USE_ELF_STT_COMMON.
+ * elfcode.h (elf_slurp_symbol_table): Set BSF_ELF_COMMON for
+ STT_COMMON.
+ * elflink.c (bfd_elf_link_mark_dynamic_symbol): Also check
+ STT_COMMON.
+ (elf_link_convert_common_type): New function.
+ (elf_link_output_extsym): Choose STT_COMMON or STT_OBJECT for
+ common symbol depending on BFD_CONVERT_ELF_COMMON and
+ BFD_USE_ELF_STT_COMMON. Set sym.st_info after sym.st_shndx.
+ * elfxx-target.h (TARGET_BIG_SYM): Add BFD_CONVERT_ELF_COMMON
+ and BFD_USE_ELF_STT_COMMON to object_flags.
+ (TARGET_LITTLE_SYM): Likewise.
+ * syms.c (BSF_KEEP_G): Renamed to ...
+ (BSF_ELF_COMMON): This.
+ * bfd-in2.h: Regenerated.
+ * config.in: Likewise.
+ * configure: Likewise.
+
2016-02-26 H.J. Lu <hongjiu.lu@intel.com>
PR ld/19636