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-01-22  Alan Modra  <amodra@gmail.com>

	Apply mainline patches
	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_link pointer.  Update caller.
	(gld${EMULATION_NAME}_check_ld_elf_hints): Likewise.

	2012-12-17  Alan Modra  <amodra@gmail.com>
	PR ld/14962
	* ldexp.h (struct ldexp_control): Add "assign_name".
	* ldexp.c (fold_name <NAME>): Compare and clear assign_name on match.
	(exp_fold_tree_1): Remove existing code testing for self assignment.
	Instead set and test expld.assign_name.
	* ldlang.c (scan_for_self_assignment): Delete.
	(print_assignment): Instead set and test expld.assign_name.

	2012-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/14915
	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Also
	check DT_NEEDED entries when creating shared object with
	--copy-dt-needed-entries.

	2012-12-03  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/14904
	* ldmain.c (main): Don't check plugin_load_plugins return.
	* lexsup.c (parse_args): Don't check plugin_opt_plugin return.
	* plugin.c (dlerror): New.  Defined if HAVE_DLFCN_H isn't
	defined.
	(plugin_opt_plugin): Change return type to void.  Stop on
	dlopen error and report error with dlerror ().
	(plugin_load_plugins): Change return type to void.  Stop on
	dlsym error and report error with dlerror ().  Don't use
	set_plugin_error.
	(plugin_call_cleanup): Issue an error for each plugin.
	* plugin.h (plugin_opt_plugin): Change return type to void.
	(plugin_load_plugins): Likewise.

	2012-11-01  Alan Modra  <amodra@gmail.com>
	* ldlang.c (insert_pad): Correct output section size calculation.
	(lang_size_sections_1): Likewise for lang_data_statement and
	lang_reloc_statement.

	2012-10-22  Alan Modra  <amodra@gmail.com>
	* plugin.c (plugin_load_plugins): Warning fix.

2012-12-18  Roland McGrath  <mcgrathr@google.com>

	* ld.texinfo (Options): Describe -Trodata-segment.
	* ldlex.h (enum option_values): Add OPTION_TRODATA_SEGMENT.
	* lexsup.c (ld_options, parse_args): Handle -Trodata-segment.
	* scripttempl/elf.sc (RODATA_ADDR, SHLIB_RODATA_ADDR): Wrap
	SEGMENT_START("rodata-segment", ...) + SIZEOF_HEADERS around the value.

2012-12-11  Roland McGrath  <mcgrathr@google.com>

	* emulparams/elf_nacl.sh (nacl_rodata_addr): New shell function.
	(RODATA_ADDR, SHLIB_RODATA_ADDR): Use it to base the calculation
	on SEGMENT_START("text-segment", ...) rather than ... alone.
	* Makefile.am (earmelf_nacl.c, earmelfb_nacl.c): Add missing
	dependency on $(srcdir)/emulparams/elf_nacl.sh.
	* Makefile.in: Regenerate.

2012-11-26  Roland McGrath  <mcgrathr@google.com>

	* emultempl/aarch64elf.em (gld${EMULATION_NAME}_before_parse):
	Copy last elf32.em here too.
	* emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
	* emultempl/mmixelf.em (gld${EMULATION_NAME}_before_parse): Likewise.
	* emultempl/scoreelf.em (gld${EMULATION_NAME}_before_parse): Likewise.

2012-11-21  Roland McGrath  <mcgrathr@google.com>

	* ld.h (ld_config_type): New flag member separate_code.
	* emultempl/elf32.em
	(gld${EMULATION_NAME}_before_parse): Set it based on $SEPARATE_CODE.
	* ldlang.c (ldlang_override_segment_assignment): If it's set, then
	always return TRUE when SEC_CODE differs between the sections.

2012-11-05  Alan Modra  <amodra@gmail.com>

	* configure.in: Apply 2012-09-10 change to config.in here.

2012-09-10  Matthias Klose  <doko@ubuntu.com>

	* config.in: Disable sanity check for kfreebsd.

