This is a fix for PR ld/16744 which showed that an object file linked with -r and...
[platform/upstream/binutils.git] / ld / ChangeLog
index 4736e6b..d823aa4 100644 (file)
-2013-06-10  Dilyan Palauzov  <dilyan.palauzov@aegee.org>
+2014-03-31  Nick Clifton  <nickc@redhat.com>
 
 
-       PR ld/15598
-       * ld.texinfo (Source Code Reference): Fix typos.
+       PR ld/16744
+       * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
+       section when performing a relocatable link with -z [no]execstack
+       specified.
 
 
-2013-06-07  Will Newton  <will.newton@linaro.org>
+2014-03-27  H.J. Lu  <hongjiu.lu@intel.com>
 
 
-       * emulparams/aarch64elf.sh: Add IREL_IN_PLT.
+       PR ld/16756
+       * ldmain.c (symbol_warning): New function.
+       (warning_callback): Use it.  Scan all input files for a reference
+       to SYMBOL.
 
 
-2013-06-07  Nick Clifton  <nickc@redhat.com>
+2014-03-21  Christopher Faylor  <me.cygwin2013@cgf.cx>
 
 
-       * ld.texinfo (SEGMENT_START): Rephrase to indicate that a -T
-       option must appear before the SEGMENT_START is encountered in
-       order for the default value to be overridden.
+       * ld.texinfo: Document change in handling of --enable-auto-image-base.
+       * emultempl/pe.em (pe_auto_image_base): Set to default base.
+       (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
+       optional --enable-auto-image-base argument.
+       (gld${EMULATION_NAME}_handle_option): Handle optional
+       --enable-auto-image-base argument.
+       (compute_dll_image_base): Eliminate constant.  Use pe_auto_image_base.
 
 
-2013-05-03  Alan Modra  <amodra@gmail.com>
+2014-03-19  Nick Clifton  <nickc@redhat.com>
 
 
-       PR ld/15365
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
-       Restrict __ehdr_start's export class to no less than STV_HIDDEN.
-
-2013-05-03  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
-       Only call lang_for_each_statement if an ELF hash table is used.
-
-2013-05-02  Nick Clifton  <nickc@redhat.com>
-
-       * Makefile.am: Add emsp430X.c
-       * Makefine.in: Regenerate.
-       * configure.tgt (msp430): Add msp430X emulation.
-       * ldmain.c (multiple_definition): Only disable relaxation if it
-       was enabled by the user.
-       * ldmain.h (RELAXATION_ENABLED_BY_USER): New macro.
-       * emulparams/msp430all.sh: Add support for MSP430X.
-       * emultempl/generic.em: (before_parse): Enable relaxation for the
-       MSP430.
-       * scripttempl/msp430.sc: Reorganize sections.  Add .rodata
-       section.
-       * scripttempl/msp430_3.sc: Likewise.
-       * NEWS: Mention support for MSP430X.
-
-2013-05-01  Maciej W. Rozycki  <macro@codesourcery.com>
-
-       * configure.tgt: Replace alpha*-*-linuxecoff* pattern with
-       alpha*-*-linux*ecoff*.  Update the `sed' pattern used to convert
-       from alpha*-*-linux-* to alpha*-*-linux*ecoff*.
-
-2013-05-01  Maciej W. Rozycki  <macro@codesourcery.com>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
-       Use is_elf_hash_table rather than a handcoded condition.
-
-2013-04-30  Nick Clifton  <nickc@redhat.com>
-
-       * ld.texinfo (SORT_BY_ALIGNMENT): Fix and clarify typo - sections
-       are sorted by descending order of alignment.
-
-2013-04-29  Nick Clifton  <nickc@redhat.com>
-
-       * scripttempl/DWARF.sc: Add support for .debug_line.* and
-       .debug_line_end.
-
-2013-04-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
-
-       * emultempl/pe.em [cygwin]: Do not merge rdata with v2
-       psuedo-relocs.
-
-2013-04-28  Thomas Schwinge  <thomas@codesourcery.com>
-
-       * scripttempl/armbpabi.sc: Replace "source" usage with ".".
-       * scripttempl/avr.sc: Likewise.
-       * scripttempl/elf.sc: Likewise.
-       * scripttempl/elf32cr16.sc: Likewise.
-       * scripttempl/elf32crx.sc: Likewise.
-       * scripttempl/elf32msp430.sc: Likewise.
-       * scripttempl/elf32msp430_3.sc: Likewise.
-       * scripttempl/elf32sh-symbian.sc: Likewise.
-       * scripttempl/elf64hppa.sc: Likewise.
-       * scripttempl/elf_chaos.sc: Likewise.
-       * scripttempl/elfd10v.sc: Likewise.
-       * scripttempl/elfd30v.sc: Likewise.
-       * scripttempl/elfi370.sc: Likewise.
-       * scripttempl/elfm68hc11.sc: Likewise.
-       * scripttempl/elfm68hc12.sc: Likewise.
-       * scripttempl/elfxgate.sc: Likewise.
-       * scripttempl/elfxtensa.sc: Likewise.
-       * scripttempl/epiphany_4x4.sc: Likewise.
-       * scripttempl/i386beos.sc: Likewise.
-       * scripttempl/i386go32.sc: Likewise.
-       * scripttempl/ia64vms.sc: Likewise.
-       * scripttempl/ip2k.sc: Likewise.
-       * scripttempl/iq2000.sc: Likewise.
-       * scripttempl/mep.sc: Likewise.
-       * scripttempl/mmo.sc: Likewise.
-       * scripttempl/v850.sc: Likewise.
-       * scripttempl/v850_rh850.sc: Likewise.
-       * scripttempl/xstormy16.sc: Likewise.
-
-2013-04-26  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
-
-       * scripttempl/avr.sc: Add ALIGN directive after *(.progmem*).
-
-2013-04-26  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Test
-       unresolved_syms_in_shared_libs rather than !executable to
-       determine whether to load DT_NEEDED libraries.
-
-2013-04-25  Alan Modra  <amodra@gmail.com>
-
-       * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32lppclinux.c.
-       (eelf32lppclinux.c): New rule.
+       * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
        * Makefile.in: Regenerate.
        * Makefile.in: Regenerate.
-       * configure.tgt: Merge powerpc-linux and other powerpc-elf targets
-       with corresponding little-endian targets.
-       * emulparams/elf32lppc.sh: Update comment.
-       * emulparams/elf32lppclinux.sh: New.
-
-2013-04-24  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * configure.tgt (targ_extra_emuls): Adds elf32_x86_64 for
-       x86_64-*-elf*.
-       (targ_extra_libpath): Likewise.
-       (tdir_elf_i386): Replace x86_64 with i386 for x86_64-*-elf*.
-
-2013-04-24  Yufeng Zhang  <yufeng.zhang@arm.com>
-
-       * emulparams/aarch64elf.sh: Define ELFSIZE=64.
-       * emulparams/aarch64linux.sh: Ditto.
-       * emultempl/aarch64elf.em (aarch64_elf_before_allocation):
-       Replace elf64 with elf${ELFSIZE}.
-       (elf64_aarch64_add_stub_section): Likewise.
-       (build_section_lists): Likewise.
-       (gld${EMULATION_NAME}_after_allocation): Likewise.
-       (gld${EMULATION_NAME}_finish): Likewise.
-       (aarch64_elf_create_output_section_statements): Likewise.
-
-2013-04-24  Nick Clifton  <nickc@redhat.com>
-
-       PR ld/15389
-       * scripttempl/avr.sc: Add .note.gnu.build-id section.
-
-2013-04-22  Alan Modra  <amodra@gmail.com>
+       * emultempl/default-manifest.rc: Fix typo.
+       * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
+       (.rsrc): Add SUBALIGN(4).  Remove SORT.
+       * scripttempl/pep.sc: Likewise.
 
 
-       * emultempl/ppc64elf.em (ppc_create_output_section_statements):
-       Check return from ppc64_elf_init_stub_bfd.
+2014-03-17  Christopher Faylor  <me.cygwin2014@cgf.cx>
 
 
-2013-04-15  Nick Clifton  <nickc@redhat.com>
-
-       * Makefile.am (ELF_DEPS): Add a dependency upon
-       scripttempl/DWARF.sc.
-       (ELF_GEN_DEPS): Likewise.
-       (emmo.c): Likewise.
+       * Makefile.am: Use host version of windres.
        * Makefile.in: Regenerate.
 
        * Makefile.in: Regenerate.
 
-       * scripttempl/armbpabi.sc: Replace DWARF sections with an
-       inclusion of DWARF.sc.
-       * scripttempl/avr.sc: Likewise.
-       * scripttempl/elf.sc: Likewise.
-       * scripttempl/elf32cr16.sc: Likewise.
-       * scripttempl/elf32crx.sc: Likewise.
-       * scripttempl/elf32msp430.sc: Likewise.
-       * scripttempl/elf32msp430_3.sc: Likewise.
-       * scripttempl/elf32sh-symbian.sc: Likewise.
-       * scripttempl/elf64hppa.sc: Likewise.
-       * scripttempl/elf_chaos.sc: Likewise.
-       * scripttempl/elfd10v.sc: Likewise.
-       * scripttempl/elfd30v.sc: Likewise.
-       * scripttempl/elfi370.sc: Likewise.
-       * scripttempl/elfm68hc11.sc: Likewise.
-       * scripttempl/elfm68hc12.sc: Likewise.
-       * scripttempl/elfxgate.sc: Likewise.
-       * scripttempl/elfxtensa.sc: Likewise.
-       * scripttempl/epiphany_4x4.sc: Likewise.
-       * scripttempl/i386beos.sc: Likewise.
-       * scripttempl/i386go32.sc: Likewise.
-       * scripttempl/ia64vms.sc: Likewise.
-       * scripttempl/ip2k.sc: Likewise.
-       * scripttempl/iq2000.sc: Likewise.
-       * scripttempl/mep.sc: Likewise.
-       * scripttempl/mmo.sc: Likewise.
-       * scripttempl/v850.sc: Likewise.
-       * scripttempl/v850_rh850.sc: Likewise.
-       * scripttempl/xstormy16.sc: Likewise.
-       * scripttempl/DWARF.sc: New.
-
-2013-04-04  Alan Modra  <amodra@gmail.com>
-
-       * ldlang.c (load_symbols): Report "error adding symbols" on
-       bfd_link_add_symbols failure.
-       * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Likewise.
-       * emultempl/sunos.em (gld${EMULATION_NAME}_after_open): Likewise.
-       (gld${EMULATION_NAME}_try_needed): Likewise.
-
-2013-03-27  Georg-Johann Lay  <gjl@gcc.gnu.org>
-
-       PR ld/13812
-       * scripttempl/avr.sc: Place trampolines before .progmem section.
-
-2013-03-25  Kai Tietz  <ktietz@redhat.com>
-
-       * ld.texinfo (--disable-runtime-pseudo-reloc): Adjust default.
-
-2013-03-21  Michael Schewe  <michael.schewe@gmx.net>
-
-       * ld.texinfo (H8/300): Add description of relaxation of
-       mov @(disp:32,ERx) to mov @(disp:16,ERx).
-
-2013-03-21  Kai Tietz  <ktietz@redhat.com>
-
-       * pe-dll.c (process_def_file_and_drectve): Don't handle VC
-       generated C++-symbols as stdcall/fastcall.
-
-2013-03-18  Alan Modra  <amodra@gmail.com>
-
-       * ld.texinfo (--as-needed): Update.
-
-2013-03-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * emulparams/aarch64linux.sh (LIBPATH_SUFFIX): Set to 64 for
-       aarch64linux* emulations.
-
-2013-03-07  Alan Modra  <amodra@gmail.com>
-
-       * ldfile.c (ldfile_open_command_file_1): Return after einfo
-       to avoid warning.
-
-2013-03-05  Corinna Vinschen  <vinschen@redhat.com>
-
-       * configure.host: Add x86_64-*-cygwin* as valid host.
-       * configure.tgt: Add x86_64-*-cygwin* as valid target.
-       * emultempl/pep.em: Handle different requirements for Cygwin in terms
-       of start addresses for executables and DLLs, based on memory model in
-       http://cygwin.com/ml/cygwin-developers/2013-02/msg00027.html
-
-2013-03-05  Alan Modra  <amodra@gmail.com>
-
-       PR ld/15222
-       * ldlang.c (lang_size_sections_1): When given an lma_region align
-       LMA as per VMA only if lma_region is the same as region.
-
-2013-02-27  Nick Clifton  <nickc@redhat.com>
-
-       * scripttempl/elf32msp430.sc: Add placement of .data.* sections.
-       Add alignment of .bss section.
-       * scripttempl/elf32msp430_3.sc: Likewise.
-
-2013-02-26  Nick Clifton  <nickc@redhat.com>
-
-       PR ld/15188
-       * ld.texinfo: Fix typos.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * scripttempl/elf.sc (.init_array, .fini_array): Don't sort all
-       .init_array/.fini_array input sections before .ctors/.dtors input
-       sections.
-       (CTORS_IN_INIT_ARRAY, DTORS_IN_INIT_ARRAY): Adjust to suit.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (write_build_id, setup_build_id): Adjust
-       for elf_tdata changes.
-
-2013-02-21  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf-generic.em: Use newly defined elf_obj_tdata
-       accessor macros.
+2014-03-14  Romain Geissler  <romain.geissler@amadeus.com>
+           Alan Modra  <amodra@gmail.com>
 
 
-2013-02-20  Alan Modra  <amodra@gmail.com>
+       * ldlang.h (full_name_provided): New input flag.
+       * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
+       for -l:namespec.  Instead use lang_input_file_is_l_enum with
+       full_name_provided flag.
+       * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
+       full_name_provided flag is set.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
+       Handle full_name_provided libraries.  Tidy EXTRA_SHLIB_EXTENSION
+       support.  Set DT_NEEDED for -l:namespec as namespec.
+       * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
+       * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
+       Don't handle full_name_provided libraries.
+       * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
+       * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
+       * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
+
+2014-03-12  Alan Modra  <amodra@gmail.com>
 
 
-       * Makefile.am: Use $(ELF_DEPS) on a number of eelf*.c rules.
        * Makefile.in: Regenerate.
 
        * Makefile.in: Regenerate.
 
-2013-02-19  Sandra Loosemore  <sandra@codesourcery.com>
+2014-03-05  Alan Modra  <amodra@gmail.com>
 
 
-       PR ld/15146
-       * plugin.c (plugin_notice): Add null check before dereferencing
-       pointer.
+       Update copyright years.
 
 
-2013-02-19  Alan Modra  <amodra@gmail.com>
+2014-03-04  Nick Clifton  <nickc@redhat.com>
 
 
-       * emultempl/elf32.em (emit_note_gnu_build_id): New static var.
-       Replace all info->emit_note_gnu_build_id refs.
-       (id_note_section_size): Rename from
-       gld${EMULATION_NAME}_id_note_section_size.
-       (struct build_id_info): Delete.
-       (write_build_id): Rename from
-       gld${EMULATION_NAME}_write_build_id_section.
-       Update elf_tdata usage.  Style, formatting.
-       (setup_build_id): New function.
-       (gld${EMULATION_NAME}_after_open): Use setup_build_id.
-
-2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
+       * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
+       * Makefile.in: Regenerate.
 
 
-       PR ld/15146
-       * plugin.c (plugin_notice): Replace the undefined dummy bfd with
-       the real one.
+2014-02-27  Yuri Gribov  <y.gribov@samsung.com>
+
+       * emultempl/armelf.em (OPTION_LONG_PLT): Define.
+       (PARSE_AND_LIST_LONGOPTS): Add long-plt.
+       (PARSE_AND_LIST_OPTIONS): Likewise.
+       (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
+       * ld.texinfo: Document --long-plt.
+
+2014-02-27  Alan Modra  <amodra@gmail.com>
+
+       * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
+       use ppc32elf.em.
+       * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
+       vxworks.
+       (LDEMUL_AFTER_OPEN): Don't set for vxworks.
+       (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
+       -secure-plt, -bss-plt and -sdata-got when vxworks.
+
+2014-02-27  Nick Clifton  <nickc@redhat.com>
+
+       * configure.in (all_emul_extra_binaries): New variable.  Populated
+       by invoking configure.tgt.
+       (EMUL_EXTRA_BINARIES): New substitution.
+       * configure: Regenerate.
+       * configure.tgt (target_extra_binaries): New variable.  Set to
+       default-manifest.o for Cygwin and MinGW targets.
+       * Makefile.am (EMUL_EXTRA_BINARIES): New variable.  Initialised
+       by the configure script.
+       (ALL_EMUL_EXTRA_BINARIES): New variable.
+       (default-manifest.o): New rule to build the default manifest.
+       (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
+       (install-data-local): Add EMUL_EXTRA_BINARIES.
+       * Makefile.in: Regenerate.
+       * ld.texinfo: Document default manifest support.
+       * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
+       * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
+       * emultempl/default-manifest.rc: New file.
+       * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
+       * scripttempl/pep.sc (R_RSRC): Likewise.
 
 
-2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>
+2014-02-26  Dan Mick  <dan.mick@inktank.com>
 
 
-       PR ld/15141
-       * plugin.c (plugin_notice): Also trace symbol from the IR bfd.
+       PR ld/16569
+       * ldcref.c (cref_sort_array): Compare unmangled names unless
+       demanglng has been requiested.
+       (output_one_cref): Output unmangled name unless demangling has
+       been requested.
 
 
-2013-02-15  Kai Tietz  <ktietz@redhat.com>
+2014-02-19  Igor Zamyatin  <igor.zamyatin@intel.com>
+           H.J. Lu  <hongjiu.lu@intel.com>
 
 
-       * scripttempl/pep.sc (.xdata): Merge .xdata* into .xdata section.
-       (.pdata): Merge .pdata* into .pdata section.
+       * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
 
 
-2013-02-11  Alan Modra  <amodra@gmail.com>
+2014-02-19  Alan Modra  <amodra@gmail.com>
 
 
-       * ldlang.c (get_init_priority): Comment typo.
-       (lang_finish): Free link_info.hash and lang_definedness_table.
-       (lang_end): Delete lang_definedness_table comment.
+       * emultempl/ppc64elf.em (params): Init new field.
+       (ppc_create_output_section_statements): Set params.save_restore_funcs
+       default.
+       (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
+       --no-save-restore-funcs.
 
 
-2013-02-11  Alan Modra  <amodra@gmail.com>
+2014-02-17  Alan Modra  <amodra@gmail.com>
 
 
-       PR ld/15130
-       * ld.texinfo (-rpath-link): Typo fix.
+       * emultemps/ppc64elf.em (params): New static struct replacing
+       various other static vars.  Adjust code throughout file.
 
 
-2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>
+2014-02-17  Alan Modra  <amodra@gmail.com>
 
 
-       * emultempl/metagelf.em (build_section_lists): Use sec_info_type
-       rather than userdata->flags.just_syms.
+       * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
+       ppc476 workaround for ld -r.
 
 
-2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
-           Andrew Jenner <andrew@codesourcery.com>
+2014-02-12  Alan Modra  <amodra@gmail.com>
 
 
-       Based on patches from Altera Corporation.
+       * emultempl/ppc32elf.em (pagesize): New static var.
+       (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
+       (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
 
 
-       * Makefile.am (enios2elf.c): New rule.
-       * Makefile.in: Regenerated.
-       * configure.tgt: Add case for nios2*-*-*.
-       * emulparams/nios2elf.sh: New file.
-       * NEWS: Note Altera Nios II support.
+2014-02-11  Andrew Pinski  <apinski@cavium.com>
 
 
-2013-02-06  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+       * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
+       (ELF_INTERPRETER_NAME): Define.
+       * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
 
 
-       * emultempl/avrelf.em (avr_elf_before_parse): New function.
-       (LDEMUL_BEFORE_PARSE): Define.
+2014-02-10  Alan Modra  <amodra@gmail.com>
 
 
-2013-02-06  Alan Modra  <amodra@gmail.com>
+       * po/ld.pot: Regenerate.
 
 
-       PR ld/15096
-       * emultempl/elf32.em: Revert 2013-02-04, 2013-01-22 and 2013-01-21.
-       * emultempl/alphaelf.em: Revert 2013-02-04.
-       * emultempl/cr16elf.em: Likewise.
-       * emultempl/crxelf.em: Likewise.
-       * emultempl/hppaelf.em: Likewise.
-       * emultempl/ia64elf.em: Likewise.
-       * emultempl/mipself.em: Likewise.
-       * NEWS: Revert 2013-01-21.
+2014-02-03  Alan Modra  <amodra@gmail.com>
 
 
-2013-02-04  H.J. Lu  <hongjiu.lu@intel.com>
+       * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
+       plt_style): Delete.  Adjust all refs to instead use..
+       (params): ..this.  New variable.
+       (ppc_after_open_output): New function.  Tweak params and pass to
+       ppc_elf_link_params.
+       (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
+       (ppc_before_allocation): Adjust ppc_elf_tls_setup call.  Enable
+       relaxation for ppc476 workaround.
+       (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
+       (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
 
 
-       PR ld/15096
-       * emultempl/alphaelf.em (alpha_after_parse): Call
-       gld${EMULATION_NAME}_after_parse instead of after_parse_default.
-       * emultempl/cr16elf.em (cr16elf_after_parse): Likewise.
-       * emultempl/crxelf.em (crxelf_after_parse): Likewise.
-       * emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
-       * emultempl/mipself.em (mips_after_parse): Likewise.
+2014-02-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
 
 
-       * emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Renamed
-       to ...
-       (gld_${EMULATION_NAME}_after_parse): This.  Call
-       gld${EMULATION_NAME}_after_parse instead of after_parse_default.
-       (LDEMUL_AFTER_PARSE): Set to gld_${EMULATION_NAME}_after_parse.
+       * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
+       * ld/ldlang.c (lang_size_sections_1): Add dotdelta
+       variable which reflects the VMA change due to alignment
+       requirements.  Use dotdelta do change the LMA if
+       ALIGN_WITH_INPUT is requested.
 
 
-       * emultempl/elf32.em (new_dtags_set): New variable.
-       (gld${EMULATION_NAME}_before_parse): Don't set link_info.new_dtags
-       here.
-       (gld${EMULATION_NAME}_after_parse): New function.
-       (ld_${EMULATION_NAME}_emulation): Replace after_parse_default'
-       with gld${EMULATION_NAME}_after_parse.
-       (gld${EMULATION_NAME}_handle_option): Set new_dtags_set to TRUE
-       when setting link_info.new_dtags.
+2014-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
 
 
-2013-01-25  Kai Tietz  <ktietz@redhat.com>
+       * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
+       call to bfd_set_section_vma exposed by recent bfd_set_section_vma
+       change.
 
 
-       * deffilep.y (def_image_name): Adjust type of base-address
-       argument.
-       (%union): Add new type bfd_vma as vma.
-       (VMA):  New rule.
-       (opt_base): Use VMA instead of NUMBER rule to evaluate value.
-       (def_file_print): Use bfd's fprintf_vma to output base-address.
+2014-01-30  Sandra Loosemore  <sandra@codesourcery.com>
 
 
-2013-01-24  Nick Clifton  <nickc@redhat.com>
+       * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
+       * Makefile.in: Regenerated.
+       * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
+       * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
+       * emultempl/nios2elf.em: New file.
+       * gen-doc.texi (NIOSII): Set.
+       * ld.texinfo (NIOSII): Set.
 
 
-       * NEWS: Mention support for V850E3V5 architecture.
+2014-01-28  Nick Clifton  <nickc@redhat.com>
 
 
-2013-01-23  Martin Koegler  <martin.koegler@chello.at>
+       * Makefile.am: Remove obsolete MSP430 emulations.
+       * configure.tgt: Likewise.
+       * emulparams/msp430all.sh: Likewise.
+       * Makefile.in: Regenerate.
 
 
-       PR ld/15041
-       * scripttempl/pep.sc (.pdata): Only accept .pdata sections.
-       (.xdata): Similarly.
-       (.debug_frame): Similarly.
+2014-01-24  H.J. Lu  <hongjiu.lu@intel.com>
 
 
-2013-01-23  Georg-Johann Lay  <avr@gjlay.de>
+       PR ld/16498
+       * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
+       orphaned TLS section handling.
 
 
-       PR ld/15037
-       * scripttempl/avr.sc (.eeprom): Keep it.
+2014-01-24  Alan Modra  <amodra@gmail.com>
 
 
-2013-01-23  Leif Ekblad  <leif@rdos.net>
+       * ldlang.c (lang_output_section_find_by_flags): Be careful to
+       test look->bfd_section->flags if available rather than
+       look->flags.  Separate SEC_THREAD_LOCAL handling from
+       SEC_READONLY loop, and rewrite.
 
 
-       * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64rdos.c.
-       (eelf64rdos.c): New rule.
-       * emulparams/elf64rdos.sh: New file.
-       * configure.tgt (x86_64-*-rdos*): Use above.
-       * Makefile.in: Regenerate.
+2014-01-22  Alan Modra  <amodra@gmail.com>
 
 
-2013-01-22  Roland McGrath  <mcgrathr@google.com>
+       * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
+       (lang_init): Initialise them.
+       (lang_print_asneeded): New function.
+       (lang_process): Call lang_print_asneeded.
+       * ldlang.h (struct asneeded_minfo): New.
+       (asneeded_list_tail): Declare.
+       * ldmain.c (add_archive_element): Improve archive map heading.
+       * ldmisc.c (minfo): Stash --as-needed info.
 
 
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
-       new_dtags to TRUE for *-*-nacl* targets.
+2014-01-22  Alan Modra  <amodra@gmail.com>
 
 
-2013-01-21  Mike Frysinger  <vapier@gentoo.org>
+       * ld.h (struct map_symbol_def): Move to..
+       * ldlang.h: ..here.
+       * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
 
 
-       * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
-       link_info.new_dtags to TRUE for linux/gnu targets.
-       * NEWS: Mention new dtags default.
+2014-01-22  Alan Modra  <amodra@gmail.com>
 
 
-2013-01-19  H.J. Lu  <hongjiu.lu@intel.com>
+       * ld.texinfo (Output Section Discarding): Mention assigning to dot
+       as a way of keeping otherwise empty sections.
+       * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
+       is_dot_plus_0, is_align_conditional): New predicates.
+       (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
+       output section, except for some special cases.
+       * scripttempl/elfmicroblaze.sc: Use canonical form to align at
+       end of .heap and .stack.
 
 
-       * Makefile.am (HOSTING_SCRT0): New.
+2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
 
 
-       * configure.host (HOSTING_SCRT0): New.  Used for PIE.
+       * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
 
 
-       * configure.in (HOSTING_SCRT0): New AC_SUBST.
+2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
 
 
-       * Makefile.in: Regenerated.
-       * configure: Likewise.
+       * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
 
 
-2013-01-18  Mike Frysinger  <vapier@gentoo.org>
+2014-01-20  Alan Modra  <amodra@gmail.com>
 
 
-       * NEWS: Mention change in behavior with --enable-new-dtags.
-       * ld.texinfo (Options): Clarify --enable-new-dtags behavior.
+       * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
+       by_script.  Make iteration a single bit field.
+       (lang_track_definedness, lang_symbol_definition_iteration): Delete.
+       (lang_symbol_defined): Declare.
+       * ldlang.c (lang_statement_iteration): Expand comment a little.
+       (lang_init <lang_definedness_table>): Make it bigger.
+       (lang_track_definedness, lang_symbol_definition): Delete.
+       (lang_definedness_newfunc): Update.
+       (lang_symbol_defined): New function.
+       (lang_update_definedness): Create entries here.  Do track whether
+       script definition of symbol is valid, even when also defined in
+       an object file.
+       * ldexp.c (fold_name <DEFINED>): Update.
+       (fold_name <NAME>): Allow self-assignment for absolute symbols
+       defined in a linker script.
 
 
-2013-01-14  Leif Ekblad <leif@rdos.net>
+2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
            Alan Modra  <amodra@gmail.com>
 
            Alan Modra  <amodra@gmail.com>
 
-       * ld.texinfo (-Tldata-segment): Describe.
-       * ldlex.h (OPTION_TLDATA_SEGMENT): New enum value.
-       * lexsup.c (ld_options): Add -Tldata-segment.
-       (parse_args): Handle OPTION_TLDATA_SEGMENT.
-       * scripttempl/elf.sc: Support LARGE_DATA_ADDR.
-
-2013-01-10  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * deffilep.y: Remove trailing white spaces.
-       * elf-hints-local.h: Likewise.
-       * ldexp.c: Likewise.
-       * ldlang.h: Likewise.
-       * ldmisc.c: Likewise.
-       * ldwrite.c: Likewise.
-       * pe-dll.c: Likewise.
-       * emulparams/criself.sh: Likewise.
-       * emulparams/crislinux.sh: Likewise.
-       * emulparams/elf32_tic6x_le.sh: Likewise.
-       * emulparams/elf32bmipn32-defs.sh: Likewise.
-       * emulparams/elf32mb_linux.sh: Likewise.
-       * emulparams/elf32mep.sh: Likewise.
-       * emulparams/elf32microblaze.sh: Likewise.
-       * emulparams/elf32ppc.sh: Likewise.
-       * emulparams/elf64_s390.sh: Likewise.
-       * emulparams/elf64alpha.sh: Likewise.
-       * emulparams/elf_s390.sh: Likewise.
-       * emulparams/elf_x86_64.sh: Likewise.
-       * emulparams/tic80coff.sh: Likewise.
+       * ldlang.h (lang_output_section_get): Define.
+       * ldlang.c (lang_output_section_get): Likewise.
+       (init_os): Set the output_section userdata to the output
+       section statement.
+       * emultempl/hppaelf.em: Use lang_output_section_get instead of
+       lang_output_section_find where applicable.
+       * emultempl/aarch64elf.em: Likewise.
        * emultempl/aix.em: Likewise.
        * emultempl/aix.em: Likewise.
-       * emultempl/avrelf.em: Likewise.
-       * emultempl/cr16elf.em: Likewise.
-       * emultempl/pe.em: Likewise.
-       * emultempl/pep.em: Likewise.
+       * emultempl/armelf.em: Likewise.
+       * emultempl/m68hc1xelf.em: Likewise.
+       * emultempl/metagelf.em: Likewise.
+       * emultempl/mipself.em: Likewise.
+       * emultempl/ppc64elf.em: Likewise.
        * emultempl/spuelf.em: Likewise.
        * emultempl/spuelf.em: Likewise.
-       * emultempl/tic6xdsbt.em: Likewise.
 
 
-2013-01-10  Will Newton <will.newton@imgtec.com>
+2014-01-17  Alan Modra  <amodra@gmail.com>
+
+       * genscripts.sh (COMPILE_IN): Don't set if already set.
+       * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
+       COMPILE_IN=no.
+       * emulparams/nds32elf16m.sh: Likewise.
+       * emulparams/nds32elf_linux.sh: Likewise.
+       * emultempl/aix.em: Test COMPILE_IN value is "yes".
+       * emultempl/armcoff.em: Likewise.
+       * emultempl/elf32.em: Likewise.
+       * emultempl/generic.em: Likewise.
+       * emultempl/gld960.em: Likewise.
+       * emultempl/gld960c.em: Likewise.
+       * emultempl/linux.em: Likewise.
+       * emultempl/lnk960.em: Likewise.
+       * emultempl/m68kcoff.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * emultempl/ticoff.em: Likewise.
+
+2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/16456
+       * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
+       suffix.
+       * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
+       for elf32_x86_64 emulation.
+       * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
+       for elf_i386 emulation.
+
+2014-01-16  Alan Modra  <amodra@gmail.com>
+
+       * ld.h (fat_section_userdata_type, get_userdata): Move to..
+       * ldlang.h (input_section_userdata_type, get_userdata): ..here.
+       * ldlang.c (init_map_userdata): Delete.  Fold into..
+       (sort_def_symbol): ..here.  Don't attach input section userdata
+       to output sections or global bfd sections.
+       (lang_map): Don't pre-allocate input section userdata.
+       (init_os): Don't allocate userdata for output sections.
+       (print_all_symbols): Update.
+
+2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
 
 
-       * Makefile.am: Add Meta.
-       * Makefile.in: Regenerate.
-       * configure.tgt: Add Meta.
-       * emulparams/elf32metag.sh: New file.
-       * emultempl/metagelf.em: New file.
-
-2013-01-09  Alan Modra  <amodra@gmail.com>
-
-       * emulparams/elf_x86_64.sh (LARGE_BSS_AFTER_BSS): Define.
-       * emulparams/elf32_x86_64.sh: Likewise.
-       * emulparams/elf_k1om.sh: Likewise.
-       * emulparams/elf_l1om.sh: Likewise.
-       * scripttempl/elf.sc (LARGE_BSS): Define rather than appending to
-       OTHER_BSS_SECTIONS.  Substitute in script.
-
-2013-01-08  Leif Ekblad  <leif@rdos.net>
-
-       * scripttempl/elf.sc (RODATA_ADDR): Typo fix.
-
-2013-01-08  Alan Modra  <amodra@gmail.com>
-
-       * emultempl/elf32.em (gld${EMULATION_NAME}_check_ld_so_conf): Replace
-       "name" param with a bfd_link_needed_list pointer.  Update caller.
-       (gld${EMULATION_NAME}_check_ld_elf_hints): Likewise.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
+       Silence uninitialized warning on ehdr_start_save with older
+       GCC.
 
 
-2013-01-08  Alan Modra  <amodra@gmail.com>
+2014-01-15  Alan Modra  <amodra@gmail.com>
 
 
-       * Makefile.am (ALL_EMULATION_SOURCES): Correct eavrxmega entries.
-       * Makefile.in: Regenerate.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
+       __ehdr_start before size_dynamic_sections and restore afterwards.
 
 
-2013-01-07  H.J. Lu  <hongjiu.lu@intel.com>
+2014-01-10  Alan Modra  <amodra@gmail.com>
 
 
-       * lexsup.c (ld_options): Add fuse-ld= for GCC linker option
-       compatibility.
+       PR ld/14207
+       PR ld/16322
+       PR binutils/16323
+       * ldlang.c (lang_size_sections): Remove unneeded RELRO base
+       adjust.  Tidy comments.
+       * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
 
 
-2013-01-07  Patrice Dumas  <pertusus@free.fr>
+2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
 
 
-       * ld.texinfo: Replace @ with @@ when it is part of the text.
-       Correct ordering of M68HC11 entry.
+       * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
 
 
-2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
+2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
 
 
-       * configure.tgt: Support ELF files for Sony Playstation 2 (for
-       ps2dev and ps2sdk).
-       * emulparams/elf32lr5900n32.sh: Create linker script for Sony
-       Playstation 2 ELF files using MIPS ABI n32.
-       * emulparams/elf32lr5900.sh: Create linker script for Sony
-       Playstation 2 ELF files using MIPS ABI o32.
-       * Makefile.am: Add linker scripts for Sony Playstation 2 ELF
-       files.
+       PR ld/14207
+       PR ld/16322
+       PR binutils/16323
+       * ldlang.c (lang_size_sections): Properly align RELRO base.
 
 
-2013-01-02  H.J. Lu  <hongjiu.lu@intel.com>
+2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
 
 
-       * ldver.c (ldversion): Update copyright year to 2013.
+       * ldver.c (ldversion): Update copyright year to 2014.
 
 
-For older changes see ChangeLog-2012
+For older changes see ChangeLog-2013
 \f
 \f
-Copyright (C) 2013 Free Software Foundation, Inc.
+Copyright (C) 2014 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright