1 2009-08-29 Martin Thuresson <martin@mtme.org>
3 * ldexp.c (exp_intop, exp_bigintop, exp_relop, exp_binop)
4 (exp_trinop, exp_unop, exp_nameop, exp_assop): Rename variable new
6 * ldfile.c (ldfile_add_library_path): Rename variable new to
7 new_dirs. (ldfile_add_arch): Rename variable new to new_arch.
8 * ldlang.c (new_statement, lang_final, lang_add_wild)
9 (lang_target, lang_add_fill, lang_add_data, lang_add_assignment)
10 (lang_add_insert): Rename variable new to new_stmt. (new_afile):
11 Added missing cast. (lang_memory_region_lookup): Rename variable
12 new to new_region. (init_os): Rename variable new to
13 new_userdata. (lang_add_section): Rename variable new to
14 new_section. (ldlang_add_undef): Rename variable new to
15 new_undef. (realsymbol): Rename variable new to new_name.
17 2009-08-26 Nick Clifton <nickc@redhat.com>
20 * emultempl/elf32.em (_after_open): Do not create a
21 .note.gnu-build-id section if there are no input files.
23 2009-08-24 Nick Clifton <nickc@redhat.com>
25 * scripttempl/elfxtensa.sc (DISCARDED): Discard sections with
27 * scripttempl/armbpabi.sc: Likewise.
28 * scripttempl/elf32sh-symbian.sc: Likewise.
29 * scripttempl/elf64hppa.sc: Likewise.
30 * scripttempl/mep.sc: Likewise.
32 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
34 * Makefile.am (ldmain.o, ldfile.o): Fix typos in non-fastdep
36 (eelf32_spu.o): Add dependency tracking.
37 * Makefile.in: Regenerate.
39 * Makefile.am (am__skiplex, am__skipyacc): New.
40 * Makefile.in: Regenerate.
42 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
44 * Makefile.am (bin_PROGRAMS): Renamed from ...
45 (noinst_PROGRAMS): ... this.
46 (transform): Override, including the renaming of ld-new to ld.
47 (install-exec-local): Installation of ld in $(bindir) not needed
49 (AM_CPPFLAGS): Renamed from ...
51 (MAINTAINERCLEANFILES): Add ld.1.
52 * Makefile.in: Regenerate.
54 * Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
55 no-texinfo.tex, no-dist, foreign.
56 (TEXINFO_TEX): New variable.
57 (install-data-local): Removed, not needed any more.
58 (all): Dependencies upon info and ld.1 not needed any more.
59 (MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
60 (mkdep generated section): Removed.
61 (ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
62 use automake dependency tracking mechanism.
63 (EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
64 $(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
65 dependencies are tracked too.
66 (BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
68 * configure.in: Use AM_MAINTAINER_MODE.
69 * aclocal.m4, configure, Makefile.in: Regenerate.
71 * Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
72 (install-pdf-recursive, html__strip_dir, install-html)
73 (install-html-am, install-html-recursive): Remove.
74 * Makefile.in: Regenerate.
76 * Makefile.in: Regenerate.
77 * aclocal.m4: Likewise.
78 * config.in: Likewise.
79 * configure: Likewise.
81 2009-08-21 Richard Guenther <rguenther@suse.de>
83 * scripttempl/elf.sc: Discard sections with .gnu.lto_ prefix.
85 2009-08-12 Tristan Gingold <gingold@adacore.com>
87 * ld.h (fat_user_section_struct): Add map_symbol_def_count field.
88 * ldlang.c (hash_entry_addr_cmp): New function.
89 (print_all_symbols): Sort the symbols by address before printing them.
91 2009-08-10 Alan Modra <amodra@bigpond.net.au>
94 * ldemul.c (after_allocation_default): Run lang_relax_sections.
95 * ldlang.h (lang_relax_sections): Declare.
96 * ldlang.c (relax_sections): Delete.
97 (lang_relax_sections): New function.
98 (lang_process): Don't relax directly from here.
99 * emultempl/alphaelf.em (alpha_finish): Call finish_default.
100 * emultempl/armelf.em (arm_elf_after_allocation): Delete. Move body..
101 (gld${EMULATION_NAME}_finish): ..to here. Move existing code..
102 (gld${EMULATION_NAME}_after_allocation): ..to here. New function.
103 (LDEMUL_AFTER_ALLOCATION): Update.
104 * emultempl/avrelf.em (avr_elf_finish, LDEMUL_FINISH): Delete.
105 (avr_elf_after_allocation): New function.
106 (LDEMUL_AFTER_ALLOCATION): Define.
107 * emultempl/elf-generic.em (gld${EMULATION_NAME}_map_segments): Call
109 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Delete. Move..
110 (gld${EMULATION_NAME}_after_allocation): ..code to here. New function.
111 (LDEMUL_AFTER_ALLOCATION, LDEMUL_FINISH): Update.
112 * emultempl/genelf.em (gld${EMULATION_NAME}_finish): Delete. Move..
113 (gld${EMULATION_NAME}_after_allocation): ..code to here. New function.
114 (LDEMUL_FINISH): Delete.
115 (LDEMUL_AFTER_ALLOCATION): Define.
116 * emultempl/hppaelf.em (gld${EMULATION_NAME}_finish): Delete. Move..
117 (gld${EMULATION_NAME}_after_allocation): ..to here. New function.
118 (LDEMUL_FINISH): Delete.
119 (LDEMUL_AFTER_ALLOCATION): Define.
120 * emultempl/m68hc1xelf.em (m68hc11elf_finish): Delete. Move..
121 (m68hc11elf_after_allocation): ..to here. New function.
122 (LDEMUL_FINISH): Delete.
123 (LDEMUL_AFTER_ALLOCATION): Define.
124 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
125 gld${EMULATION_NAME}_after_allocation.
126 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Call
127 gld${EMULATION_NAME}_after_allocation.
128 * emultempl/mmo.em (mmo_finish): Delete. Move body..
129 (gld${EMULATION_NAME}_after_allocation): ..to here. New function.
130 (LDEMUL_FINISH): Define.
131 * emultempl/ppc64elf.em (ppc_layout_sections_again): Set elf_gp.
132 (gld${EMULATION_NAME}_finish): Move code sizing sections..
133 (gld${EMULATION_NAME}_after_allocation): ..to here.
134 * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
135 Call gld${EMULATION_NAME}_after_allocation.
136 * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Delete
137 bfd_elf_discard_info and map_segments call.
139 2009-08-06 Michael Eager <eager@eagercon.com>
141 * Makefile.am: Add eelf32mb_linux.o, eelf32microblaze.o to
142 ALL_EMULATIONS, targets.
143 * Makefile.in: Regenerate.
144 * configure.tgt: Add microblaze*-linux*, microblaze* targets.
145 * emulparams/elf32mb_linux.sh: New.
146 * emulparams/elf32microblaze.sh. New.
147 * scripttempl/elfmicroblaze.sc: New.
149 2009-08-05 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
151 * emulparams/elf32_spu.sh (OTHER_READONLY_SECTIONS): Add .fixup
152 section and __fixup_start symbol.
153 * emultempl/spuelf.em (params): Initialize emit_fixups member.
154 (spu_before_allocation): Call spu_elf_size_sections.
155 (OPTION_SPU_EMIT_FIXUPS): Define.
156 (PARSE_AND_LIST_LONGOPTS): Add --emit-fixups.
157 (PARSE_AND_LIST_ARGS_CASES): Handle --emit-fixups.
158 * ld.texinfo (--emit-fixups): Document.
160 2009-08-04 Alan Modra <amodra@bigpond.net.au>
163 * emultempl/ppc32elf.em (ppc_before_allocation): Test rawsize,
164 not size, after lang_reset_memory_regions.
166 2009-07-30 Alan Modra <amodra@bigpond.net.au>
168 * emulparams/elf32ppc.sh (PLT): Don't include ".iplt".
169 * emulparams/elf_i386.sh (IREL_IN_PLT): Define.
170 * emulparams/elf_x86_64.sh (IREL_IN_PLT): Define.
171 * scripttempl/elf.sc: Create separate .iplt and .rela.iplt sections
174 2009-07-29 Hans-Peter Nilsson <hp@bitrange.com>
176 * scripttempl/mmo.sc: For relocateable links, set $OUTPUT_FORMAT to
177 the new $RELOCATEABLE_OUTPUT_FORMAT, if set.
178 (OUTPUT_FORMAT): Use the variable $OUTPUT_FORMAT.
179 (ENTRY): Don't emit for relocateable links.
180 (/DISCARD/): Don't discard .gnu.warning.* for relocateable links.
181 * emulparams/mmo.sh (RELOCATEABLE_OUTPUT_FORMAT): Set, to
183 * emulparams/elf64mmix.sh (OTHER_TEXT_SECTIONS): Empty, don't
184 provide "Main" or set "_start.", for relocateable links.
186 2009-07-27 Nick Clifton <nickc@redhat.com>
188 * (po/fi.po): Updated Finnish translation.
190 2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
192 * configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64
193 is supported. Add elf_l1om_fbsd if elf_x86_64_fbsd is supported.
194 (targ_extra_emuls): Likewise.
196 * Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and
199 (eelf_l1om_fbsd.c): Likewise.
200 * Makefile.in: Regenerated.
202 * emulparams/elf_l1om.sh: New.
203 * emulparams/elf_l1om_fbsd.sh: Likewise.
205 2009-07-23 Ulrich Drepper <drepper@redhat.com>
207 * NEWS: Mention the linker's support for symbols with a binding of
210 2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
213 * ldlang.c (insert_os_after): Tie assignments to non-alloc
214 output sections if there is no-input section.
216 2009-07-11 Alan Modra <amodra@bigpond.net.au>
218 * ldlang.c (insert_os_after): Don't tie assignments to non-alloc
221 2009-07-10 Alan Modra <amodra@bigpond.net.au>
223 * emultempl/ppc32elf.em (ppc_before_allocation): Turn on
224 linker relaxation if it might be necessary.
226 2009-07-10 Alan Modra <amodra@bigpond.net.au>
228 * emulparams/elf32ppc.sh (GOTPLT, PLT): Handle .iplt.
230 2009-07-06 Matthias Klose <doko@ubuntu.com>
232 * ld.texinfo: Fix typo.
234 2009-07-03 Tristan Gingold <gingold@adacore.com>
236 * scripttempl/pep.sc: Put .eh_frame in its own section.
237 * scripttempl/pe.sc: Ditto.
239 2009-06-26 Kai Tietz <kai.tietz@onevision.com>
241 * scripttempl/pe.sc (.debug_pubtypes): Added section rule.
242 * scripttempl/pep.sc: Likewise.
244 2009-06-25 Tristan Gingold <gingold@adacore.com>
246 * ldlang.c (print_input_section): Add is_discarded parameter. Adjust
248 (lang_map): Print the size of discarded sections.
249 (print_statement): Adjust call to print_input_section.
251 2009-06-18 Dave Korn <dave.korn.cygwin@gmail.com>
253 Merge cegcc and mingw32ce target name changes from CeGCC project:
255 2008-09-24 Pedro Alves <pedroalves@users.sourceforge.net>
257 * configure.tgt (arm*-*-cegcc*): Set LIB_PATH to
258 ${tooldir}/lib/w32api.
260 2007-12-25 Pedro Alves <pedro_alves@portugalmail.pt>
262 * configure.tgt: Add arm*-*-cegcc* target.
264 2007-12-17 Pedro Alves <pedro_alves@portugalmail.pt>
266 * configure.tgt: Add arm-*-mingw32ce* target.
268 2009-06-10 Philip Blundell <philb@gnu.org>
270 * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Avoid crash
271 if section has no ELF data.
273 2009-06-06 H.J. Lu <hongjiu.lu@intel.com>
275 * scripttempl/elf.sc: Add .rel.ifunc and .rela.ifunc.
277 2009-06-05 H.J. Lu <hongjiu.lu@intel.com>
279 * scripttempl/elf.sc: Remove .rel.ifunc.dyn and .rela.ifunc.dyn.
281 2009-06-04 Alan Modra <amodra@bigpond.net.au>
283 * dep-in.sed: Don't use \n in replacement part of s command.
284 * Makefile.am (DEP1): LC_ALL for uniq.
285 * Makefile.in: Regenerate.
287 2009-06-01 H.J. Lu <hongjiu.lu@intel.com>
289 * scripttempl/elf.sc (PLT): Add "*(.iplt)".
290 (GOT): Add "*(.igot.plt)a" and "*(.igot)".
291 (GOTPLT): Add "*(.igot)".
292 (__rel_iplt_start): New.
293 (__rel_iplt_end): Likewise.
294 (__rela_iplt_start): Likewise.
295 (__rela_iplt_end): Likewise.
297 2009-05-27 Dave Korn <dave.korn.cygwin@gmail.com>
299 * deffilep.y (%union): Add new string-type semantic value 'digits'.
300 (%token): Remove NUMBER as token, add DIGITS.
301 (%type): Add NUMBER as type. Add new id types anylang_id, opt_id.
302 (ALIGNCOMM): Parse an anylang_id instead of a plain ID.
303 (anylang_id): New production.
304 (opt_digits): Likewise.
307 (def_lex): Return strings of digits in raw string form as DIGITS
308 token, instead of converting to numeric integer type.
310 2009-05-26 Nathan Sidwell <nathan@codesourcery.com>
312 * ldmain.c (main): Don't reject --relax -r.
313 * ld.texinfo (PowerPC ELF32): Document behaviour of relaxing
316 2009-05-26 Nick Clifton <nickc@redhat.com>
318 * po/id.po: Updated Indonesian translation.
319 * po/ld.pot: Updated template file.
321 2009-05-26 Alan Modra <amodra@bigpond.net.au>
323 * dep-in.sed: Output one filename per line with all lines having
324 continuation backslash. Prefix first line with "A", following
326 * Makefile.am (DEP): Don't use dep.sed here.
327 (DEP1): Run $MKDEP on single files, use dep.sed here on dependencies,
329 * Makefile.in: Regenerate.
331 2009-05-26 Alan Modra <amodra@bigpond.net.au>
333 * ldlang.c (lang_check_section_addresses): Ignore non-alloc sections.
335 2009-05-22 Julian Brown <julian@codesourcery.com>
337 * emultempl/armelf.em (fix_cortex_a8): New.
338 (arm_elf_before_allocation): Call bfd_elf32_arm_set_cortex_a8_fix.
339 (arm_elf_create_output_section_statements): Add fix_cortex_a8 to
340 bfd_elf32_arm_set_target_relocs.
341 (OPTION_FIX_CORTEX_A8, OPTION_NO_FIX_CORTEX_A8): New.
342 (PARSE_AND_LIST_LONGOPTS): Add [no-]fix-cortex-a8 options.
343 (PARSE_AND_LIST_OPTIONS): Add [no-]fix-cortex-a8 options.
344 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_[NO_]FIX_CORTEX_A8.
345 * ld.texinfo (--[no-]fix-cortex-a8): Briefly document new options.
347 2009-05-22 Nathan Sidwell <nathan@codesourcery.com>
349 * ldlang.c (lang_check_section_addresses): Ignore non-loadable
350 sections when checking for overlap. Clarify error message
351 concerns load address.
353 2009-05-22 Alan Modra <amodra@bigpond.net.au>
355 * Makefile.am: Run "make dep-am".
356 * Makefile.in: Regenerate.
358 2009-05-19 Dave Korn <dave.korn.cygwin@gmail.com>
360 * NEWS: Mention new feature.
361 * deffile.h (def_file_aligncomm): Add new struct definition.
362 (def_file): Add new def_file_aligncomm member.
363 * deffilep.y (%token): Add new ALIGNCOMM token.
364 (command): Add production rule for ALIGNCOMM.
365 (def_file_free): Free any chained def_file_aligncomm structs.
366 (diropts[]): Add entry for '-aligncomm' .drectve command.
367 (def_aligncomm): New grammar function.
368 * ld.texinfo: Document new feature.
369 * pe-dll.c (process_def_file): Rename from this ...
370 (process_def_file_and_drectve): ... to this, updating all callers,
371 and process any aligncomms chained to the def file after scanning
372 all .drectve sections.
373 (generate_edata): Updated to match.
374 (pe_dll_build_sections): Likewise.
376 2009-05-17 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
378 * pe-dll.c (process_def_file): Do not create empty export table.
380 2009-05-15 Alan Modra <amodra@bigpond.net.au>
382 * ldlang.c (lang_output_section_statement_lookup): Add function
383 comment. Make "name" non-const. Ensure duplicate entries use
384 the same string, allowing simple comparison in hash bucket loop.
385 Tweak constraint check.
386 (next_matching_output_section_statement): New function.
387 * ldlang.h (lang_output_section_statement_lookup): Update.
388 (next_matching_output_section_statement): Declare.
389 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
390 combine orphan sections when input sections flags differ in
392 * emultempl/pe.em: Formatting throughout.
393 (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
394 * emultempl/pep.em: Formatting throughout.
395 (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
397 2009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
399 * emultempl/spuelf.em (PARSE_AND_LIST_ARGS_CASES): Always use
400 compact stubs with software i-cache.
402 2009-05-14 Alan Modra <amodra@bigpond.net.au>
404 * emultempl/spuelf.em (spu_before_allocation): Call
405 spu_elf_place_overlay_data.
407 2009-05-14 Alan Modra <amodra@bigpond.net.au>
409 * ldlang.c (lang_insert_orphan): Add __start_<section> symbol
410 assignment inside output section statement. Ensure only one
411 set of symbols per output section.
412 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add non-
413 dollar sections before dollar sections. Correct add_child
415 * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
417 2009-05-05 Paul Brook <paul@codesourcery.com>
419 * emultempl/armelf.em (compare_output_sec_vma): New function.
420 (gld${EMULATION_NAME}_finish): Add exidx munging code.
422 2009-05-05 Anatoly Sokolov <aesok@post.ru>
424 * scripttempl/avr.sc (MEMORY): Use DATA_ORIGIN.
425 * emulparams/avr1.sh (DATA_ORIGIN): Add.
426 * emulparams/avr2.sh (DATA_ORIGIN): Add.
427 * emulparams/avr25.sh (DATA_ORIGIN): Add.
428 * emulparams/avr3.sh (DATA_ORIGIN): Add.
429 * emulparams/avr31.sh (DATA_ORIGIN): Add.
430 * emulparams/avr35.sh (DATA_ORIGIN): Add.
431 * emulparams/avr4.sh (DATA_ORIGIN): Add.
432 * emulparams/avr5.sh (DATA_ORIGIN): Add.
433 * emulparams/avr51.sh (DATA_ORIGIN): Add.
434 (DATA_LENGTH): Update.
435 * emulparams/avr6.sh (DATA_ORIGIN): Add.
436 (DATA_LENGTH): Update.
438 2009-05-04 Dave Korn <dave.korn.cygwin@gmail.com>
440 * NEWS: Mention new feature.
441 * ld.texinfo (--version-script): Document extent of PE support.
442 (WIN32): Mention --version-script. Extend auto-export description.
443 * pe-dll.c (process_def_file): Use version script info to filter
444 symbols from auto-export.
445 * testsuite/ld-pe/vers-script-1.d: New file.
446 * testsuite/ld-pe/vers-script-2.d: New file.
447 * testsuite/ld-pe/vers-script-3.d: New file.
448 * testsuite/ld-pe/vers-script-4.d: New file.
449 * testsuite/ld-pe/vers-script-1.ver: New file.
450 * testsuite/ld-pe/vers-script-2.ver: New file.
451 * testsuite/ld-pe/vers-script-3.ver: New file.
452 * testsuite/ld-pe/vers-script-4.ver: New file.
453 * testsuite/ld-pe/vers-script-dll.c: New file.
454 * testsuite/ld-pe/vers-script.exp: New test script.
456 2009-05-01 Nathan Sidwell <nathan@codesourcery.com>
458 * emulparams/vxworks.sh (TEXT_START_ADDR): Override.
460 2009-04-30 Nick Clifton <nickc@redhat.com>
462 * NEWS: Mention support for IFUNC symbols.
464 2009-04-29 Anthony Green <green@moxielogic.com>
466 * emulparams/elf32moxie.sh (STACK_ADDR): Move default stack
467 position out to accommodate larger programs.
469 2009-04-29 Chris Demetriou <cgd@google.com>
471 * lexsup.c (option_values): Add OPTION_NO_EXPORT_DYNAMIC.
472 (ld_options): Likewise.
473 (parse_args): Likewise.
474 * ld.texinfo: Document --no-export-dynamic.
475 * NEWS: Mention --no-export-dynamic.
477 2009-04-29 Alan Modra <amodra@bigpond.net.au>
479 * deffilep.y (STACKSIZE_K): Rename from STACKSIZE.
481 2009-04-25 Alan Modra <amodra@bigpond.net.au>
484 * genscripts.sh: Don't pass $EMULATION_NAME as $CUSTOMIZER_SCRIPT
487 2009-04-21 Daniel Jacobowitz <dan@codesourcery.com>
489 * emultempl/armelf.em (bfd_for_interwork, arm_elf_after_open)
490 (arm_elf_set_bfd_for_interworking): Delete.
491 (arm_elf_before_allocation): Do not set the interworking BFD.
492 Move allocation inside not-dynamic block.
493 (arm_elf_create_output_section_statements): Create glue sections
494 and set the interworking BFD here.
495 (LDEMUL_AFTER_OPEN): Delete.
497 2009-04-16 Richard Sandiford <r.sandiford@uk.ibm.com>
499 * ldlang.c (lang_one_common): Use bfd_define_common_symbol.
501 2009-04-15 Anthony Green <green@moxielogic.com>
503 * configure.tgt: Add moxie support.
504 * Makefile.am: Add moxie files.
505 * Makefile.in: Rebuilt.
506 * emulparams/elf32moxie.sh: New file.
507 * scripttempl/moxie.sc: New file.
509 2009-04-15 Kazu Hirata <kazu@codesourcery.com>
511 * ldlang.c: Do not include limits.h.
513 2009-04-14 Alan Modra <amodra@bigpond.net.au>
516 * ldfile.c (find_scripts_dir): Use make_relative_prefix to find
517 ldscripts in build tree. Don't repeat search for ../lib/ldscripts.
519 2009-04-13 H.J. Lu <hongjiu.lu@intel.com>
521 * ldfile.c (ldfile_find_command_file): Revert the last change.
523 2009-04-11 H.J. Lu <hongjiu.lu@intel.com>
526 * ldfile.c (ldfile_find_command_file): First try raw name.
528 2009-04-09 Nick Clifton <nickc@redhat.com>
531 * ld.texinfo (Output Section Constraint): New node. Documents the
532 ONLY_IF_RO and ONLY_IF_RW constraints.
533 (Symbolic Constants): New node. Documents the CONSTANT operator.
535 2009-04-09 Thilo Fischer <thilo.fischer@uni-muenster.de>
537 * emultempl/spuelf.em (embedded_spu_file): Use pex_one in place
540 2009-04-08 H.J. Lu <hongjiu.lu@intel.com>
542 * lexsup.c (option_values): Add OPTION_WARN_ALTERNATE_EM.
543 (ld_options): Likewise.
544 (parse_args): Likewise.
546 * ld.texinfo: Document --warn-alternate-em.
548 * NEWS: Mention --warn-alternate-em.
550 2009-04-07 DJ Delorie <dj@redhat.com>
552 * emulparams/elf32mep.sh: Change default endian to little.
554 2009-04-07 Nick Clifton <nickc@redhat.com>
556 * ld.texinfo (Output Section Address): Note that specifying an
557 address for an output section will only change the location
558 counter if the output section is used.
560 2009-04-06 Kazu Hirata <kazu@codesourcery.com>
562 * ldfile.c (ldfile_find_command_file): Initialize result.
564 2009-04-06 Kazu Hirata <kazu@codesourcery.com>
566 * ld.texinfo (-L): Mention that -L options do not affect how ld
567 searches for a linker script unless -T option is specified.
568 * ldfile.c (ldfile_find_command_file): Append the path obtained
569 from the program name to the search path instead of
570 prepending. Add a new parameter "default_only". Restrict the
571 search to the default script location if the new parameter is
573 (ldfile_open_command_file_1): New.
574 (ldfile_open_command_file): Call ldfile_open_command_file_1.
575 (ldfile_open_default_command_file): New.
577 2009-04-03 Nathan Sidwell <nathan@codesourcery.com>
579 * ldlang.c (lang_leave_output_section_statement): Set lma_region
580 if it is not overridden and section is for the same vma region as
581 the previous section.
583 2009-04-02 Dave Korn <dave.korn.cygwin@gmail.com>
586 * ld.texinfo (--export-dynamic): Mention --export-all-symbols.
587 * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Issue
588 warning if --export-dynamic was passed on command-line.
589 * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse): Likewise.
591 2009-04-01 Richard Sandiford <r.sandiford@uk.ibm.com>
593 * emultempl/aix.em (gld${EMULATION_NAME}_open_dynamic_archive): New
595 (ld_${EMULATION_NAME}_emulation): Use it.
597 2009-03-20 H.J. Lu <hongjiu.lu@intel.com>
600 * ldlang.c (lang_end): Warn missing entry symbol for -pie.
602 2009-03-19 Alan Modra <amodra@bigpond.net.au>
604 * emultempl/spuelf.em (spu_before_allocation): Report errors from
605 spu_elf_find_overlays.
607 2009-03-18 H.J. Lu <hongjiu.lu@intel.com>
610 * lexsup.c (parse_args): Call ldlang_add_undef for -e.
612 2009-03-18 Alan Modra <amodra@bigpond.net.au>
614 * ld.h: Remove alloca handling.
616 2009-03-17 Alan Modra <amodra@bigpond.net.au>
618 * emultempl/spu_icache.S: Add new entry to dummy handler.
619 * emultempl/spu_icache.o_c: Regenerate.
620 * emultempl/spuelf.em (params): Init new field.
621 (no_overlays): New static var.
622 (spu_before_allocation): Use it.
623 (OPTION_SPU_COMPACT_STUBS): Define.
624 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add compact-stubs.
625 (PARSE_AND_LIST_ARGS_CASES): Handle compact-stubs. Adjust no-overlays
628 2009-03-17 Alan Modra <amodra@bigpond.net.au>
630 * configure.host (HOSTING_LIBS): Two dollars on shell variable
631 expansion to suit make.
633 2009-03-17 Alan Modra <amodra@bigpond.net.au>
635 * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL.
636 * Makefile.am (check-DEJAGNU): Set DO_COMPARE.
637 * aclocal.m4: Regenerate.
638 * configure: Regenerate.
639 * Makefile.in: Regenerate.
641 2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
643 * emultempl/aix.em (auto_export_flags): New variable.
644 (explicit_auto_export_flags): Likewise.
645 (OPTION_EXPALL, OPTION_EXPFULL): New enum values.
646 (OPTION_NOEXPALL, OPTION_NOEXPFULL): Likewise.
647 (gld${EMULATION_NAME}_add_options): Add -bexpall, -bexpfull,
648 -bnoexpall and -bnoexpfull.
649 (gld${EMULATION_NAME}_handle_option): Handle them.
650 (gld${EMULATION_NAME}_before_allocation): Update the call to
651 bfd_size_dynamic_sections.
653 2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
655 * emultempl/aix.em (gld${EMULATION_NAME}_handle_option): Make
656 -berok and -bernotok control link_info.unresolved_syms_in_objects
657 and link_info.unresolved_syms_in_shared_libs instead of
658 force_make_executable.
660 2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
662 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
663 config.dynamic_link to TRUE.
665 2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
667 * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Mark
668 .text, .data and .bss output sections as SEC_KEEP.
670 2009-03-14 Richard Sandiford <r.sandiford@uk.ibm.com>
672 * configure.tgt: Extend AIX 5 behavior to AIX 6 and above.
674 2009-03-14 Dave Korn <dave.korn.cygwin@gmail.com>
675 Danny Smith <dannysmith@users.sourceforge.net>
677 * emultmpl/pe.em (pe_dll_characteristics): New variable.
678 (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
679 OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
680 OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
681 New macros for options to set DllCharacteristics flag bits.
682 (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
683 nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
684 (init): Add DllCharacteristics field.
685 (gld_${EMULATION_NAME}_list_options): List new options.
686 (gld${EMULATION_NAME}_handle_option): Handle new options.
687 * emultmpl/pep.em (pe_dll_characteristics): New variable.
688 (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
689 OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
690 OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
691 New macros for options to set DllCharacteristics flags.
692 (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
693 nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
694 (init): Add DllCharacteristics field.
695 (gld_${EMULATION_NAME}_list_options): List new options.
696 (gld${EMULATION_NAME}_handle_option): Handle new options.
697 * ldtexinfo : Document dynamicbase, forceinteg, nxcompat,
698 no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
700 2009-03-06 Nick Clifton <nickc@redhat.com>
702 * po/es.po: Updated Spanish translation.
704 2009-03-03 Dave Korn <dave.korn.cygwin@gmail.com>
706 * emultempl/pe.em (debug_section_p): New bfd_map_over_sections hook.
707 (gld_${EMULATION_NAME}_after_open): Use it to iterate all sections
708 of all input BFDs, looking for debug info. Enable long section names
710 * emultempl/pe.em (debug_section_p): Likewise.
711 (gld_${EMULATION_NAME}_after_open): Likewise.
712 * NEWS: Retrospectively adjust news announcement.
713 * ld.texinfo: Update documentation to mention new behaviour.
715 2009-03-03 Alan Modra <amodra@bigpond.net.au>
717 * Makefile.am: Run "make dep-am".
718 * Makefile.in: Regenerate.
720 2009-03-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
722 * ldgram.y: Add support for REGION_ALIAS operator.
723 * ldlang.c: Likewise.
724 * ldlang.h: Likewise.
726 * NEWS: Mention the new feature.
727 * ld.texinfo: Document the new feature.
729 2009-03-02 Qinwei <qinwei@sunnorth.com.cn>
731 * Makefile.am: Replace score elf emulation with score3 and score7
733 * Makefile.in: Regenerate,
734 * NEWS: Mention support for Score7 architecture.
735 * configure.tgt: Add score7 emulation to score-elf target.
736 * emulparams/scoreelf.sh: Add score7 support.
737 * emultempl/scoreelf.em: Likewise.
739 2009-03-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
741 * configure.tgt: Only use elf64hppa target emulation for hpux.
742 * emulparams/elf64hppa.sh: Don't include hppa64linux.sh.
743 (SCRIPT_NAME): Use new script elf64hppa.
744 (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY,
745 TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS,
746 OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS,
747 DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT,
748 TEXT_DYNAMIC): Define.
749 * emulparams/hppa64linux.sh: Adjust comments.
750 * scripttempl/elf64hppa.sc: New file.
752 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
754 * configure: Regenerate.
756 2009-02-27 Dave Korn <dave.korn.cygwin@gmail.com>
758 * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): Set
759 default state of auto-import flag based on $target.
761 2009-02-24 Joseph Myers <joseph@codesourcery.com>
763 * ld.texinfo (ARM): Document changed meaning of --stub-group-size.
764 * emultempl/armelf.em (hook_in_stub): Insert after the input section.
765 (elf32_arm_add_stub_section): Update comment.
766 (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size.
768 2009-02-24 Sandra Loosemore <sandra@codesourcery.com>
770 * ld.texinfo (Options): Correct typos in example. Recommend
771 using joined forms of syntax for passing options with arguments
773 (-a): Use consistent syntax for documenting option arguments.
774 Clean up indexing and markup.
775 (-A/--architecture): Likewise.
776 (-f/--auxiliary): Likewise.
777 (-F/--filter): Likewise.
779 (-G/--gpsize): Likewise.
780 (-h/-soname):Likewise.
782 (-l/--library): Likewise.
783 (-L/--library-path): Likewise.
785 (--defsym): Likewise.
786 (-I/--dynamic-linker): Likewise.
788 (--oformat): Likewise.
789 (--retain-symbols-file): Likewise.
791 (-rpath-link): Likewise.
792 (--sort-common): Likewise.
793 (--sort-section): Likewise.
794 (--split-by-file): Likewise.
795 (--split-by-reloc): Likewise.
796 (--sysroot): Likewise.
797 (--section-start): Likewise.
798 (-Tbss, -Tdata, -Ttext): Likewise.
799 (-Ttext-segment): Likewise.
800 (--version-script): Likewise.
803 2009-02-18 Dave Korn <dave.korn.cygwin@gmail.com>
805 * ld.texinfo: Update to mention long section name options.
806 * NEWS: Mention new behaviour and command-line options.
807 * pe-dll.c (pe_use_coff_long_section_names): New global variable.
808 (pe_output_file_set_long_section_names): New function.
809 (pe_dll_build_sections): Call it on output BFDs.
810 (pe_exe_build_sections): Likewise.
811 (pe_dll_fill_sections): Likewise.
812 (pe_exe_fill_sections): Likewise.
813 * pe-dll.h (pe_use_coff_long_section_names): Declare extern.
814 (pe_output_file_set_long_section_names): Add prototype.
815 * pep-dll.c (pe_use_coff_long_section_names): Define pep_ alias.
816 (pe_output_file_set_long_section_names): Likewise.
817 * pep-dll.h (pep_use_coff_long_section_names): Declare extern.
818 (pep_output_file_set_long_section_names): Add prototype.
819 * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES): New getopt value macro.
820 (OPTION_DISABLE_LONG_SECTION_NAMES): Likewise.
821 (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[].
822 (gld_${EMULATION_NAME}_list_options): Describe them.
823 (gld${EMULATION_NAME}_handle_option): Set or clear global
824 pe_use_coff_long_section_names flag when options recognised.
825 (gld_${EMULATION_NAME}_after_open): En/disable long section names
826 for main output bfd by calling pe_output_file_set_long_section_names.
827 * pep.em (enum options): Extend enum with new getopt option values.
828 (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[].
829 (gld_${EMULATION_NAME}_list_options): Describe them.
830 (gld${EMULATION_NAME}_handle_option): Set or clear global
831 pe_use_coff_long_section_names flag when options recognised.
832 (gld_${EMULATION_NAME}_after_open): En/disable long section names
833 for main output bfd by calling pep_output_file_set_long_section_names.
835 2009-02-16 Dave Korn <dave.korn.cygwin@gmail.com>
837 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Don't emit
838 inadvertent .reloc sections caused by refactoring accident.
840 2009-02-16 Alan Modra <amodra@bigpond.net.au>
842 * ldlang.c (process_insert_statements): ASSERT that output section
843 statements are in order.
845 2009-02-16 Alan Modra <amodra@bigpond.net.au>
847 * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
848 (stat_save, stat_save_ptr): New variables.
849 (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
850 (load_symbols): Likewise. Delete dead "bad_load" code.
851 (open_input_bfds): Warn on script containing output sections.
852 (lang_enter_output_section_statement): Use push_stat_ptr.
853 (lang_enter_group): Likewise.
854 (lang_leave_output_section_statement): Use pop_stat_ptr.
855 (lang_leave_group): Likewise.
856 * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
857 * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
858 * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
859 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
860 * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
861 * emultempl/spuelf.em (spu_place_special_section): Likewise.
862 * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
864 2009-02-09 Nathan Sidwell <nathan@codesourcery.com>
866 Missing piece of 2009-01-26 commit
867 * ldlang.c (lang_process): Don't consider relocatable flag when
868 checking for overlap.
870 2009-02-05 Joseph Myers <joseph@codesourcery.com>
872 * emulparams/m68kelf.sh: Add newline at end of file.
874 2009-02-04 Nick Clifton <nickc@redhat.com>
877 * ld.texinfo (--allow-shlib-undefined): Correct description of
878 default settings and tidy up the rest of the entry.
880 2009-02-04 Alan Modra <amodra@bigpond.net.au>
882 * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
883 during relocatable link.
885 2009-02-03 Nick Clifton <nickc@redhat.com>
888 * ld.texinfo (Constants): Document the base-encoding suffixes
889 supported in linker scripts.
891 2009-02-03 Alan Modra <amodra@bigpond.net.au>
893 * NEWS: Mention --as-needed change.
895 2009-02-03 Carlos O'Donell <carlos@codesourcery.com>
897 * configure.in: AC_SUBST pdfdir.
898 * Makefile.am: Add install-pdf, install-pdf-am,
899 and install-pdf-recursive targets. Define pdf__strip_dir.
900 * po/Make-in: Add install-pdf target.
901 * configure: Regenerate.
902 * Makefile.in: Regenerate.
904 2009-01-31 Alan Modra <amodra@bigpond.net.au>
906 * ld.texinfo (--as-needed): Update.
908 2009-01-29 Andrew Jenner <andrew@codesourcery.com>
910 * emultempl/armelf.em: Correct formatting of help text for
911 --no-enum-size-warning option.
913 2009-01-26 Nathan Sidwell <nathan@codesourcery.com>
915 * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
916 * ld.h (args_type): Make check_section_addresses a char.
917 * ldmain.c (main): Default check_section_addresses to -1. Check it
918 for relocatable links.
919 * ld.texinfo (--check-sections): Update documentation.
921 2009-01-26 Kai Tietz <kai.tietz@onevision.com>
923 * pe-dll.c (tmp_seq2): New static variable.
924 (make_singleton_name_imp): New.
925 (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
926 avoid duplicate import table generation for same symbol.
927 (pe_create_runtime_relocator_reference): Make reference for
930 2009-01-21 Alan Modra <amodra@bigpond.net.au>
932 * emultempl/spuelf.em (params): Init new field.
933 (OPTION_SPU_NON_IA_TEXT): Define.
934 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
935 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
937 2009-01-16 H.J. Lu <hongjiu.lu@intel.com>
939 * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
940 (ld_options): Add -Ttext-segment.
941 (parse_args): Handle OPTION_TTEXT_SEGMENT.
943 * ld.texinfo: Document -Ttext-segment.
945 * NEWS: Mention -Ttext-segment.
947 * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
948 (SHLIB_TEXT_START_ADDR): Likewise.
950 2009-01-13 Alan Modra <amodra@bigpond.net.au>
952 * emultempl/spu_icache.o_c: Regenerate.
954 2009-01-12 Alan Modra <amodra@bigpond.net.au>
956 * emultempl/spuelf.em (params): Init new fields.
957 (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
958 (spu_place_special_section): Adjust placement for soft-icache. Pad
959 soft-icache section to a fixed size. Clear addr_tree.
960 (spu_elf_load_ovl_mgr): Support soft-icache. Map overlay manager
961 sections a little more intelligently.
962 (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
963 (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
964 (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
965 (OPTION_SPU_LRLIVE): Define.
966 (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
967 (PARSE_AND_LIST_OPTIONS): Likewise.
968 (PARSE_AND_LIST_ARGS_CASES): Handle them.
969 * emultempl/spu_icache.S: Dummy file.
970 * emultempl/spu_icache.o_c: Regenerate.
971 * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
972 (spu_icache.o_c): Add rule to build.
973 (CLEANFILES): Zap temp files.
974 (EXTRA_DIST): Add spu_icache.o_c.
975 * Makefile.in: Regenerate.
977 2009-01-08 Kai Tietz <kai.tietz@onevision.com>
979 * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
980 (gld..._add_options): Add new option
981 --use-nul-prefixed-import-tables.
982 (gld..._handle_option): Likewise.
983 * pep.em: Same as for pe.em.
984 * ld.texinfo: Add new option documentation for
985 --use-nul-prefixed-import-tables.
986 * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
987 (make_head): Make prefix leading zero prefix element for
988 idata$4 and idata$5 dependent to new flag.
989 (make_import_fixup_entry): Remove idata4/5 prefix.
990 * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
991 * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
992 * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
993 * NEWS: Add new option.
995 2009-01-05 Kai Tietz <kai.tietz@onevision.com>
997 * emultempl/pe.em: Prefix dollar characters to be outputed in
999 * emultempl/pep.em: Likewise.
1001 2009-01-03 Dave Korn <dave.korn.cygwin@gmail.com>
1003 * NEWS: Mention new feature --exclude-modules-for-implib.
1004 * ld.texinfo: Document new --exclude-modules-for-implib option.
1005 * pe-dll.c (exclude_list_struct): Change type member from int to
1006 new enumeration exclude_type.
1007 (pe_dll_add_excludes): Accept exclude_type instead of int param.
1008 (auto_export): Replace magic constants by exclude_type values and
1009 handle new choice EXCLUDEFORIMPLIB.
1010 (pe_dll_generate_implib): Accept a pointer to the link_info and
1011 iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
1012 fresh BFDs for any found and link into import lib archive chain.
1013 * pe-dll.h (exclude_type): Add new enumerated type to replace magic
1014 constants previously used for exclude_list_struct type member.
1015 (pe_dll_add_excludes, pe_dll_generate_implib): Update prototypes.
1016 * pep-dll.h (exclude_type, pe_dll_add_excludes,
1017 pe_dll_generate_implib): Likewise to all the above.
1018 * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB): Define new
1019 getopts long option code for new --exclude-modules-for-implib option.
1020 (gld${EMULATION_NAME}_add_options): Add new entry to xtra_long[].
1021 (gld_${EMULATION_NAME}_list_options): List usage for it.
1022 (gld${EMULATION_NAME}_handle_option): Use exclude_type enumerated
1023 values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
1024 (gld_${EMULATION_NAME}_finish): Pass pointer to link_info when
1025 calling pe_dll_generate_implib.
1026 * emultempl/pep.em (options): Define new enumerated value for getopts
1027 long option code for new --exclude-modules-for-implib option.
1028 (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
1029 gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
1030 Again, likewise to all the above.
1032 2009-01-03 Dave Korn <dave.korn.cygwin@gmail.com>
1034 * pe-dll.c (autofilter_liblist): Add entry for shared libgcc.
1035 (libnamencmp): New function.
1036 (auto_export): Use it in place of strncmp when filtering libraries.
1038 For older changes see ChangeLog-2008
1044 version-control: never