2012-09-10  Hans-Peter Nilsson  <hp@bitrange.com>

	* emultempl/mmo.em (mmo_place_orphan): Rewrite to also attach
	orphan sections to .data and .bss output sections, not just .text.
	When giving up on finding a suitable output section, attach to any
	output section other than .MMIX.reg_contents, if it exists.
	* scripttempl/mmo.sc: Move output debug sections to just before
	.MMIX.reg_contents.  Add .gnu.attributes.  Add new . = . NOP
	assignments and move end-of-section provide-symbols after them
	to force the end-of-section symbols to the address after orphan
	placement.  Add SORT_NONE to .init and .fini sections.

2012-09-10  Maciej W. Rozycki  <macro@codesourcery.com>

	* emulparams/elf32bmip.sh: Make _gp hidden.
	* emulparams/elf32bmipn32-defs.sh: Likewise.
	* emulparams/elf32mipswindiss.sh: Likewise.
	* scripttempl/mips.sc: Likewise.

2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>

	* ldexp.h (etree_union): Add defsym member to the assign member
	structure.
	(exp_assign): Add hidden argument to prototype.
	* ldexp.c (exp_fold_tree_1): Use the defsym member to handle
	--defsym symbols.
	(exp_assop): Add defsym argument, initialize the defsym member
	of the assign structure.
	(exp_assign): Handle hidden symbols.
	(exp_defsym): Update to use the defsym argument to exp_assop.
	(exp_provide): Update to handle the defsym argument to exp_assop.
	* ldlex.l (HIDDEN): New token.
	* ldgram.y (HIDDEN): Likewise.
	(assignment, section): Update calls to exp_assign.
	* ldctor.c (ldctor_build_sets): Likewise.
	* mri.c (mri_format): Likewise.
	* ldlang.c (lang_insert_orphan, lang_leave_overlay): Likewise.
	(open_input_bfds): Remove --defsym symbols special case.
	* emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Update
	call to exp_assign.
	* emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
	* emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
	* emultempl/spuelf.em (spu_place_special_section): Likewise.
	* emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets):
	Likewise.
	* ld.texinfo (Assigning Values to Symbols): Add HIDDEN.
	(HIDDEN): New subsection.

2012-08-13  Ian Bolton  <ian.bolton@arm.com>
            Laurent Desnogues  <laurent.desnogues@arm.com>
            Jim MacArthur  <jim.macarthur@arm.com>
            Marcus Shawcroft  <marcus.shawcroft@arm.com>
            Nigel Stephens  <nigel.stephens@arm.com>
            Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
            Richard Earnshaw  <rearnsha@arm.com>
            Sofiane Naci  <sofiane.naci@arm.com>
            Tejas Belagod  <tejas.belagod@arm.com>
            Yufeng Zhang  <yufeng.zhang@arm.com>

	* Makefile.am: Add AArch64.
	* Makefile.in: Regenerate.
	* configure.tgt: Add AArch64.
	* emulparams/aarch64elf.sh: New file.
	* emulparams/aarch64elfb.sh: New file.
	* emulparams/aarch64linux.sh: New file.
	* emulparams/aarch64linuxb.sh: New file.
	* emultempl/aarch64elf.em: New file.
	* NEWS: Mention the new feature.

2012-08-14  Nick Clifton  <nickc@redhat.com>

	* configure.in (ALL_LINGUGAS): Add uk.
	* configure: Regenerate.
	* po/uk.po: New Ukranian translation.

2012-08-09  Nick Clifton  <nickc@redhat.com>

	* po/vi.po: Updated Vietnamese translation.

2012-08-07  Nick Clifton  <nickc@redhat.com>

	* po/ja.po: Updated Japanese translation.

