2012-12-18  Roland McGrath  <[email protected]>

       * 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-17  Nick Clifton  <[email protected]>

       * MAINTAINERS: Add copyright notice.
       * Makefile.am: Likewise.
       * NEWS: Likewise.
       * README: Likewise.
       * configure.host: Likewise.
       * configure.in: Likewise.
       * gen-doc.texi: Likewise.
       * h8-doc.texi: Likewise.
       * ldlex-wrapper.c: Likewise.
       * emulparams/README: Likewise.
       * emultempl/README: Likewise.
       * scripttempl/README: Likewise.
       * Makefile.in: Regenerate.

2012-12-17  Alan Modra  <[email protected]>

       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-11  Roland McGrath  <[email protected]>

       * 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-12-05  H.J. Lu  <[email protected]>

       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-05  Leif Ekblad  <[email protected]>

       * configure.tgt: Add x86_64-*-rdos.

2012-12-03  H.J. Lu  <[email protected]>

       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-30  Joern Rennecke <[email protected]>

       * scripttempl/epiphany_4x4.sc, emulparams/elf32epiphany_4x4.sh: Add.
       * emultempl/epiphanyelf_4x4.em: Likewise.
       * configure.tgt: Add elf32epiphany_4x4 support.
       * Makefile.am: Likewise.
       * Makefile.in: Regenerate.

2012-11-29  Maciej W. Rozycki  <[email protected]>

       * Makefile.in: Regenerate.

2012-11-27  Nick Clifton  <[email protected]>

       PR ld/14776
       * ld.texinfo: Fix spelling mistakes.

2012-11-26  Roland McGrath  <[email protected]>

       * 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  <[email protected]>

       * 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-20  H.J. Lu  <[email protected]>

       * ld.texinfo: Document "-z global".

       * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Support
       "-z global".
       (gld${EMULATION_NAME}_list_options): Likewise.

2012-11-15  Maxim Kuvyrkov  <[email protected]>

       Port lib32 arrangement from Debian.
       * emulparams/elf_i386.sh: Include lib32 directories in library search
       path.

2012-11-15  Simon Baldwin  <[email protected]>

       * ldmain.c (main): Add start_sbrk set to sbrk(0) on entry.
       On exit, compute data size as the delta between current
       sbrk(0) and start_sbrk.

2012-11-09  Nick Clifton  <[email protected]>

       * emultempl/rxelf.em (no_flag_mismatch_warnings): Initialise to
       true.
       (PARSE_AND_LIST_LONGOPTS): Add flag-mismatch-warnings.
       (PARSE_AND_LIST_ARG_CASES): Add support for
       --flag-mismatch-warnings.

       * Makefile.am: (ALL_EMULATION_SOURCES): Add ev850_rh850.c.
       * Makefile.in: Regenerate.
       * configure.tgt (v850*-*-*): Make v850_rh850 the default
       emulation. Add vanilla v850 as an extra emulation.
       * emulparams/v850_rh850.sh: New file.
       * scripttempl/v850_rh850.sc: New file.

2012-11-09  Edgar E. Iglesias <[email protected]>

       * Makefile.am: Add eelf32microblazeel.c and eelf32mbel_linux.c.
       * Makefile.in: Regenerated.
       * configure.tgt: Add microblazeel and set endian per target.
       * emulparams/elf32mb_linux.sh: Add OUTPUT_FORMAT.
       * emulparams/elf32microblaze.sh: Likewise.
       * emulparams/elf32mbel_linux.sh: New file.
       * emulparams/elf32microblazeel.sh: Likewise.

