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