2012-08-02  H.J. Lu  <hongjiu.lu@intel.com>

	Backport from mainline
	2012-07-31  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14156
	* ldlang.c (wild_sort): Properly handle by_none.

	* scripttempl/elf.sc: Add SORT_NONE to .init and .fini sections.
	* scripttempl/elf32msp430.sc: Likewise.
	* scripttempl/elf32msp430_3.sc: Likewise.
	* scripttempl/elfd10v.sc: Likewise.
	* scripttempl/elfd30v.sc: Likewise.
	* scripttempl/elfxtensa.sc: Likewise.

2012-07-30  Nick Clifton  <nickc@redhat.com>

	* po/ld.pot: Updated template.
	* po/bg.po: Updated Bulgarian translation.
	* po/es.po: Updated Spanish translation.
	* po/fi.po: Updated Finnish translation.

2012-07-27  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add marker for 2.23.

2012-07-24  Jan Waclawek <konfera@efton.sk>

	PR ld/14058
	* emultempl/avrelf.em (avr_elf_after_allocation): Call
	elf32_avr_size_stubs with is_prealloc_run as TRUE.

2012-07-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* emulparams/elf_s390.sh (IREL_IN_PLT): Define.
	* emulparams/elf64_s390.sh (IREL_IN_PLT): Define.

2012-07-13  Nick Clifton  <nickc@redhat.com>

	PR ld/14357
	* ldmain.c (trace_file_tries): Rename to 'verbose'.
	* ldfile.c: Likewise.
	* ldlang.c: Likewise.
	* ldmain.h: Likewise.
	* lexsup.c: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultemp/spuelf.em: Likewise.
	* pe-dll.c (pe_dll_generate_implib): Only print creation message
	in verbose mode.

2012-07-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14156
	* NEWS: Mention SORT_NONE.

	* ld.h (sort_type): Add by_none.

	* ld.texinfo: Document SORT_NONE.

	* ldgram.y: Handle SORT_NONE.

	* ldlang.c (update_wild_statements): Handle by_none.  Don't
	sort .init/.fini sections.

	* ldlex.l: Add SORT_NONE.

2012-07-02  H.J. Lu  <hongjiu.lu@intel.com>

	* ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.

2012-06-29  Nick Clifton  <nickc@redhat.com>

	* scripttempl/alphavms.sc: Add .debug_macro section.
	* scripttempl/elf.sc: Likewise.
	* scripttempl/elf64hppa.sc: Likewise.
	* scripttempl/elf_chaos.sc: Likewise.
	* scripttempl/elfxtensa.sc: Likewise.
	* scripttempl/ia64vms.sc: Likewise.

	* scripttempl/armbpabi.sc: Add .debug_pubtypes, .debug_ranges and
	.debug_macro sections.
	* scripttempl/avr.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/elfd30v.sc: Likewise.
	* scripttempl/elfi370.sc: Likewise.
	* scripttempl/elfm68hc11.sc: Likewise.
	* scripttempl/elfm68hc12.sc: Likewise.
	* scripttempl/elfxgate.sc: Likewise.
	* scripttempl/i386beos.sc: Likewise.
	* scripttempl/i386go32.sc: Likewise.
	* scripttempl/ip2k.sc: Likewise.
	* scripttempl/iq2000.sc: Likewise.
	* scripttempl/mep.sc: Likewise.
	* scripttempl/mmo.sc: Likewise.
	* scripttempl/v850.sc: Likewise.
	* scripttempl/xstormy16.sc: Likewise.

2012-06-28  H.J. Lu  <hongjiu.lu@intel.com>

	* ldlang.c (update_wild_statements): Remove redundant statement.

2012-06-25  Alan Modra  <amodra@gmail.com>

	* ldlang.c (load_symbols): Close file and set flags.loaded
	after parsing script file.
	(open_input_bfds): Don't segv on closed script.

2012-06-24  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.tgt: Enable elf_k1om for x86_64-*-linux-gnux32.
	Remove x32 in tdir_i386linux and tdir_elf_i386.

2012-06-22  Roland McGrath  <mcgrathr@google.com>

	* NEWS: Mention __ehdr_start.

2012-06-21  Alan Modra  <amodra@gmail.com>

	* ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol
	absolute, and remove unnecessary alignment.

