+2014-01-03 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/16199
+ * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
+ zero.
+
+2014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
+
+ PR binutils/14289
+ * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
+
+2014-01-02 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/11983
+ * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
+ filename in the bfd's filename field.
+ * elfcode.h (bfd_from_remote_memory): Likewise.
+ * ieee.c (ieee_object_p): Likewise.
+ * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
+ * oasys.c (oasys_openr_next_archived_file): Likewise.
+ * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
+ * opncls.c (bfd_fopen): Likewise.
+ (bfd_openstreamr): Likewise.
+ (bfd_openr_iovec): Likewise.
+ (bfd_openw): Likewise.
+ (bfd_create): Likewise.
+ (_bfd_delete_bfd): Free filename.
+
+2013-12-30 Ilya Tocar <ilya.tocar@intel.com>
+
+ * peXXigen.c (rsrc_process_section): Use ptrdiff_t as the type for
+ pointer arithmetic.
+
+2013-12-20 Alan Modra <amodra@gmail.com>
+
+ * elf-eh-frame.c (cie_eq): Return false when initial_insn_length
+ is too large.
+ (cie_compute_hash): Don't exceed bounds of initial_instructions.
+ (_bfd_elf_parse_eh_frame): Always set initial_insn_length, and
+ save as much of insns to initial_instructions[] as will fit.
+
+2013-12-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/16317
+ * elf.c (assign_section_numbers): Set the SHF_INFO_LINK bit for
+ SHT_REL/SHT_RELA sections when setting the sh_info field.
+
+2013-12-19 Pierre Muller <muller@sourceware.org>
+
+ * peXXigen.c (rsrc_cmp): Fix unused variable warning.
+
+2013-12-19 Pierre Muller <muller@sourceware.org>
+
+ * peXXigen.c (u16_mbtouc): Avoid unused function warning by excluding
+ if __CYGWIN__ or __MINGW32__ macro is defined.
+ (rsrc_cmp): Fix Windows host version and version without wchar header.
+ [__CYGWIN__, __MINGW32__]: Introduce rsrccmp macro.
+ Fix coding standard issues.
+
+2013-12-19 Andreas Schwab <schwab@suse.de>
+
+ * elf32-m68k.c (elf_m68k_add_symbol_hook): New function.
+ (elf_backend_add_symbol_hook): Define.
+
+2013-12-18 Nick Clifton <nickc@redhat.com>
+
+ * peXXigen.c (rsrc_print_section): Use ptrdiff_t as the type for
+ pointer arithmetic.
+
+2013-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-arm.c (elf32_arm_post_process_headers): Call
+ _bfd_elf_post_process_headers.
+
+2013-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-spu.c (spu_elf_post_process_headers): Call
+ _bfd_elf_post_process_headers.
+ * elfxx-mips.c (_bfd_mips_post_process_headers): Likewise.
+
+2013-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (_bfd_elf_set_osabi): Renamed to ...
+ (_bfd_elf_post_process_headers): This.
+ * elf.c (_bfd_elf_compute_section_file_positions): Always
+ call elf_backend_post_process_headers.
+ (_bfd_elf_set_osabi): Renamed to ...
+ (_bfd_elf_post_process_headers): This.
+ * elf32-hppa.c (elf_backend_post_process_headers): Removed.
+ * elf32-i370.c (elf_backend_post_process_headers): Likewise.
+ * elf32-msp430.c (elf_backend_post_process_headers): Likewise.
+ * elf32-ppc.c (elf_backend_post_process_headers): Likewise.
+ * elf32-sparc.c (elf_backend_post_process_headers): Likewise.
+ * elf64-hppa.c (elf_backend_post_process_headers): Likewise.
+ * elf64-ppc.c (elf_backend_post_process_headers): Likewise.
+ * elf64-sparc.c (elf_backend_post_process_headers): Likewise.
+ * elf64-x86-64.c (elf_backend_post_process_headers): Likewise.
+ * (elf_backend_post_process_headers): Likewise.
+ * (elf_backend_post_process_headers): Likewise.
+ * elf32-i386.c (elf_backend_post_process_headers): Don't
+ define as _bfd_elf_set_osabi.
+ (elf_i386_fbsd_post_process_headers): Updated.
+ * elf32-mips.c (elf_fbsd_post_process_headers): Removed.
+ (elf_backend_post_process_headers): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_set_osabi): Removed.
+ (elf_backend_post_process_headers): Likewise.
+ * elf64-mips.c (elf_fbsd_post_process_headers): Removed.
+ (elf_backend_post_process_headers): Likewise.
+ * elfn32-mips.c (elf_fbsd_post_process_headers): Removed.
+ (elf_backend_post_process_headers): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_post_process_headers): Updated.
+ * elfxx-target.h (elf_backend_post_process_headers): Default
+ to _bfd_elf_post_process_headers.
+
+2013-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/16318
+ * elf32-arm.c (elf32_arm_copy_private_bfd_data): Call
+ _bfd_elf_copy_private_bfd_data.
+ * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Removed.
+ (elf32_bfinfdpic_copy_private_bfd_data): Likewise.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-frv.c (frv_elf_copy_private_bfd_data): Removed.
+ (elf32_frvfdpic_copy_private_bfd_data): Likewise.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Removed.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-lm32.c (lm32_elf_copy_private_bfd_data): Removed.
+ (lm32_elf_fdpic_copy_private_bfd_data): Call
+ _bfd_elf_copy_private_bfd_data.
+ * elf32-mep.c (mep_elf_copy_private_bfd_data): Removed.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-msp430.c (elf32_msp430_copy_private_bfd_data): Removed.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-mt.c (mt_elf_copy_private_bfd_data): Removed.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't define.
+ * elf32-sh.c (sh_elf_set_private_flags): Removed.
+ (sh_elf_copy_private_data): Call _bfd_elf_copy_private_bfd_data
+ and sh_elf_set_mach_from_flags.
+ * elfnn-aarch64.c (elfNN_aarch64_copy_private_bfd_data): Removed.
+ (bfd_elfNN_bfd_copy_private_bfd_data): Don't define.
+
+2013-12-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * peXXigen.c (rsrc_process_section): Rename index to indx.
+
+2013-12-17 Nick Clifton <nickc@redhat.com>
+
+ * peXXigen.c: Include wchar.h if available.
+ Include safe-ctype.h.
+ (HighBitSet, SetHighBit, WithoutHighBit): New macros.
+ (pe_print_resource_entries): Rename to
+ rsrc_print_resource_entries. Handle names that are not RVAs.
+ (pe_print_resource_directory): Rename to
+ rsrc_print_resource_directory.
+ (pe_print_rsrc): Rename to rsrc_print_section. Corrupt
+ computation of RVA bias.
+ (rsrc_count_entries): New function.
+ (rsrc_count_directory): New function.
+ (rsrc_parse_entry): New function.
+ (rsrc_parse_entries): New function.
+ (rsrc_parse_directory): New function.
+ (rsrc_write_string): New function.
+ (rsrc_compute_rva): New function.
+ (rsrc_write_leaf): New function.
+ (rsrc_write_entry): New function.
+ (rsrc_write_directory): New function.
+ (u16_mbtouc): New function.
+ (rsrc_cmp): New function.
+ (rsrc_print_name): New function.
+ (rsrc_resource_name): New function.
+ (rsrc_merge_string_entries): New function.
+ (rsrc_sort_entries): New function.
+ (rsrc_attach_chain): New function.
+ (rsrc_merge): New function.
+ (rsrc_process_section): New function - merges the contents of a
+ .rsrc section.
+ (_bfd_XXi_final_link_postscript): Call rsrc_process_section.
+ (rsrc_print_section): Fix mingw64 size issue.
+
+ * configure.in (AC_CHECK_HEADERS): Add wchar.h
+ * config.in: Regenerate.
+ * configure: Regenerate.
+
+2013-12-16 Andreas Schwab <schwab@suse.de>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Add newline to error
+ message.
+
+2013-12-14 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (_bfd_elf_merge_symbol): If merging a new weak
+ symbol that will be skipped, we don't have a new definition.
+
+2013-12-13 Kuan-Lin Chen <kuanlinchentw@gmail.com>
+ Wei-Cheng Wang <cole945@gmail.com>
+
+ * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add nds32
+ files.
+ * Makefile.in: Regenerate.
+ * archures.c (bfd_nds32_arch): Add nds32 target.
+ * bfd-in2.h: Regenerate.
+ * config.bfd (nds32*le-*-linux): Add bfd_elf32_nds32lelin_vec
+ and bfd_elf32_nds32belin_vec.
+ (nds32*be-*-linux*): Likewise.
+ (nds32*le-*-*): Add bfd_elf32_nds32le_vec and bfd_elf32_nds32be_vec.
+ (nds32*be-*-*): Likewise.
+ * configure.in (bfd_elf32_nds32be_vec): Add elf32-nds32.lo.
+ (bfd_elf32_nds32le_vec): Likewise.
+ (bfd_elf32_nds32belin_vec): Likewise.
+ (bfd_elf32_nds32lelin_vec): Likewise.
+ * configure: Regenerate.
+ * cpu-nds32.c: New file for nds32.
+ * elf-bfd.h: Add NDS32_ELF_DATA.
+ * elf32-nds32.c: New file for nds32.
+ * elf32-nds32.h: New file for nds32.
+ * libbfd.h: Regenerate.
+ * reloc.c: Add relocations for nds32.
+ * targets.c (bfd_elf32_nds32be_vec): New declaration for nds32.
+ (bfd_elf32_nds32le_vec): Likewise.
+ (bfd_elf32_nds32belin_vec): Likewise.
+ (bfd_elf32_nds32lelin_vec): Likewise.
+
+2013-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/16318
+ * elf.c (_bfd_elf_copy_private_bfd_data): Remove BFD_ASSERT.
+ Set e_flags only if elf_flags_init is FALSE. Copy EI_OSABI
+ field.
+
+2013-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-sh.c (bfd_elf32_bfd_set_private_bfd_flags): Removed.
+
+2013-12-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (assign_file_positions_except_relocs): Set e_type in ELF
+ header to ET_EXEC for -pie -Ttext-segment=.
+
+2013-12-08 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (_bfd_elf_add_default_symbol): Set dynamic_def
+ and ref_dynamic_nonweak when chaining together indirect
+ symbols.
+
+2013-12-06 Tristan Gingold <gingold@adacore.com>
+
+ * pei-x86_64.c (pex64_xdata_print_uwd_codes): Add argument rf.
+ Display epilog opcode.
+ (pex64_dump_xdata): Add argument rf; make addr a local variable.
+ Adjust call to pex64_xdata_print_uwd_codes.
+ (pex64_bfd_print_pdata): Display code range, adjust call to
+
+2013-12-05 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o.c (bfd_mach_o_mkobject_init): Use bfd_zalloc.
+
+2013-12-03 Nick Clifton <nickc@redhat.com>
+
+ * peXXigen.c (pe_print_resource_entries): New function: Displays
+ an entry in a .rsrc section.
+ (pe_print_resource_directory): New function: Displays a directory
+ in a .rsrc section.
+ (pe_print_rsrc): New function: Displays the contents of .rsrc
+ section.
+ (_bfd_XX_print_private_bfd_data_common): Call pe_print_rsrc.
+
+2013-12-03 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc_build_one_stub <ppc_stub_plt_branch_r2off>):
+ Don't omit saving of r2 for ELFv2. Don't addi 2,2,0.
+ (ppc_size_one_stub <ppc_stub_plt_branch_r2off>): Adjust to suit.
+
+2013-12-03 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_link_just_syms): Remove .got check.
+ Handle ELFv2.
+
+2013-11-26 Will Newton <will.newton@linaro.org>
+
+ * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol):
+ Handle STT_GNU_IFUNC symbols correctly in static links.
+
+2013-11-26 Will Newton <will.newton@linaro.org>
+
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Ensure
+ PLT_INDEX is calculated using correct header size.
+
+2013-11-22 Cory Fields <cory@coryfields.com>
+
+ * libcoff-in.h: Add insert_timestamp flag to the pe_data struct.
+ * libcoff.h: Regenerate.
+ * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Only use a real
+ timestamp if --insert-timestamp was used.
+
+2013-11-19 Roland McGrath <mcgrathr@google.com>
+
+ * elf-nacl.c (nacl_modify_segment_map): Calculate SIZEOF_HEADERS
+ when not doing linking (i.e. INFO is a null pointer).
+
+2013-11-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_section_from_shdr): Re-indent.
+
+2013-11-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_PC32_BND
+ and R_X86_64_PLT32_BND.
+ (R_X86_64_standard): Replace R_X86_64_RELATIVE64 with
+ R_X86_64_PLT32_BND.
+ (IS_X86_64_PCREL_TYPE): Add R_X86_64_PLT32_BND.
+ (x86_64_reloc_map): Add BFD_RELOC_X86_64_PC32_BND and
+ BFD_RELOC_X86_64_PLT32_BND.
+ (elf_x86_64_check_relocs): Handle R_X86_64_PC32_BND and
+ R_X86_64_PLT32_BND.
+ (elf_x86_64_gc_sweep_hook): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+ * reloc.c (bfd_reloc_code_real): Add BFD_RELOC_X86_64_PC32_BND
+ and BFD_RELOC_X86_64_PLT32_BND.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
+2013-11-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_allocate_dynrelocs): Make room for
+ PLT0 directly.
+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
+
+2013-11-14 Nick Clifton <nickc@redhat.com>
+
+ PR ld/16017
+ * elf32-arm.c (elf32_arm_populate_plt_entry): Return a boolean
+ value, TRUE for success, FALSE for failure.
+ Fail if attempting to create a PLT entry for a thumb only target.
+ (elf32_arm_final_link_relocate): Check result of calling
+ elf32_arm_populate_plt_entry.
+ (elf32_arm_finish_dynamic_symbol): Likewise.
+
+2013-11-14 Guy Martin <gmsoft@tuxicoman.be>
+
+ PR ld/16082
+ * elf32-hppa.c (elf32_hppa_hide_symbol): Remove old version
+ information when forcing a symbol to be local.
+
+2013-11-13 Yufeng Zhang <yufeng.zhang@arm.com>
+
+ * elfnn-aarch64.c (elfNN_aarch64_howto_table): Use
+ R_AARCH64_TLS_DTPMOD64 instead of R_AARCH64_TLS_DTPMOD;
+ likewise for R_AARCH64_TLS_DTPREL and R_AARCH64_TLS_TPREL.
+
+2013-11-12 Matthew Leach <Matthew.Leach@arm.comm>
+
+ * elfxx-aarch64.c (_bfd_aarch64_elf_grok_prstatus): Fix hard-coded
+ size of struct elf_prstatus.
+
+2013-11-11 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (allocate_dynrelocs): Revert 2013-11-04 change.
+
+2013-11-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Use SYMBOL_REFERENCES_LOCAL
+ here, not SYMBOL_CALLS_LOCAL.
+ (ppc64_elf_relocate_section): Likewise.
+ (size_global_entry_stubs): Set undefined symbols on their global
+ entry stubs here..
+ (build_global_entry_stubs): ..rather than here.
+ (ppc64_elf_build_stubs): Don't reset glink->size before calling
+ build_global_entry_stubs.
+
+2013-11-07 Roland McGrath <mcgrathr@google.com>
+
+ * archures.c (bfd_mach_i386_nacl): Fix definition so it doesn't
+ collide with bfd_mach_l1om.
+ * bfd-in2.h: Regenerate.
+
+ * elf32-i386.c (elf32_i386_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf32-i386-nacl definition.
+ * elf64-x86-64.c (elf64_x86_64_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf64-x86-64-nacl definition.
+ (elf32_x86_64_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf32-x86-64-nacl definition.
+
2013-11-05 DJ Delorie <dj@redhat.com>
* elf32-rl78.c (elf32_rl78_relax_delete_bytes): Make sure relocs
(elfNN_aarch64_create_dynamic_sections): Do not define
_GLOBAL_OFFSET_TABLE_; call aarch64_elf_create_got_section.
-2013-07-02 Marcus Shawcroft <marcus.shawcroft@arm.com>
-
- * ld-aarch64/emit-relocs-309-low.d: Adjust .text address.
- * ld-aarch64/emit-relocs-309-up.d: Adjust .got address.
- * ld-aarch64/emit-relocs-312.d: Adjust offsets into .got.
- * ld-aarch64/tls-relax-all.d: Likewise.
- * ld-aarch64/gc-got-relocs.d: Adjust expected .got content.
- * ld-aarch64/gc-tls-relocs.d: Likewise.
- * ld-aarch64/tls-relax-gd-ie.d: Likewise.
- * ld-aarch64/tls-relax-gdesc-ie-2.d: Likewise.
- * ld-aarch64/tls-relax-gdesc-ie.d: Likewise.
-
2013-07-02 Alan Modra <amodra@gmail.com>
* elf64-ppc.c (ppc64_elf_relocate_section): Set "relocation" for