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.

2013-02-20  Alan Modra  <amodra@gmail.com>

	* Makefile.am: Use $(ELF_DEPS) on a number of eelf*.c rules.
	* Makefile.in: Regenerate.

2013-02-19  Sandra Loosemore  <sandra@codesourcery.com>

	PR ld/15146
	* plugin.c (plugin_notice): Add null check before dereferencing
	pointer.

2013-02-19  Alan Modra  <amodra@gmail.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>

	PR ld/15146
	* plugin.c (plugin_notice): Replace the undefined dummy bfd with
	the real one.

2013-02-16  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/15141
	* plugin.c (plugin_notice): Also trace symbol from the IR bfd.

2013-02-15  Kai Tietz  <ktietz@redhat.com>

	* scripttempl/pep.sc (.xdata): Merge .xdata* into .xdata section.
	(.pdata): Merge .pdata* into .pdata section.

2013-02-11  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.

2013-02-11  Alan Modra  <amodra@gmail.com>

	PR ld/15130
	* ld.texinfo (-rpath-link): Typo fix.

2013-02-08  Markos Chandras  <markos.chandras@imgtec.com>

	* emultempl/metagelf.em (build_section_lists): Use sec_info_type
	rather than userdata->flags.just_syms.

2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
	    Andrew Jenner <andrew@codesourcery.com>

	Based on patches from Altera Corporation.

	* 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.

2013-02-06  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

	* emultempl/avrelf.em (avr_elf_before_parse): New function.
	(LDEMUL_BEFORE_PARSE): Define.

2013-02-06  Alan Modra  <amodra@gmail.com>

	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.

2013-02-04  H.J. Lu  <hongjiu.lu@intel.com>

	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.

	* 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.

	* 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.

2013-01-25  Kai Tietz  <ktietz@redhat.com>

	* 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.

2013-01-24  Nick Clifton  <nickc@redhat.com>

	* NEWS: Mention support for V850E3V5 architecture.

2013-01-23  Martin Koegler  <martin.koegler@chello.at>

	PR ld/15041
	* scripttempl/pep.sc (.pdata): Only accept .pdata sections.
	(.xdata): Similarly.
	(.debug_frame): Similarly.

2013-01-23  Georg-Johann Lay  <avr@gjlay.de>

	PR ld/15037
	* scripttempl/avr.sc (.eeprom): Keep it.

2013-01-23  Leif Ekblad  <leif@rdos.net>

	* 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.

2013-01-22  Roland McGrath  <mcgrathr@google.com>

	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
	new_dtags to TRUE for *-*-nacl* targets.

2013-01-21  Mike Frysinger  <vapier@gentoo.org>

	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Set
	link_info.new_dtags to TRUE for linux/gnu targets.
	* NEWS: Mention new dtags default.

2013-01-19  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (HOSTING_SCRT0): New.

	* configure.host (HOSTING_SCRT0): New.  Used for PIE.

	* configure.in (HOSTING_SCRT0): New AC_SUBST.

	* Makefile.in: Regenerated.
	* configure: Likewise.

2013-01-18  Mike Frysinger  <vapier@gentoo.org>

	* NEWS: Mention change in behavior with --enable-new-dtags.
	* ld.texinfo (Options): Clarify --enable-new-dtags behavior.

2013-01-14  Leif Ekblad <leif@rdos.net>
	    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.
	* emultempl/aix.em: Likewise.
	* emultempl/avrelf.em: Likewise.
	* emultempl/cr16elf.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.
	* emultempl/spuelf.em: Likewise.
	* emultempl/tic6xdsbt.em: Likewise.

2013-01-10  Will Newton <will.newton@imgtec.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.

2013-01-08  Alan Modra  <amodra@gmail.com>

	* Makefile.am (ALL_EMULATION_SOURCES): Correct eavrxmega entries.
	* Makefile.in: Regenerate.

2013-01-07  H.J. Lu  <hongjiu.lu@intel.com>

	* lexsup.c (ld_options): Add fuse-ld= for GCC linker option
	compatibility.

2013-01-07  Patrice Dumas  <pertusus@free.fr>

	* ld.texinfo: Replace @ with @@ when it is part of the text.
	Correct ordering of M68HC11 entry.

2013-01-04  Juergen Urban <JuergenUrban@gmx.de>

	* 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.

2013-01-02  H.J. Lu  <hongjiu.lu@intel.com>

	* ldver.c (ldversion): Update copyright year to 2013.

For older changes see ChangeLog-2012

Copyright (C) 2013 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