2012-06-16  Alan Modra  <amodra@gmail.com>

	* ldlang.h (lang_output_section_statement_type): Add after_end field.
	(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
	(section_for_dot): Declare.
	* ldlang.c (lang_size_sections_1): Correct comment.
	(current_section): Move earlier.
	(current_assign, prefer_next_section): New static vars.
	(lang_do_assignments_1): Add found_end param.  Detect _end
	assignment to set found_end.  Set os->after_end.  Set above statics.
	(lang_do_assignments): Adjust lang_do_assignments_1 call.  Init
	vars.
	(section_for_dot): New function.
	(lang_set_startof): Don't make an absolute symbol.
	(lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
	* ldexp.c (new_rel_from_abs): Use section_for_dot.
	* emultempl/lnk960.em (symbol_at_beginning_of): New function.
	(symbol_at_end_of): Likewise.
	(lnk960_after_allocation): Use them.
	* scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
	likewise before __bss_start.

2012-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* plugin.c (set_tv_header): Handle link_info.pie.

2012-06-11  Alan Modra  <amodra@gmail.com>

	PR ld/14215
	* ldexp.c (fold_name <SIZEOF, ALIGNOF>): Allow forward section
	references.
	* emulparams/elf32_x86_64.sh (SEPARATE_GOTPLT): Depend on size of
	.got.plt.
	* emulparams/elf32mb_linux.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf32tilegx.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf32tilepro.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf64tilegx.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf_i386.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf_k1om.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf_l1om.sh (SEPARATE_GOTPLT): Likewise.
	* emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Likewise.

2012-06-07  Georg-Johann Lay  <avr@gjlay.de>

	PR 13697
	* scripttempl/avr.sc (.data): Keep it.

2012-06-02  Andreas Schwab  <schwab@linux-m68k.org>

	* Makefile.am (TEXINFO_TEX): Remove $(top_srcdir) prefix.
	* Makefile.in: Regenerate.

2012-05-30  Alan Modra  <amodra@gmail.com>

	* ldlang.h (lang_output_section_statement_type): Rename
	"section_relative_symbol" field to "update_dot".
	* ldlang.c: Update all uses.
	(strip_excluded_output_sections): Don't test update_dot_tree here..
	(lang_leave_overlay): ..set update_dot here.

2012-05-26  Alan Modra  <amodra@gmail.com>

	* ldlex.h (enum option_values): Move from..
	* lexsup.c: ..here.
	* emultempl/ppc32elf.em: Include ldlex.h.
	(PARSE_AND_LIST_ARGS_CASES): Disable optimisations when
	--traditional-format.
	* emultempl/ppc64elf.em: Likewise.

2012-05-25  Alan Modra  <amodra@gmail.com>

	PR ld/13909
	* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Handle
	multiple .eh_frame sections attached to bfd.

2012-05-23  Cary Coutant  <ccoutant@google.com>

	* scripttempl/armbpabi.sc: Match .data.rel.ro.* sections more
	carefully.  Fix typo where .rela.data.rel.ro matches
	.rel.data.rel.ro.
	* scripttempl/mep.sc: Likewise.
	* scripttempl/elf.sc: Match .data.rel.ro.* sections more carefully.
	* scripttempl/elf64hppa.sc: Likewise.
	* scripttempl/elfxtensa.sc: Likewise.

2012-05-17  Daniel Richard G.  <skunk@iskunk.org>
	    Nick Clifton  <nickc@redhat.com>

	PR 14072
	* configure.in: Add check that sysdep.h has been included before
	any system header files.
	* configure: Regenerate.
	* config.in: Regenerate.
	* sysdep.h: Generate an error if included before config.h.

2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>

	* emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
	as the first argument for `bfd_get_section_name'.

2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>

	PR ld/14069
	* emultempl/elf32.em: Include *-*-gnu* targets in ld.so.conf
	support.

2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>

	* NEWS: Mention the support for S12X processors.

2012-05-14  James Lemke  <jwlemke@codesourcery.com>

	* ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
	Pass it to callback.
	(walk_wild_section_general): Pass section_flag_list to callback.
	(lang_add_section): Add sflag_list parm.
	Move out logic to keep / omit a section & call bfd_lookup_section_flags.
	(output_section_callback_fast): Add sflag_list parm.
	Add new parm to lang_add_section calls.
	(output_section_callback): Likewise.
	(check_section_callback): Add sflag_list parm.
	(lang_place_orphans): Add new parm to lang_add_section calls.
	(gc_section_callback): Add sflag_list parm.
	(find_relro_section_callback): Likewise.
	* ldlang.h (callback_t): Add flag_info parm.
	(lang_add_section): Add sflag_list parm.
	* emultempl/armelf.em (elf32_arm_add_stub_section):
	Add lang_add_section parm.
	* emultempl/beos.em (gld*_place_orphan): Likewise.
	* emultempl/elf32.em (gld*_place_orphan): Likewise.
	* emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
	* emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
	* emultempl/mipself.em (mips_add_stub_section): Likewise.
	* emultempl/mmo.em (mmo_place_orphan): Likewise.
	* emultempl/pe.em (gld_*_place_orphan): Likewise.
	* emultempl/pep.em (gld_*_place_orphan): Likewise.
	* emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
	* emultempl/spuelf.em (spu_place_special_section): Likewise.
	* emultempl/vms.em (vms_place_orphan): Likewise.

2012-05-14  Catherine Moore  <clm@codesourcery.com>

	* NEWS:  Mention PowerPC VLE port.

2012-05-11  Daniel Richard G.  <skunk@iskunk.org>

	PR binutils/14028
	* configure.in: Invoke ACX_HEADER_STRING.
	* configure: Regenerate.
	* config.in: Regenerate.
	* sysdep.h: If STRINGS_WITH_STRING is defined then include both
	string.h and strings.h.

2012-05-08  Alan Modra  <amodra@gmail.com>

	* Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
	LC and LANG environment vars.
	* Makefile.in: Regenerate.

2012-05-07  Tristan Gingold  <gingold@adacore.com>

	* pe-dll.c (udef_table): Make it static.

2012-05-05  Alan Modra  <amodra@gmail.com>

	* pe-dll.c (process_def_file_and_drectve): Use bfd_und_section_ptr.
	(generate_reloc): Use bfd_abs_section_ptr.

2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.tgt: Support x86_64-*-linux-gnux32.

2012-05-03  Sean Keys  <skeys@ipdatasys.com>

	* Makefile.am (ALL_EMULATIONS): Added new emulation for XGATE
	and XGATE (elf).
	* Makefile.in: Rebuild.
	* configure.tgt: Recognize XGATE.
	* scripttempl/elfxgate.sc: New file, mostly cloned from m68hc12.
	* emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
	* NEWS: Mention new support.

2012-04-26  Hans-Peter Nilsson  <hp@axis.com>

	Make bfd asserts cause linker errors.
	* ldmain.c (default_bfd_assert_handler): New variable.
	(ld_bfd_assert_handler): New function.
	(main): Call bfd_set_assert_handler.

2012-04-24  Alan Modra  <amodra@gmail.com>

	* ldlang.c (size_input_section): Use sec_info_type rather than
	usrdata->flags.just_syms.
	* ldwrite.c (build_link_order): Likewise.
	* emultempl/hppaelf.em (build_section_lists): Likewise.
	* emultempl/ppc64elf.em (build_toc_list): Likewise.
	* emultempl/armelf.em (build_section_lists): Likewise.
	(after_allocation): Update for renamed sec_info_type value.
	* emultempl/tic6xdsbt.em: Likewise.

2012-04-12  Roland McGrath  <mcgrathr@google.com>

	* configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
	* emulparams/armelf_nacl.sh: New file.
	* emulparams/armelfb_nacl.sh: New file.
	* Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
	and earmelfb_nacl.c here.
	(earmelf_nacl.c, earmelfb_nacl.c): New targets.
	* Makefile.in: Regenerated.

2012-04-11  Tristan Gingold  <gingold@adacore.com>

	* scripttempl/ia64vms.sc: New file.
	* emultempl/vms.em (_before_parse): Support for ia64.
	(elf64-ia64-vms): New fragment for ia64.
	* emulparams/elf64_ia64_vms.sh: New file.
	* configure.tgt (ia64-*-*vms*): Add.
	* Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
	(eelf64_ia64_vms.c): New rule.
	* Makefile.in: Regenerate.

2012-04-06  Roland McGrath  <mcgrathr@google.com>

	* configure.in (AC_CHECK_HEADERS): Add locale.h.
	* config.in: Regenerate.
	* configure: Regenerate.

2012-04-05  Nick Clifton  <nickc@redhat.com>

	* configure.in (AC_CHECK_FUNCS): Add setlocale.
	(AM_LC_MESSAGES): Add.
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
	* emulparams/elf_nacl.sh: New file.
	* emulparams/elf_i386_nacl.sh: New file.
	* emulparams/elf32_x86_64_nacl.sh: New file.
	* emulparams/elf_x86_64_nacl.sh: New file.
	* Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
	(ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
	eelf_x86_64_nacl.c here.
	(eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
	New targets.
	* Makefile.in: Regenerated.

	* scripttempl/elf.sc: Handle SEPARATE_CODE cases.

2012-04-02  Mike Frysinger  <vapier@gentoo.org>

	* ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
	putc call.  If str and fmt are different, call fwrite on
	the difference.

2012-03-30  Nick Clifton  <nickc@redhat.com>

	* po/vi.po: Updated Vietnamese translation.

2012-03-27  Roland McGrath  <mcgrathr@google.com>

	* configure.in: Set want64 on a 64-bit host regardless of
	--enable-targets=all.
	* configure: Regenerated.

2012-03-26  Tristan Gingold  <gingold@adacore.com>

	* lexsup.c (parse_args): Add a missing '\n'.

2012-03-25  Alan Modra  <amodra@gmail.com>

	* ldemul.c (before_allocation_default): Revert last change.
	* ldlang.c (lang_add_section): Likewise.
	(strip_excluded_output_sections): Don't strip output sections with
	user input sections when emitrelocations, unless all are SEC_EXCLUDE.

2012-03-23  Alan Modra  <amodra@gmail.com>

	* ldemul.c (before_allocation_default): When emitrelocations,
	don't strip sections..
	* ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.

2012-03-14  Kai Tietz  <ktietz@redhat.com>
	    Pascal Obry  <pascal@obry.net>

	* pe-dll.c (found_sym): New static variable.
	(undef_count): Likewise.
	(key_value): New structure.
	(undef_sort_cmp): Compare routine for qsort/bsearch.
	(pe_find_cdecl_alias_match): Add new argument.
	(pe_undef_alias_cdecl_match): Removed.
	(pe_undef_count): New helper routine.
	(pe_create_undef_table): Likewise.
	(pe_process_import_defs): Use pe_create_undef_table and
	new pe_undef_alias_cdecl_match function.

2012-03-14  Alan Modra  <amodra@gmail.com>

	PR ld/13839
	* ldexp.c (fold_name): Ignore undefined symbols when assigning to
	dot in mark phase.
	(exp_fold_tree_1): Evaluate assignment to dot expressions even when
	discarding result, for side effects.  Fix typo in error message.

2012-03-08  Tristan Gingold  <gingold@adacore.com>

	* ldexp.c (exp_print_tree): Special case for SEGMENT_START.
	(exp_print_token): Constify.

2012-03-08  Alan Modra  <amodra@gmail.com>

	PR ld/10340
	* ldfile.c (is_sysrooted_pathname): Remove notsame param.
	(ldfile_add_library_path): Don't set sysrooted flag.
	(ldfile_open_file_search): Likewise, and don't copy them.
	(try_open): Delete exten and code handling such.  Add sysrooted
	param and return whether path is in sysroot.
	(ldfile_find_command_file): Delete extend param.  Add sysrooted
	param.  Rename local var.  Update try_open calls.
	(ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
	* ldfile.h (search_dirs_type): Remove sysrooted field.
	* ldlang.c (new_afile): Always set sysrooted from input_flags.
	(load_symbols): Don't set input_flags.sysrooted.
	* ldlang.h (struct lang_input_statement_flags): Revise sysrooted
	comment.
	* ldlex.h (lex_push_file): Update prototype.
	* ldlex.l (sysrooted_stack): New array.
	(EOF): Pop input_flags.sysrooted.
	(lex_push_file): Add sysrooted param.  Save and set
	input_flags.sysrooted.

2012-03-06  Alan Modra  <amodra@gmail.com>

	* ldlang.h (struct lang_input_statement_flags): New, extract from..
	(lang_input_statement_type): ..here.  New field "flags".
	(input_flags): Declare.
	(missing_file): Delete.
	* ldmain.h (whole_archive): Delete.
	(add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
	* ld.h (ld_config_type <dynamic_link>): Delete.
	* ldmain.c (whole_archive): Delete.
	(add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
	* ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
	(input_flags): New variable.  Replace all uses of config.dynamic_link,
	missing_file, ldlang_sysrooted_script, whole_archive,
	add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
	from here.
	* ldfile.c: Likewise.
	* ldgram.y: Likewise.
	* ldmain.c: Likewise.
	* ldwrite.c: Likewise.
	* lexsup.c: Likewise.
	* plugin.c: Likewise.
	* emultempl/aix.em: Likewise.
	* emultempl/armelf.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/hppaelf.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.
	* emultempl/ppc64elf.em: Likewise.
	* emultempl/scoreelf.em: Likewise.
	* emultempl/spuelf.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/vms.em: Likewise.
	* ldlang.c (new_afile): Use memset to init zero fields.
	(load_symbols): Simplify save and restore of flags around command
	file processing.
	* ldfile.c (is_sysrooted_pathname): Tidy.

2012-03-05  Hans-Peter Nilsson  <hp@axis.com>

	* configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
	(mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
	replacing trailing "-*" with "*".

2012-02-25  Walter Lee  <walt@tilera.com>

	* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
	(ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
	(eelf32tilegx_be.c): Add rule to build this file.
	(eelf64tilegx_be.c): Ditto.
	* Makefile.in: Regenerate.
	* configure.tgt (tilegx-*-*): Support big endian.
	(tilegxbe-*-*): New.
	* emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
	(BIG_OUTPUT_FORMAT): Define.
	(LITTLE_OUTPUT_FORMAT): Define.
	* emulparams/elf32tilegx_be.sh: New.
	* emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
	(BIG_OUTPUT_FORMAT): Define.
	(LITTLE_OUTPUT_FORMAT): Define.
	* emulparams/elf64tilegx_be.sh: New.

2012-02-24  Kai Tietz  <ktietz@redhat.com>

	PR binutils/13710
	* deffilep.y (keyword_as_name): Disable LIBRARY
	keyword.

2012-02-22  Alan Modra  <amodra@gmail.com>

	PR ld/13683
	* ldlang.c (lang_process): Rerun lang_do_assignments before
	starting garbage collection.
	* ldexp.c (fold_name): Generate a reloc for defined symbols
	found without an associated output section during the mark phase.
	(exp_fold_tree_1): Continue processing an expression, even if we
	are unable to fold it, if we are in the first two evaluation
	phases.
	* ldexp.h (enum lang_phase_type): Add descriptions of the phases.

2012-02-19  Kai Tietz  <ktietz@redhat.com>

	* deffilep.y (cmp_import_elem): Sort first by module name.
	* pe-dll.c (process_def_file_and_drectve): Free strings
	from removed export-element.
	(add_bfd_to_link): Optimize loop on import-elements and lower
	allocated memory.
	(pe_implied_import_dll): Pass NULL instead of 0 for pointer
	argument.

2012-02-18  Hans-Peter Nilsson  <hp@axis.com>

	* ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
	temporary variable node used for NULL argument.

2012-02-18  Alan Modra  <amodra@gmail.com>

	PR ld/13343
	* ld.h (parsing_defsym): Delete.
	* ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
	(fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
	exp_get_abs_int): Add tree arg for %S in error messages.  Don't
	fudge lineno.
	(exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
	type.filename from sub-tree.
	(exp_trinop): Likewise, and use "cond" rather than "lhs".
	* ldexp.h (node_type): Add filename field to struct.
	* ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
	* ldfile.h (ldfile_input_filename): Delete.
	* ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
	%S in error messages.
	* ldemul.c (syslib_default, hll_default): Likewise.
	* ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
	lang_get_regions, lang_new_phdr): Likewise.
	(lang_size_sections_1): Pass addr_tree for %S.
	* ldlex.h (lex_redirect): Update prototype.
	(ldlex_filename): Declare.
	* ldlex.l (<EOF>): Don't set ldfile_input_filename.
	(lex_redirect): Add fake_filename and count params.  Push
	fake_filename to file_name_stack and init lineno from count.
	(ldlex_filename): New function.
	(lex_warn_invalid): Use above.
	* ldmain.c (main): Update lex_redirect call.
	* ldmisc.c (vfinfo <%S>): Take file name and line number from
	etree_type arg, or use current if arg is NULL.
	* lexsup.c (parsing_defsym): Delete.
	(parse_args <OPTION_DEFSYM>): Update lex_redirect call.

2012-02-13  Kai Tietz  <ktietz@redhat.com>

	* deffilep.y (find_export_in_list): Set is_indent for
	first or last element, if identical.
	(find_import_in_list): Likewise.

2012-02-11  Kai Tietz  <ktietz@redhat.com>

	* deffilep.y (%union): New type id_const.
	(opt_name2): New rule.
	(keyword_as_name): New rule.
	(dot_name): Replaced by opt_name2 rule.
	(opt_name): Adjust rule.
	(opt_equal_name): Likewise.

2012-02-11  Pascal Obry  <pascal@obry.net>

	* pe-dll.c (auto_export): Use bsearch to speed up scan of exports
	table.
	(process_def_file_and_drectve): Maintain sorting of exports table
	after stripping leading @ signs.

2012-02-09  Alan Modra  <amodra@gmail.com>

	* ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.

2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/13616
	* emulparams/elf32_x86_64.sh: Remove NOP.
	* emulparams/elf_i386.sh: Likewise.
	* emulparams/elf_i386_be.sh: Likewise.
	* emulparams/elf_i386_ldso.sh: Likewise.
	* emulparams/elf_i386_vxworks.sh: Likewise.
	* emulparams/elf_k1om.sh: Likewise.
	* emulparams/elf_l1om.sh: Likewise.
	* emulparams/elf_x86_64.sh: Likewise.

	* ldlang.c (zero_fill): Initialized to 0.

	* ldwrite.c (build_link_order): Set data size to linker odrder
	size when they are the same.

	* scripttempl/elf.sc: Don't specify fill if NOP is undefined.

2012-01-17  Alan Modra  <amodra@gmail.com>

	* ldver.c (ldversion): Update copyright message year.

2012-01-15  Alan Modra  <amodra@gmail.com>

	PR ld/12758
	* ldlang.c (lang_process): Don't reopen all files, just those
	newly added by plugin.

2012-01-11  Alan Modra  <amodra@gmail.com>

	* emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
	PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
	PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
	--{no-,}plt-align.
	(plt_thread_safe, plt_stub_align): New vars.
	(gld${EMULATION_NAME}_after_allocation): Pass them to
	ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
	* ld.texinfo: Document new command line options, and an old
	undocumented option.

2012-01-09  Roland McGrath  <mcgrathr@google.com>

	* configure.in: Use AM_ZLIB.
	* configure: Regenerated.

For older changes see ChangeLog-2011

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
