blob: 4a9f308d529de561d31204d838c3d34797a5d4a4 [file] [log] [blame]
2012-12-18 Roland McGrath <>
* 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/ (RODATA_ADDR, SHLIB_RODATA_ADDR): Wrap
SEGMENT_START("rodata-segment", ...) + SIZEOF_HEADERS around the value.
2012-12-17 Nick Clifton <>
* MAINTAINERS: Add copyright notice.
* Likewise.
* NEWS: Likewise.
* README: Likewise.
* Likewise.
* Likewise.
* gen-doc.texi: Likewise.
* h8-doc.texi: Likewise.
* ldlex-wrapper.c: Likewise.
* emulparams/README: Likewise.
* emultempl/README: Likewise.
* scripttempl/README: Likewise.
* Regenerate.
2012-12-17 Alan Modra <>
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 <>
* emulparams/ (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.
* (earmelf_nacl.c, earmelfb_nacl.c): Add missing
dependency on $(srcdir)/emulparams/
* Regenerate.
2012-12-05 H.J. Lu <>
PR ld/14915
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Also
check DT_NEEDED entries when creating shared object with
2012-12-05 Leif Ekblad <>
* configure.tgt: Add x86_64-*-rdos.
2012-12-03 H.J. Lu <>
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
(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
(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 <>
* scripttempl/, emulparams/ Add.
* emultempl/epiphanyelf_4x4.em: Likewise.
* configure.tgt: Add elf32epiphany_4x4 support.
* Likewise.
* Regenerate.
2012-11-29 Maciej W. Rozycki <>
* Regenerate.
2012-11-27 Nick Clifton <>
PR ld/14776
* ld.texinfo: Fix spelling mistakes.
2012-11-26 Roland McGrath <>
* 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 <>
* 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 <>
* 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 <>
Port lib32 arrangement from Debian.
* emulparams/ Include lib32 directories in library search
2012-11-15 Simon Baldwin <>
* 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 <>
* emultempl/rxelf.em (no_flag_mismatch_warnings): Initialise to
(PARSE_AND_LIST_LONGOPTS): Add flag-mismatch-warnings.
(PARSE_AND_LIST_ARG_CASES): Add support for
* (ALL_EMULATION_SOURCES): Add ev850_rh850.c.
* Regenerate.
* configure.tgt (v850*-*-*): Make v850_rh850 the default
emulation. Add vanilla v850 as an extra emulation.
* emulparams/ New file.
* scripttempl/ New file.
2012-11-09 Edgar E. Iglesias <>
* Add eelf32microblazeel.c and eelf32mbel_linux.c.
* Regenerated.
* configure.tgt: Add microblazeel and set endian per target.
* emulparams/ Add OUTPUT_FORMAT.
* emulparams/ Likewise.
* emulparams/ New file.
* emulparams/ Likewise.
2012-11-09 H.J. Lu <>
* testplug.c (record_add_file): Remove trailing redundant `;'.
2012-11-05 Alan Modra <>
* Apply 2012-09-10 change to here.
2012-11-01 Nathan Sidwell <>
* emultempl/elf32.em: Print stacksize help.
2012-11-01 Alan Modra <>
* ldlang.c (insert_pad): Correct output section size calculation.
(lang_size_sections_1): Likewise for lang_data_statement and
2012-10-29 Alan Modra <>
* configure.tgt (powerpcle-pe,winnt,cygwin): Add deffilep.o
and pe-dll.o.
2012-10-24 H.J. Lu <>
* ld.h (command_line): Remove
* ldmain.c (main): Updated.
2012-10-23 Nathan Sidwell <>
* ld.texinfo (stack-size): New option.
* emultempl/elf32.em: Add stack-size option.
2012-10-22 Jan Beich <>
Alan Modra <>
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): 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 <>
* plugin.c (plugin_load_plugins): Warning fix.
2012-10-18 Kai Tietz <>
PR binutils/14067
* NEWS: Menition new feature.
* scripttempl/ Add zdebug sections.
* scripttempl/ L
2012-09-19 Steve Ellcey <>
* configure.tgt: Add mips*-mti-elf* target.
2012-09-17 Alan Modra <>
* ld.texinfo (Expression Section): Correct description of
conversions for a binary operation involving an absolute symbol
and a number.
2012-09-14 David Edelsohn <>
* configure: Regenerate.
2012-09-13 Anthony Green <>
* emulparams/ (BIG_OUTPUT_FORMAT,
(OUTPUT_FORMAT): Change to elf32-bigmoxie.
(EMBEDDED): Define.
2012-09-12 DJ Delorie <>
* emulparams/ (OTHER_READONLY_SECTIONS): Add W_* sections.
2012-09-10 Matthias Klose <>
* Disable sanity check for kfreebsd.
2012-09-10 H.J. Lu <>
* configure: Regenerated.
2012-09-10 Iain Sandoe <>
Alan Modra <>
* 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 <>
* 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 <>
* 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/ 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 <>
PR ld/14525
* scripttempl/ Also provide __executable_start for PIE.
2012-08-17 Kai Tietz <>
PR ld/14326
* scripttempl/ Add _etext symbol.
2012-08-14 Nick Clifton <>
* (ALL_LINGUGAS): Add uk.
* configure: Regenerate.
* po/uk.po: New Ukranian translation.
2012-08-13 Ian Bolton <>
Laurent Desnogues <>
Jim MacArthur <>
Marcus Shawcroft <>
Nigel Stephens <>
Ramana Radhakrishnan <>
Richard Earnshaw <>
Sofiane Naci <>
Tejas Belagod <>
Yufeng Zhang <>
* Add AArch64.
* Regenerate.
* configure.tgt: Add AArch64.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emultempl/aarch64elf.em: New file.
* NEWS: Mention the new feature.
2012-08-09 Nick Clifton <>
* po/vi.po: Updated Vietnamese translation.
2012-08-07 Daniel Green <>
* scripttempl/ (R_TLS): Add .tls$AAA and .tls$ZZZ.
* scripttempl/ (R_TLS): Add .tls$AAA and .tls$ZZZ.
2012-08-07 Nick Clifton <>
* po/ja.po: Updated Japanese translation.
2012-08-06 Maciej W. Rozycki <>
* emulparams/ Make _gp hidden.
* emulparams/ Likewise.
* emulparams/ Likewise.
* scripttempl/ Likewise.
2012-08-06 Maciej W. Rozycki <>
* ldexp.h (etree_union): Add defsym member to the assign member
(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):
* ld.texinfo (Assigning Values to Symbols): Add HIDDEN.
(HIDDEN): New subsection.
2012-07-31 H.J. Lu <>
PR ld/14156
* ldlang.c (wild_sort): Properly handle by_none.
* scripttempl/ Add SORT_NONE to .init and .fini sections.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
2012-07-30 Nick Clifton <>
* 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 <>
* (BFD_VERSION): Run bfd/configure --version and
parse the output of that.
* configure: Regenerate.
2012-07-27 Tristan Gingold <>
* NEWS: Add marker for 2.23.
2012-07-24 Jan Waclawek <>
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 <>
* emulparams/ (IREL_IN_PLT): Define.
* emulparams/ (IREL_IN_PLT): Define.
2012-07-13 Nick Clifton <>
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 <>
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 <>
* ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.
2012-06-29 Nick Clifton <>
* scripttempl/ Add .debug_macro section.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Add .debug_pubtypes, .debug_ranges and
.debug_macro sections.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
2012-06-28 H.J. Lu <>
* ldlang.c (update_wild_statements): Remove redundant statement.
2012-06-25 Alan Modra <>
* 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 <>
* configure.tgt: Enable elf_k1om for x86_64-*-linux-gnux32.
Remove x32 in tdir_i386linux and tdir_elf_i386.
2012-06-22 Roland McGrath <>
* NEWS: Mention __ehdr_start.
2012-06-21 Alan Modra <>
* ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol
absolute, and remove unnecessary alignment.
2012-06-16 Alan Modra <>
* 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
(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/ Precede OTHER_GOT_SYMBOLS with . = .; and
likewise before __bss_start.
2012-06-14 H.J. Lu <>
* plugin.c (set_tv_header): Handle link_info.pie.
2012-06-11 Alan Modra <>
PR ld/14215
* ldexp.c (fold_name <SIZEOF, ALIGNOF>): Allow forward section
* emulparams/ (SEPARATE_GOTPLT): Depend on size of
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
* emulparams/ (SEPARATE_GOTPLT): Likewise.
2012-06-07 Georg-Johann Lay <>
PR 13697
* scripttempl/ (.data): Keep it.
2012-06-02 Andreas Schwab <>
* (TEXINFO_TEX): Remove $(top_srcdir) prefix.
* Regenerate.
2012-05-30 Alan Modra <>
* 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 <>
* ldlex.h (enum option_values): Move from..
* lexsup.c:
* emultempl/ppc32elf.em: Include ldlex.h.
(PARSE_AND_LIST_ARGS_CASES): Disable optimisations when
* emultempl/ppc64elf.em: Likewise.
2012-05-25 Alan Modra <>
PR ld/13909
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Handle
multiple .eh_frame sections attached to bfd.
2012-05-23 Cary Coutant <>
* scripttempl/ Match* sections more
carefully. Fix typo where matches
* scripttempl/ Likewise.
* scripttempl/ Match* sections more carefully.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
2012-05-17 Daniel Richard G. <>
Nick Clifton <>
PR 14072
* Add check that sysdep.h has been included before
any system header files.
* configure: Regenerate.
* Regenerate.
* sysdep.h: Generate an error if included before config.h.
2012-05-16 Sergio Durigan Junior <>
* emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
as the first argument for `bfd_get_section_name'.
2012-05-16 Samuel Thibault <>
PR ld/14069
* emultempl/elf32.em: Include *-*-gnu* targets in
2012-05-15 James Murray <>
* NEWS: Mention the support for S12X processors.
2012-05-14 James Lemke <>
* 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 <>
* NEWS: Mention PowerPC VLE port.
2012-05-11 Daniel Richard G. <>
PR binutils/14028
* configure: Regenerate.
* Regenerate.
* sysdep.h: If STRINGS_WITH_STRING is defined then include both
string.h and strings.h.
2012-05-08 Alan Modra <>
* (check_DEJAGNU): Export LC_ALL=C in place of other
LC and LANG environment vars.
* Regenerate.
2012-05-07 Tristan Gingold <>
* pe-dll.c (udef_table): Make it static.
2012-05-05 Alan Modra <>
* 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 <>
* configure.tgt: Support x86_64-*-linux-gnux32.
2012-05-03 Sean Keys <>
* (ALL_EMULATIONS): Added new emulation for XGATE
and XGATE (elf).
* Rebuild.
* configure.tgt: Recognize XGATE.
* scripttempl/ New file, mostly cloned from m68hc12.
* emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
* NEWS: Mention new support.
2012-04-26 Hans-Peter Nilsson <>
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 <>
* ldlang.c (size_input_section): Use sec_info_type rather than
* 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 <>
* configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
* emulparams/ New file.
* emulparams/ New file.
* (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
and earmelfb_nacl.c here.
(earmelf_nacl.c, earmelfb_nacl.c): New targets.
* Regenerated.
2012-04-11 Tristan Gingold <>
* scripttempl/ New file.
* emultempl/vms.em (_before_parse): Support for ia64.
(elf64-ia64-vms): New fragment for ia64.
* emulparams/ New file.
* configure.tgt (ia64-*-*vms*): Add.
* (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
(eelf64_ia64_vms.c): New rule.
* Regenerate.
2012-04-06 Roland McGrath <>
* (AC_CHECK_HEADERS): Add locale.h.
* Regenerate.
* configure: Regenerate.
2012-04-05 Nick Clifton <>
* (AC_CHECK_FUNCS): Add setlocale.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
2012-04-03 Roland McGrath <>
* configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* (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.
* Regenerated.
* scripttempl/ Handle SEPARATE_CODE cases.
2012-04-02 Mike Frysinger <>
* 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 <>
* po/vi.po: Updated Vietnamese translation.
2012-03-27 Roland McGrath <>
* Set want64 on a 64-bit host regardless of
* configure: Regenerated.
2012-03-26 Tristan Gingold <>
* lexsup.c (parse_args): Add a missing '\n'.
2012-03-25 Alan Modra <>
* 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 <>
* 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 <>
Pascal Obry <>
* 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 <>
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 <>
* ldexp.c (exp_print_tree): Special case for SEGMENT_START.
(exp_print_token): Constify.
2012-03-08 Alan Modra <>
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
* 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
2012-03-06 Alan Modra <>
* ldlang.h (struct lang_input_statement_flags): New, extract from..
(lang_input_statement_type): 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 <>
* configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
(mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
replacing trailing "-*" with "*".
2012-02-25 Walter Lee <>
* (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.
* Regenerate.
* configure.tgt (tilegx-*-*): Support big endian.
(tilegxbe-*-*): New.
* emulparams/ (OUTPUT_FORMAT): Rename.
* emulparams/ New.
* emulparams/ (OUTPUT_FORMAT): Rename.
* emulparams/ New.
2012-02-24 Kai Tietz <>
PR binutils/13710
* deffilep.y (keyword_as_name): Disable LIBRARY
2012-02-22 Alan Modra <>
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
* ldexp.h (enum lang_phase_type): Add descriptions of the phases.
2012-02-19 Kai Tietz <>
* 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
2012-02-18 Hans-Peter Nilsson <>
* ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
temporary variable node used for NULL argument.
2012-02-18 Alan Modra <>
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 <>
* 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 <>
* 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 <>
* pe-dll.c (auto_export): Use bsearch to speed up scan of exports
(process_def_file_and_drectve): Maintain sorting of exports table
after stripping leading @ signs.
2012-02-09 Alan Modra <>
* ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
2012-01-31 H.J. Lu <>
PR ld/13616
* emulparams/ Remove NOP.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ 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/ Don't specify fill if NOP is undefined.
2012-01-17 Alan Modra <>
* ldver.c (ldversion): Update copyright message year.
2012-01-15 Alan Modra <>
PR ld/12758
* ldlang.c (lang_process): Don't reopen all files, just those
newly added by plugin.
2012-01-11 Alan Modra <>
* emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
(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 <>
* 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