2012-11-09  H.J. Lu  <[email protected]>

       * testplug.c (record_add_file): Remove trailing redundant `;'.

2012-11-05  Alan Modra  <[email protected]>

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

2012-11-01  Nathan Sidwell  <[email protected]>

       * emultempl/elf32.em: Print stacksize help.

2012-11-01  Alan Modra  <[email protected]>

       * ldlang.c (insert_pad): Correct output section size calculation.
       (lang_size_sections_1): Likewise for lang_data_statement and
       lang_reloc_statement.

2012-10-29  Alan Modra  <[email protected]>

       * configure.tgt (powerpcle-pe,winnt,cygwin): Add deffilep.o
       and pe-dll.o.

2012-10-24  H.J. Lu  <[email protected]>

       * ld.h (command_line): Remove
       disable_target_specific_optimizations.
       (RELAXATION_DISABLED_BY_DEFAULT): Removed.
       (RELAXATION_DISABLED_BY_USER): Likewise.
       (RELAXATION_ENABLED): Likewise.
       (DISABLE_RELAXATION): Likewise.
       (ENABLE_RELAXATION): Likewise.

       * ldmain.c (main): Updated.

       * ldmain.h (RELAXATION_DISABLED_BY_DEFAULT): New macro.
       (RELAXATION_DISABLED_BY_USER): Likewise.
       (RELAXATION_ENABLED): Likewise.
       (DISABLE_RELAXATION): Likewise.
       (ENABLE_RELAXATION): Likewise.

2012-10-23  Nathan Sidwell  <[email protected]>

       * ld.texinfo (stack-size): New option.
       * emultempl/elf32.em: Add stack-size option.

2012-10-22  Jan Beich  <[email protected]>
           Alan Modra  <[email protected]>

       PR ld/14426
       * ldlex.h (option_values): Add OPTION_IGNORE_UNRESOLVED_SYMBOL.
       * lexsup.c (parse_args): Likewise.
       (ld_options): Describe --ignore-unresolved-symbol.
       * ldmain.h (add_ignoresym): Declare.
       * ldmain.c (add_ignoresym): New function, extracted from..
       (undefined_symbol): ..here.  Return if the symbol is in ignore_hash.
       (constructor_callback): Don't use global link_info here.
       (reloc_overflow): Likewise.

2012-10-22  Alan Modra  <[email protected]>

       * plugin.c (plugin_load_plugins): Warning fix.

2012-10-18  Kai Tietz  <[email protected]>

       PR binutils/14067
       * NEWS: Menition new feature.
       * scripttempl/pep.sc: Add zdebug sections.
       * scripttempl/pe.sc: L

2012-09-19  Steve Ellcey  <[email protected]>

       * configure.tgt: Add mips*-mti-elf* target.

2012-09-17  Alan Modra  <[email protected]>

       * ld.texinfo (Expression Section): Correct description of
       conversions for a binary operation involving an absolute symbol
       and a number.

2012-09-14  David Edelsohn  <[email protected]>

       * configure: Regenerate.

2012-09-13  Anthony Green  <[email protected]>

       * emulparams/elf32moxie.sh (BIG_OUTPUT_FORMAT,
       LITTLE_OUTPUT_FORMAT): Define.
       (OUTPUT_FORMAT): Change to elf32-bigmoxie.
       (EMBEDDED): Define.

2012-09-12  DJ Delorie  <[email protected]>

       * emulparams/elf32rx.sh (OTHER_READONLY_SECTIONS): Add W_* sections.

2012-09-10  Matthias Klose  <[email protected]>

       * config.in: Disable sanity check for kfreebsd.

2012-09-10  H.J. Lu  <[email protected]>

       * configure: Regenerated.

2012-09-10  Iain Sandoe  <[email protected]>
           Alan Modra  <[email protected]>

       * configure.tgt (powerpc-*-elf, et al): Define targ_extra_libpath.
       Correct whitespace.
       (powerpcle-*-elf, et al): Likewise.  Correct targ_extra_emuls.

2012-09-10  Iain Sandoe  <[email protected]>

       * configure.tgt (powerpc-*-elf, et al): Define targ64_extra_emuls
       and targ64_extra_libpath.
       (powerpcle-*-elf, et al): Likewise.

2012-09-09  Hans-Peter Nilsson  <[email protected]>

       * 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-08-30  H.J. Lu  <[email protected]>

       PR ld/14525
       * scripttempl/elf.sc: Also provide __executable_start for PIE.

2012-08-17  Kai Tietz  <[email protected]>

       PR ld/14326
       * scripttempl/pe.sc: Add _etext symbol.

2012-08-14  Nick Clifton  <[email protected]>

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

2012-08-13  Ian Bolton  <[email protected]>
           Laurent Desnogues  <[email protected]>
           Jim MacArthur  <[email protected]>
           Marcus Shawcroft  <[email protected]>
           Nigel Stephens  <[email protected]>
           Ramana Radhakrishnan  <[email protected]>
           Richard Earnshaw  <[email protected]>
           Sofiane Naci  <[email protected]>
           Tejas Belagod  <[email protected]>
           Yufeng Zhang  <[email protected]>

       * 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-09  Nick Clifton  <[email protected]>

       * po/vi.po: Updated Vietnamese translation.

2012-08-07  Daniel Green  <[email protected]>

       * scripttempl/pe.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
       * scripttempl/pep.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.

2012-08-07  Nick Clifton  <[email protected]>

       * po/ja.po: Updated Japanese translation.

2012-08-06  Maciej W. Rozycki  <[email protected]>

       * 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  <[email protected]>

       * 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-07-31  H.J. Lu  <[email protected]>

       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  <[email protected]>

       * 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  Mike Frysinger  <[email protected]>

       * configure.in (BFD_VERSION): Run bfd/configure --version and
       parse the output of that.
       * configure: Regenerate.

2012-07-27  Tristan Gingold  <[email protected]>

       * NEWS: Add marker for 2.23.

2012-07-24  Jan Waclawek <[email protected]>

       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  <[email protected]>

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

2012-07-13  Nick Clifton  <[email protected]>

       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  <[email protected]>

       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  <[email protected]>

       * ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.

2012-06-29  Nick Clifton  <[email protected]>

       * 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  <[email protected]>

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

2012-06-25  Alan Modra  <[email protected]>

       * 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  <[email protected]>

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

2012-06-22  Roland McGrath  <[email protected]>

       * NEWS: Mention __ehdr_start.

2012-06-21  Alan Modra  <[email protected]>

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

2012-06-16  Alan Modra  <[email protected]>

       * 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  <[email protected]>

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

2012-06-11  Alan Modra  <[email protected]>

       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  <[email protected]>

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

2012-06-02  Andreas Schwab  <[email protected]>

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

2012-05-30  Alan Modra  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

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

2012-05-23  Cary Coutant  <[email protected]>

       * 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.  <[email protected]>
           Nick Clifton  <[email protected]>

       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  <[email protected]>

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

2012-05-16  Samuel Thibault  <[email protected]>

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

2012-05-15  James Murray <[email protected]>

       * NEWS: Mention the support for S12X processors.

2012-05-14  James Lemke  <[email protected]>

       * 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  <[email protected]>

       * NEWS:  Mention PowerPC VLE port.

2012-05-11  Daniel Richard G.  <[email protected]>

       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  <[email protected]>

       * 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  <[email protected]>

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

2012-05-05  Alan Modra  <[email protected]>

       * 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  <[email protected]>

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

2012-05-03  Sean Keys  <[email protected]>

       * 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  <[email protected]>

       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  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

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

2012-04-05  Nick Clifton  <[email protected]>

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

2012-04-03  Roland McGrath  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

       * po/vi.po: Updated Vietnamese translation.

2012-03-27  Roland McGrath  <[email protected]>

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

2012-03-26  Tristan Gingold  <[email protected]>

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

2012-03-25  Alan Modra  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>
           Pascal Obry  <[email protected]>

       * 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  <[email protected]>

       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  <[email protected]>

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

2012-03-08  Alan Modra  <[email protected]>

       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  <[email protected]>

       * 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  <[email protected]>

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

2012-02-25  Walter Lee  <[email protected]>

       * 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  <[email protected]>

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

2012-02-22  Alan Modra  <[email protected]>

       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  <[email protected]>

       * 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  <[email protected]>

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

2012-02-18  Alan Modra  <[email protected]>

       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  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

       * 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  <[email protected]>

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

2012-01-31  H.J. Lu  <[email protected]>

       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  <[email protected]>

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

2012-01-15  Alan Modra  <[email protected]>

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

2012-01-11  Alan Modra  <[email protected]>

       * 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  <[email protected]>

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

For older changes see ChangeLog-2011

Copyright (C) 2012 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: