X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ld%2FChangeLog;h=d823aa496f3ce99cbd5544fe632e4f2778e38de7;hb=76f0cad6f4e0fdfc4cfeee135b44b6a090919c60;hp=2c9358842a2807dab62bb2de22c7e2e6424332f0;hpb=f69a2f978fdcffafa9fe4c4a5b3b2b1af61698ba;p=platform%2Fupstream%2Fbinutils.git diff --git a/ld/ChangeLog b/ld/ChangeLog index 2c93588..d823aa4 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,668 +1,367 @@ -2013-08-22 Christian Franke +2014-03-31 Nick Clifton - * emultempl/pe.em: Add --disable-large-address-aware option. - * ld.texinfo (--disable-large-address-aware): Add documentation. + 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-08-14 Clemens Lang +2014-03-27 H.J. Lu - * ldexp.c: Add LOG2CEIL() builtin function to linker script language - * ldgram.y: Likewise - * ldlex.l: Likewise - * NEWS: Mention the new feature. - * ld.texinfo: Document the new feature. + PR ld/16756 + * ldmain.c (symbol_warning): New function. + (warning_callback): Use it. Scan all input files for a reference + to SYMBOL. -2013-07-19 Sebastian Huber +2014-03-21 Christopher Faylor - * ldgram.y: Add ALIGN_WITH_INPUT output section attribute. - * ldlang.c: Likewise. - * ldlang.h: Likewise. - * ldlex.l: Likewise. - * mri.c: Likewise. - * ld.texinfo: Document new feature. - * NEWS: Mention new feature. + * 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-07-18 Roland McGrath +2014-03-19 Nick Clifton - * emultempl/armelf.em (elf32_arm_add_stub_section): Take third - argument ALIGNMENT_POWER, use it instead of constant 3. - -2013-07-08 Jeff Law - - * scripttempl/elf.sc: Handle function names and other text after - .text.unlikely too. - -2013-07-08 Tristan Gingold - - * scripttempl/ia64vms.sc: Add support of per data and per function - sections. - -2013-07-01 Alan Modra - - * emultempl/ppc64elf.em: (ppc_layout_sections_again): Call - ppc64_elf_set_toc rather than ppc64_elf_toc/_bfd_set_gp_value. - (gld${EMULATION_NAME}_after_allocation): Likewise. - -2013-06-26 Yufeng Zhang - - * emulparams/aarch64elf32.sh: New file. - -2013-06-26 Yufeng Zhang - - * Makefile.am (ALL_64_EMULATION_SOURCES): Add eaarch64elf32b.c. - (eaarch64elf32b.c): New dependency and rule. - * Makefile.in: Re-generated. - * configure.tgt (aarch64-*-elf): Add aarch64elf32b. - (aarch64_be-*-elf, aarch64_be-*-linux*, aarch64-*-linux*): Likewise. - * emulparams/aarch64elf32b.sh: New file. - -2013-06-26 Yufeng Zhang - - * Makefile.am (ALL_64_EMULATION_SOURCES): Add eaarch64elf32.c. - (eaarch64elf32.c): New dependency and rule. - * Makefile.in: Re-generated. - * configure.tgt (aarch64-*-elf): Add aarch64elf32. - (aarch64_be-*-elf, aarch64_be-*-linux*, aarch64-*-linux*): Likewise. - * emulparams/aarch64elf32.sh: New file. - -2013-06-25 Maciej W. Rozycki - - * emultempl/mipself.em (insn32): New variable. - (mips_create_output_section_statements): Handle insn32 mode. - (PARSE_AND_LIST_PROLOGUE): New macro. - (PARSE_AND_LIST_LONGOPTS): Likewise. - (PARSE_AND_LIST_OPTIONS): Likewise. - - * gen-doc.texi: Set MIPS. - * ld.texinfo: Likewise. - (Options specific to MIPS targets): New section. - (ld and MIPS family): New node. - (Top, Machine Dependent): List the new node. - -2013-06-24 Maciej W. Rozycki - - * emulparams/elf32btsmip.sh: Arrange for .got.plt to be placed - as close to .plt as possible. - * scripttempl/elf.sc: Handle $INITIAL_READWRITE_SECTIONS and - $PLT_NEXT_DATA variables. - -2013-06-23 Richard Sandiford - - * Makefile.am (ALL_EMULATION_SOURCES): Move MIPS ELF emulations to... - (ALL_64_EMULATION_SOURCES): ...here. + * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET. * Makefile.in: Regenerate. + * 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. -2013-06-22 Richard Sandiford - - * NEWS: Document the removal of MIPS ECOFF targets. - * ld.texinfo (--gpsize=@var{value}): Use MIPS ELF rather than - MIPS ECOFF as an example of a target that supports small data. - * ldmain.c (g_switch_value): Likewise. - * configure.tgt (mips*-*-pe, mips*-dec-ultrix*, mips*-dec-osf*) - (mips*-sgi-irix* [v4 and earlier], mips*el-*-ecoff*, mips*-*-ecoff*) - (mips*-*-bsd*, mips*-*-lnews*): Remove cases. - * Makefile.am (ALL_EMULATION_SOURCES): Remove emipsbig.c, emipsbsd.c, - emipsidt.c, emipsidtl.c, emipslit.c, emipslnews.c and emipspe.c. - (emipsbig.c, emipsbsd.c, emipsidt.c, emipsidtl.c, emipslit.c) - (emipslnews.c, emipspe.c): Delete rules. - * Makefile.in: Regenerate. - * emulparams/mipsbig.sh, emulparams/mipsbsd.sh, emulparams/mipsidt.sh, - emulparams/mipsidtl.sh, emulparams/mipslit.sh, emulparams/mipslnews.sh, - emulparams/mipspe.sh, emultempl/mipsecoff.em: Delete. - * emultempl/m68kcoff.em: Update comment to say that MIPS ECOFF support - has now been removed. - * emultempl/pe.em: Remove TARGET_IS_mipspe checks. - -2013-06-19 Will Newton - - * emulparams/aarch64elf.sh: Remove IREL_IN_PLT. - -2013-06-14 Yufeng Zhang - - * emulparams/aarch64elf.sh: Add IREL_IN_PLT. - -2013-06-12 Nick Clifton +2014-03-17 Christopher Faylor - * ldcref.c (output_one_cref): Place common definitions after - ordinary definitions but before references. - -2013-06-10 Dilyan Palauzov - - PR ld/15598 - * ld.texinfo (Source Code Reference): Fix typos. - -2013-06-07 Will Newton - - * emulparams/aarch64elf.sh: Add IREL_IN_PLT. - -2013-06-07 Nick Clifton - - * 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. - -2013-05-03 Alan Modra - - 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 - - * 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 - - * 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 - - * 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 - - * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): - Use is_elf_hash_table rather than a handcoded condition. - -2013-04-30 Nick Clifton - - * ld.texinfo (SORT_BY_ALIGNMENT): Fix and clarify typo - sections - are sorted by descending order of alignment. - -2013-04-29 Nick Clifton - - * scripttempl/DWARF.sc: Add support for .debug_line.* and - .debug_line_end. - -2013-04-29 Yaakov Selkowitz - - * emultempl/pe.em [cygwin]: Do not merge rdata with v2 - psuedo-relocs. - -2013-04-28 Thomas Schwinge - - * 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 - - * scripttempl/avr.sc: Add ALIGN directive after *(.progmem*). - -2013-04-26 Alan Modra - - * 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 - - * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32lppclinux.c. - (eelf32lppclinux.c): New rule. + * Makefile.am: Use host version of windres. * 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 - - * 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 - - * 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 - - PR ld/15389 - * scripttempl/avr.sc: Add .note.gnu.build-id section. - -2013-04-22 Alan Modra - * emultempl/ppc64elf.em (ppc_create_output_section_statements): - Check return from ppc64_elf_init_stub_bfd. +2014-03-14 Romain Geissler + Alan Modra -2013-04-15 Nick Clifton + * 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 - * Makefile.am (ELF_DEPS): Add a dependency upon - scripttempl/DWARF.sc. - (ELF_GEN_DEPS): Likewise. - (emmo.c): Likewise. * 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 - - * 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 - - PR ld/13812 - * scripttempl/avr.sc: Place trampolines before .progmem section. - -2013-03-25 Kai Tietz - - * ld.texinfo (--disable-runtime-pseudo-reloc): Adjust default. - -2013-03-21 Michael Schewe - - * ld.texinfo (H8/300): Add description of relaxation of - mov @(disp:32,ERx) to mov @(disp:16,ERx). - -2013-03-21 Kai Tietz - - * pe-dll.c (process_def_file_and_drectve): Don't handle VC - generated C++-symbols as stdcall/fastcall. - -2013-03-18 Alan Modra - - * ld.texinfo (--as-needed): Update. - -2013-03-14 Jakub Jelinek - - * emulparams/aarch64linux.sh (LIBPATH_SUFFIX): Set to 64 for - aarch64linux* emulations. - -2013-03-07 Alan Modra - - * ldfile.c (ldfile_open_command_file_1): Return after einfo - to avoid warning. - -2013-03-05 Corinna Vinschen - - * 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 - - 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 - - * scripttempl/elf32msp430.sc: Add placement of .data.* sections. - Add alignment of .bss section. - * scripttempl/elf32msp430_3.sc: Likewise. - -2013-02-26 Nick Clifton - - PR ld/15188 - * ld.texinfo: Fix typos. - -2013-02-21 Alan Modra +2014-03-05 Alan Modra - * 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. + Update copyright years. -2013-02-21 Alan Modra +2014-03-04 Nick Clifton - * emultempl/elf32.em (write_build_id, setup_build_id): Adjust - for elf_tdata changes. - -2013-02-21 Alan Modra - - * emultempl/elf-generic.em: Use newly defined elf_obj_tdata - accessor macros. - -2013-02-20 Alan Modra - - * Makefile.am: Use $(ELF_DEPS) on a number of eelf*.c rules. + * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest. * Makefile.in: Regenerate. -2013-02-19 Sandra Loosemore - - PR ld/15146 - * plugin.c (plugin_notice): Add null check before dereferencing - pointer. - -2013-02-19 Alan Modra - - * 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. +2014-02-27 Yuri Gribov -2013-02-16 H.J. Lu - - PR ld/15146 - * plugin.c (plugin_notice): Replace the undefined dummy bfd with - the real one. + * 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 + + * 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 + + * 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 +2014-02-26 Dan Mick - 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 +2014-02-19 Igor Zamyatin + H.J. Lu - * 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 +2014-02-19 Alan Modra - * 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 +2014-02-17 Alan Modra - 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 +2014-02-17 Alan Modra - * 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 - Andrew Jenner +2014-02-12 Alan Modra - 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 -2013-02-06 Senthil Kumar Selvaraj + * 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 -2013-02-06 Alan Modra + * 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 -2013-02-04 H.J. Lu + * 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 - * 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 -2013-01-25 Kai Tietz + * 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 -2013-01-24 Nick Clifton + * 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 -2013-01-23 Martin Koegler + * 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 -2013-01-23 Georg-Johann Lay + 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 -2013-01-23 Leif Ekblad + * 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 -2013-01-22 Roland McGrath + * 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 -2013-01-21 Mike Frysinger + * 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 -2013-01-19 H.J. Lu + * 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 - * 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 - * Makefile.in: Regenerated. - * configure: Likewise. + * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define. -2013-01-18 Mike Frysinger +2014-01-20 Alan Modra - * 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 ): 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 ): Update. + (fold_name ): Allow self-assignment for absolute symbols + defined in a linker script. -2013-01-14 Leif Ekblad +2014-01-20 Guy Martin Alan Modra - * 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 - - * 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/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/tic6xdsbt.em: Likewise. - -2013-01-10 Will Newton - - * 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 +2014-01-17 Alan Modra + + * 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 + + 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 + + * 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 - * 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 - - * scripttempl/elf.sc (RODATA_ADDR): Typo fix. - -2013-01-08 Alan Modra - - * 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 +2014-01-15 Alan Modra - * 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 +2014-01-10 Alan Modra - * 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 +2014-01-10 Hans-Peter Nilsson - * 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 +2014-01-08 H.J. Lu - * 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 +2014-01-08 H.J. Lu - * 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 -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