(GENERATE_PIE_SCRIPT): Define as "yes".
[binutils-gdb.git] / ld / ChangeLog
1 2005-05-17 Lennert Buytenhek <buytenh@wantstofly.org>
2 Peter S. Mazinger" <ps.m@gmx.net>
3
4 * emulparams/armelf_linux.sh (GENERATE_PIE_SCRIPT): Define as "yes".
5 * emulparams/hppalinux.sh (GENERATE_PIE_SCRIPT): Define as "yes".
6
7 2005-05-17 Julian Brown <julian@codesourcery.com>
8
9 * ldlang.c (print_assignment): Do not rely upon a valid result
10 having a section associated with it.
11
12 2005-05-17 Nick Clifton <nickc@redhat.com>
13
14 * ldlang.c (Scan_for_self_assignment): Check an assignment tree to
15 see if the same value is being used on the rhs as on the lhs.
16 (print_assignment): Call scan_for_self_assignment and if it
17 returns true, do no display the result of the computation but
18 instead just the final value of the symbol on the lhs.
19 * ld.texinfo: Document this behaviour and provide an example of
20 when it will happen.
21
22 2005-05-15 Daniel Jacobowitz <dan@codesourcery.com>
23
24 * Makefile.am (AM_MAKEINFOFLAGS): Define.
25 (TEXI2DVI): Define.
26 (ldver.texi): Depend on distributed files instead of built files.
27 (ld.info): Include $(srcdir) in the rule target. Remove actions.
28 (ld.dvi): Remove actions.
29 (MAINTAINERCLEANFILES): Add configdoc.texi.
30 (CONFIG_STATUS_DEPENDENCIES): Add bfd/configure.in.
31 (install-data-local): Renamed from install.
32 (Makefile): Remove explicit dependency.
33 * acinclude.m4: Remove obsolete code.
34 * configure.in: Update AC_PREREQ. Remove extra $CONFIG_SHELL.
35 * Makefile.in, aclocal.m4, config.in, configure: Regenerated.
36
37 2005-05-11 Bob Wilson <bob.wilson@acm.org>
38
39 * scripttempl/elfxtensa.sc: Sync up with elf.sc.
40 * emulparams/elf32xtensa.sh (PLT, GOT): Define.
41
42 2005-05-11 Alan Modra <amodra@bigpond.net.au>
43
44 * ldgram.y: Add SPECIAL token.
45 (sect_constraint): Handle SPECIAL.
46 * ldlang.c (lang_output_section_find_1): Don't match SPECIAL.
47 (map_input_to_output_sections): Likewise.
48 * ldlex.l (SPECIAL): Define.
49 * emulparams/elf32ppc.sh (DATA_GOT, SDATA_GOT, SEPARATE_GOTPLT,
50 GOT, PLT, GOTPLT): Define.
51 * emultempl/ppc32elf.em (old_plt, old_got): New static vars.
52 (ppc_after_open): New function.
53 (PARSE_AND_LIST_PROLOGUE): Define OPTION_OLD_LPT and OPTION_OLD_GOT.
54 (PARSE_AND_LIST_LONGOPTS): Add "bss-plt" and "sdata-got".
55 (PARSE_AND_LIST_OPTIONS): Document them.
56 (PARSE_AND_LIST_ARGS_CASES): Handle them.
57 (LDEMUL_AFTER_OPEN): Define.
58 * scripttempl/elf.sc (PLT): Don't override existing define.
59 (DATA_GOT, SDATA_GOT): Define and use to enable alternate got
60 placement rather than using NO_SMALL_DATA. Emit GOTPLT for RELRO_NOW.
61
62 2005-05-10 Alan Modra <amodra@bigpond.net.au>
63
64 * scripttempl/elf.sc (DATA_SEGMENT_RELRO_GOTPLT_END): Delete.
65 (DATA_SEGMENT_RELRO_END): Use SEPARATE_GOTPLT value.
66 (GOTPLT): Remove DATA_SEGMENT_RELRO_GOTPLT_END. Place after
67 DATA_SEGMENT_RELRO_END in script.
68
69 2005-05-09 H.J. Lu <hongjiu.lu@intel.com>
70
71 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_bound_symbols):
72 Don't use a removed section.
73
74 2005-05-09 H.J. Lu <hongjiu.lu@intel.com>
75
76 * ldmain.c (reloc_overflow): Use output_bfd if the symbol
77 is defined in the ABS section.
78
79 2005-05-06 H.J. Lu <hongjiu.lu@intel.com>
80
81 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_init_fini_syms):
82 Put back !link_info.relocatable.
83
84 2005-05-06 H.J. Lu <hongjiu.lu@intel.com>
85
86 PR 878
87 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_init_fini_syms):
88 Just check link_info.executable.
89
90 2005-05-06 Nick Clifton <nickc@redhat.com>
91
92 * Update the address and phone number of the FSF organization in
93 the GPL notices in the following files:
94 aclocal.m4, deffile.h, deffilep.y, fdl.texi, ld.h, ldcref.c,
95 ldctor.c, ldctor.h, ldemul.c, ldexp.c, ldexp.h, ldfile.c,
96 ldfile.h, 20ldgram.y, ldint.texinfo, ldlang.c, ldlang.h, ldlex.h,
97 ldlex.l, ldmain.c, ldmain.h, ldmisc.c, ldmisc.h, ldver.c, ldver.h,
98 ldwrite.c, ldwrite.h, lexsup.c, mri.c, mri.h, pe-dll.c, pe-dll.h,
99 sysdep.h, emultempl/aix.em, emultempl/alphaelf.em,
100 emultempl/armcoff.em, emultempl/armelf.em, emultempl/beos.em,
101 emultempl/crxelf.em, emultempl/elf32.em, emultempl/generic.em,
102 emultempl/gld960.em, emultempl/gld960c.em, emultempl/hppaelf.em,
103 emultempl/ia64elf.em, emultempl/irix.em, emultempl/linux.em,
104 emultempl/lnk960.em, emultempl/m68hc1xelf.em,
105 emultempl/m68kcoff.em, emultempl/m68kelf.em,
106 emultempl/mipsecoff.em, emultempl/mmix-elfnmmo.em,
107 emultempl/mmixelf.em, emultempl/mmo.em, emultempl/needrelax.em,
108 emultempl/pe.em, emultempl/ppc32elf.em, emultempl/ppc64elf.em,
109 emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em,
110 emultempl/vanilla.em, emultempl/xtensaelf.em
111
112 2005-05-05 H.J. Lu <hongjiu.lu@intel.com>
113
114 * scripttempl/elf.sc: Document the usage of __bss_start.
115
116 2005-05-05 Paul Brook <paul@codesourcery.com>
117
118 * Makefile.am: Add eelf_i386_vxworks.
119 * Makefile.in: Regenerate.
120 * configure.tgt: Make i?86-*-vxworks use targ_emul=elf_i386_vxworks.
121 * emulparams/elf_i386_vxworks.sh: New file.
122 * emulparams/vxworks.sh: New file.
123 * scripttempl/elf.sc: Add DATA_END_SYMBOLS and ETEXT_NAME.
124
125 2005-05-04 H.J. Lu <hongjiu.lu@intel.com>
126
127 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_bound_symbols):
128 Call _bfd_elf_provide_section_bound_symbols.
129
130 2005-05-04 Alan Modra <amodra@bigpond.net.au>
131
132 * ldemul.c: Include bfdlink.h.
133 (ldemul_before_allocation): Assume before_allocation is non-zero.
134 (before_allocation_default): Call strip_excluded_output_sections.
135 * ldlang.c (stripped_excluded_sections): New variable.
136 (lang_add_section): Build input section list for each output
137 section, attached via map_head and map_tail pointers.
138 (strip_excluded_output_sections): Make global. Traverse the
139 input section lists to find which output sections can go. Clear
140 link_order pointers and set stripped_excluded_sections.
141 (lang_process): Call strip_excluded_output_sections.
142 * ldlang.h (strip_excluded_output_sections): Declare.
143 * ldwrite.c: Update throuhout for link_order_head -> map_head change.
144 * emultempl/aix.em (before_allocation): Call
145 strip_excluded_output_sections.
146 * emultempl/armcoff.em (before_allocation): Likewise.
147 * emultempl/beos.em (before_allocation): Likewise.
148 * emultempl/linux.em (before_allocation): Likewise.
149 * emultempl/pe.em (before_allocation): Likewise.
150 * emultempl/sunos.em (before_allocation): Likewise.
151 * emultempl/elf32.em (before_allocation): Likewise. Call
152 bfd_elf_size_dynsym_hash_dynstr too.
153 * emultempl/lnk960.em (lnk960_before_allocation): Delete.
154 (ld_lnk960): Use before_allocation_default.
155
156 2005-05-02 H.J. Lu <hongjiu.lu@intel.com>
157
158 * emultempl/elf32.em (gld${EMULATION_NAME}_strip_empty_section):
159 Updated for bfd_section_list_remove change.
160 * ldlang.c (lang_insert_orphan): Likewise.
161 (strip_excluded_output_sections): Likewise.
162 (sort_sections_by_lma): New.
163 (lang_check_section_addresses): Sort the sections before
164 checking addresses.
165
166 2005-04-29 Ralf Corsepius <ralf.corsepius@rtems.org>
167
168 * configure.tgt: Add h8300*-*-rtemscoff.
169 Switch h8300*-*-rtems* to elf.
170
171 2005-04-29 Ben Elliston <bje@au.ibm.com>
172
173 * ldgram.y (lang_memory_region_type): Make static.
174 (ldgram_want_filename): Likewise.
175 * ldemul.c (ld_emulation): Make static.
176 * ldfile.h (ldfile_find_command_file): Remove extern.
177 * ldfile.c (ldfile_find_command_file): Make static.
178 * ldlang.h (unique_section_list): Remove extern declaration.
179 * ldlang.c (unique_section_list): Make static.
180 * mri.h (symbol_truncate): Remove extern declaration.
181 * mri.c (symbol_truncate): Make static.
182 (order, only_load, address, alias): Likewise.
183 (alignment, subalignment): Likewise.
184
185 2005-04-27 H.J. Lu <hongjiu.lu@intel.com>
186
187 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_bound_symbols):
188 Use the first SEC_ALLOC section which isn't SEC_READONLY or the
189 last SEC_ALLOC section if such a section doesn't exist.
190
191 2005-04-24 Mark Kettenis <kettenis@gnu.org>
192
193 * configure.host: Add *-*-openbsd support.
194
195 2005-04-15 Julian Brown <julian@codesourcery.com>
196
197 * ld.texinfo: Document --use-blx.
198 * emultempl/armelf.em (use_blx): New variable.
199 (arm_elf_create_output_section_statements): Communicate value of
200 use_blx to bfd.
201 (PARSE_AND_LIST_PROLOGUE): Add OPTION_USE_BLX.
202 (PARSE_AND_LIST_OPTIONS): Add --use-blx option.
203 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_USE_BLX case.
204
205 2005-04-14 Alan Modra <amodra@bigpond.net.au>
206
207 * Makefile.am (NO_WERROR): Define. Use instead of -Wno-error.
208 * configure.in: Include ../bfd/warning.m4 contents.
209 * Makefile.in: Regenerate.
210 * configure: Regenerate.
211
212 2005-04-12 Alan Modra <amodra@bigpond.net.au>
213
214 * Makefile.am: Run "make dep-am".
215 (ldgram.o, ldlex.o, deffilep.o): Add -Wno-error to command.
216 * Makefile.in: Regenerate.
217 * config.in: Regenerate.
218
219 2005-04-11 Alan Modra <amodra@bigpond.net.au>
220
221 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Ignore
222 as_needed libs that were not needed.
223 (gld${EMULATION_NAME}_check_needed): Likewise.
224
225 2005-04-07 Nick Clifton <nickc@redhat.com>
226
227 * emultempl/m68kcoff.em: Include ldexp.h and ldlang.h so that
228 ldfile.h can use the lang_input_statement type.
229
230 2005-04-06 Jakub Jelinek <jakub@redhat.com>
231
232 * ldlang.c: Formatting.
233 (walk_wild_consider_section): Remember return value from wildcardp.
234 (is_simple_wild): Use strcspn instead of 2 strpbrk calls and strlen.
235 (wild_spec_can_overlap): Use strcspn instead of strpbrk and strlen.
236
237 2005-04-06 Robert O'Callahan <rocallahan@novell.com>
238
239 * ld.h (lean_section_userdata_type): Remove.
240 (fat_section_userdata_type): Remove file field.
241 (SECTION_USERDATA_SIZE): Remove.
242 * ldlang.c (init_os): Eliminate initialization of unused
243 lean_section_userdata_type.
244
245 * ldlang.h (callback_t, walk_wild_section_handler_t): New
246 typedefs.
247 (struct lang_wild_statement_struct): Add walk_wild_section_handler
248 and handler_data fields.
249 * ldlang.c (callback_t): Removed.
250 (walk_wild_consider_section, walk_wild_section_general,
251 section_iterator_callback, find_section, is_simple_wild,
252 match_simple_wild, walk_wild_section_specs1_wild0,
253 walk_wild_section_specs1_wild1, walk_wild_section_specs2_wild1,
254 walk_wild_section_specs3_wild2, walk_wild_section_specs4_wild2,
255 wild_spec_can_overlap, analyze_walk_wild_section_handler): New
256 functions.
257 (lang_add_wild): Call analyze_walk_wild_section_handler.
258 (walk_wild_section): Renamed to walk_wild_section_general and
259 created a wrapper function.
260 (section_iterator_callback_data): New typedef.
261
262 2005-04-04 Nick Clifton <nickc@redhat.com>
263
264 * configure.in: Add a check for <unistd.h> providing a prototype
265 for getopt() which is compatible with the one in
266 include/getopt.h. If so then define HAVE_DECL_GETOPT.
267 * configure: Regenerate.
268 * config.in (HAVE_DECL_GETOPT): Add.
269 * ldemul.c: Include config.h
270 * lexsup.c: Likewise.
271 * emultempl/elf32.sc: Likewise.
272
273 2005-03-29 Alan Modra <amodra@bigpond.net.au>
274
275 * emultempl/elf32.em (gld${EMULATION_NAME}_layout_sections_again):
276 New function, extracted from static void gld${EMULATION_NAME}_finish.
277 (gld${EMULATION_NAME}_strip_empty_sections): Likewise.
278 (gld${EMULATION_NAME}_provide_init_fini_syms): Likewise.
279 * emultempl/ppc64elf.em: Revert last change.
280 (ppc_layout_sections_again): Use
281 gld${EMULATION_NAME}_layout_sections_again.
282 (ppc_finish): Don't call gld${EMULATION_NAME}_finish. Instead call
283 gld${EMULATION_NAME}_strip_empty_sections and
284 gld${EMULATION_NAME}_provide_init_fini_syms.
285 * emultempl/hppaelf.em: Similarly.
286
287 2005-03-29 Alan Modra <amodra@bigpond.net.au>
288
289 * emultempl/ppc64elf.em (need_laying_out): Delete. Remove all refs.
290 (ppc_finish): Don't call bfd_elf_discard_info.
291 * emultempl/hppaelf.em: Similarly.
292
293 2005-03-24 Nick Clifton <nickc@redhat.com>
294
295 * po/fr.po: Updated French translation.
296
297 2005-03-23 Mike Frysinger <vapier@gentoo.org>
298 Nick Clifton <nickc@redhat.com>
299
300 * configure.host: Accept any C library to accompany a GNU Linux
301 implementation, not just the GNU C library.
302 * configure.tgt: Likewise.
303 * emultempl/elf32.em: Likewise.
304
305 2005-03-22 H.J. Lu <hongjiu.lu@intel.com>
306
307 * emultempl/elf32.em (gld${EMULATION_NAME}_provide_bound_symbols): New
308 (gld${EMULATION_NAME}_finish): Call
309 gld${EMULATION_NAME}_provide_bound_symbols to provide
310 __preinit_array_start, __preinit_array_end, __init_array_start,
311 __init_array_end, __fini_array_start and __fini_array_end.
312
313 * scripttempl/elf.sc: Don't provide __preinit_array_start,
314 __preinit_array_end, __init_array_start, __init_array_end,
315 __fini_array_start nor __fini_array_end.
316
317 2005-03-23 Alan Modra <amodra@bigpond.net.au>
318
319 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Set
320 SEC_EXCLUDE on .gnu.warning sections.
321
322 2005-03-22 Alan Modra <amodra@bigpond.net.au>
323
324 * scripttempl/elf.sc (SBSS): Don't provide sbss start and end syms.
325
326 2005-03-21 Alan Modra <amodra@bigpond.net.au>
327
328 * emultempl/ppc32elf.em (gld${EMULATION_NAME}_after_allocation): New
329 function.
330 (LDEMUL_AFTER_ALLOCATION): Define.
331
332 2005-03-21 Alan Modra <amodra@bigpond.net.au>
333
334 * emultempl/ppc64elf.em (ppc_finish): Rename from
335 gld${EMULATION_NAME}_finish. Call gld${EMULATION_NAME}_finish.
336 (LDEMUL_FINISH): Update.
337 * emultempl/hppaelf.em (hppaelf_finish, LDEMUL_FINISH): Likewise.
338 * emultempl/m68hc1xelf.em (m68hc11elf_finish, LDEMUL_FINISH): Likewise.
339
340 2005-03-18 Julian Brown <julian@codesourcery.com>
341
342 * scripttempl/armbpapi.sc (.rel.dyn): Add .rel.init_array,
343 .rel.fini_array.
344 (.rela.dyn): Add .rela.init_array, .rela.fini_array.
345 (SECTIONS): Add .rel.other, .rela.other, .reli.other after PLT relocs.
346
347 2005-03-18 H.J. Lu <hongjiu.lu@intel.com>
348
349 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Don't set
350 bfd_section when removing unused empty output sections for
351 non-relocatable link.
352
353 2005-03-19 Alan Modra <amodra@bigpond.net.au>
354
355 * ldlang.c (lang_insert_orphan): Use old section_tail rather than
356 traversing the bfd section list to find pointer to new section.
357
358 2005-03-18 Alan Modra <amodra@bigpond.net.au>
359
360 * scripttempl/elf.sc: When CREATE_SHLIB, put .sdata2 and .sbss2
361 input sections into .sdata and .sbss output respectively.
362
363 2005-03-16 David Heine <dlheine@tensilica.com>
364 Bob Wilson <bob.wilson@acm.org>
365
366 * ldlang.c (IGNORE_SECTION): Remove check for zero size.
367 (lang_check_section_addresses): Ignore zero size sections here.
368
369 2005-03-16 H.J. Lu <hongjiu.lu@intel.com>
370
371 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Remove
372 unused empty output sections for non-relocatable link.
373
374 * ld.h (args_type): Remove gc_sections.
375
376 * ldlang.c (lang_mark_used_section): New.
377 (lang_gc_sections): Use link_info.gc_sections instead of
378 command_line.gc_sections.
379 * ldmain.c (main): Likewise.
380 * lexsup.c (parse_args): Likewise.
381 * ldlang.c (lang_process): Call lang_mark_used_section.
382
383 * ldmain.c (main): Initialize link_info.gc_sections to FALSE.
384
385 2005-03-16 Nick Clifton <nickc@redhat.com>
386 Ben Elliston <bje@au.ibm.com>
387
388 * configure.in (werror): New switch: Add -Werror to the
389 compiler command line. Enabled by default. Disable via
390 --disable-werror.
391 * configure: Regenerate.
392
393 2005-03-16 Alan Modra <amodra@bigpond.net.au>
394
395 * emulparams/elf32ppclinux.sh (OTHER_READWRITE_SECTION): Delete.
396 (OTHER_RELRO_SECTIONS): Set this instead.
397
398 2005-03-15 Nick Clifton <nickc@redhat.com>
399
400 * NEWS: Add cutoff for changes in 2.16 release.
401
402 2005-03-15 Mikkel Krautz <krautz@gmail.com>
403
404 * configure.tgt (x86_64-elf): Add target.
405
406 2005-03-15 Alan Modra <amodra@bigpond.net.au>
407
408 * po/es.po: Commit new Spanish translation.
409
410 2005-03-14 Alan Modra <amodra@bigpond.net.au>
411
412 * ldexp.c (exp_fold_tree): Ensure return value is initialized.
413 Tidy etree_assert case.
414
415 2005-03-14 Alan Modra <amodra@bigpond.net.au>
416
417 * po/tr.po: Commit new Turkish translation.
418
419 2005-03-11 Daniel Jacobowitz <dan@codesourcery.com>
420
421 * Makefile.am: Remove references to em68klynx.o and esparclynx.o.
422 * Makefile.in: Regenerated.
423 * emulparams/m68klynx.sh, emulparams/sparclynx.sh: Remove.
424
425 2005-03-07 Nick Clifton <nickc@redhat.com>
426
427 * po/fr.po: Updated translation.
428
429 2005-03-05 Alan Modra <amodra@bigpond.net.au>
430
431 * po/ld.pot: Regenerate.
432
433 2005-03-02 Jan Beulich <jbeulich@novell.com>
434
435 * ldmain.c (remove_output): Use unlink_if_ordinary instead of unlink.
436 * pe-dll.c (pe_dll_generate_implib): Likewise.
437
438 2005-02-24 Ben Elliston <bje@au.ibm.com>
439
440 * ldfile.c: Remove GNU960 conditional code.
441 * emultempl/gld960.em: Likewise.
442 * emultempl/gld960c.em: Likewise.
443 * emultempl/lnk960.em: Likewise.
444
445 2005-02-24 Nick Clifton <nickc@redhat.com>
446
447 * emultempl/lnk960.em (lnk960_before_parse): Remove redundant
448 empty string from calls to concat.
449
450 2005-02-23 Nick Clifton <nickc@redhat.com>
451
452 * emultempl/lnk960.em (lnk960_before_parse): Terminate list of
453 arguments passed to concat() with a NULL.
454
455 * emultempl/m68kcoff.em: Include ldexp.h and ldlang.h because they
456 define types needed by ldfile.h
457
458 2005-02-23 Alan Modra <amodra@bigpond.net.au>
459
460 * pe-dll.c: Warning fixes.
461 * emultempl/sunos.em: Likewise.
462
463 2005-02-22 Daniel Jacobowitz <dan@codesourcery.com>
464
465 * ldlang.c (section_already_linked): Don't call
466 bfd_section_already_linked for dynamic objects.
467
468 2005-02-22 Alan Modra <amodra@bigpond.net.au>
469
470 * ldexp.c: Warning fixes.
471 * ldwrite.c: Likewise.
472 * emultempl/elf32.em: Likewise.
473
474 2005-02-21 H.J. Lu <hongjiu.lu@intel.com>
475
476 * ldlang.c (lang_add_section): Check SEC_TIC54X_BLOCK for TI
477 tic54x input only.
478 (lang_size_sections_1): Check SEC_COFF_SHARED_LIBRARY for COFF
479 and ECOFF output only.
480
481 2005-02-21 Alan Modra <amodra@bigpond.net.au>
482
483 * config.in: Regenerate.
484 * configure: Regenerate.
485
486 2005-02-17 Zack Weinberg <zack@codesourcery.com>
487
488 * ldexp.c (assigning_to_dot): New global flag.
489 (fold_name): If assigning_to_dot is true, object immediately to
490 an undefined symbol.
491 (exp_fold_tree): Set and clear assigning_to_dot around the
492 recursive call to exp_fold_tree to process the right-hand side
493 of an assignment to the location counter.
494
495 2005-02-17 Paul Brook <paul@codesourcery.com>
496
497 * scripttempl/armbpabi.sc: Add dummy name to version block.
498
499 2005-02-17 Alan Modra <amodra@bigpond.net.au>
500
501 * ldexp.c (new_abs): Init new.str.
502
503 2005-02-15 Mark Mitchell <mark@codesourcery.com>
504
505 * configure.in (AC_CHECK_FUNCS): Add glob.
506 * configure: Regenerated.
507 * emultempl/elf32.em (<glob.h>): Do not include if HAVE_GLOB is
508 not defined.
509 (gld${EMULATION_NAME}_parse_ld_so_conf_include): Do not use glob
510 if HAVE_GLOB is not defined.
511
512 2005-02-16 Kaz Kojima <kkojima@rr.iij4u.or.jp>
513
514 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Define
515 lib_path if NATIVE is yes.
516
517 2005-02-16 Alan Modra <amodra@bigpond.net.au>
518
519 * emultempl/ppc64elf.em (ppc_create_output_section_statements): Make
520 an error creating fake bfd fatal.
521 (ppc_before_allocation): Continue on after errors.
522 (gld${EMULATION_NAME}_finish): Likewise.
523
524 2005-02-15 Nick Clifton <nickc@redhat.com>
525
526 * ldlex.l (YY_NO_UNPUT): Define so that the yy_unput function is
527 not declared. It is not used and its presence causes a compile
528 time warning.
529
530 2005-02-11 Zack Weinberg <zack@codesourcery.com>
531
532 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed):
533 If st.st_ino is zero, do not treat the library as a duplicate.
534
535 2005-02-10 Jakub Jelinek <jakub@redhat.com>
536
537 * emultempl/hppaelf.em (hppaelf_create_output_section_statements):
538 Set BFD_LINKER_CREATED on the stubs bfd.
539 * emultempl/ppc64elf.em (ppc_create_output_section_statements):
540 Likewise.
541
542 2005-02-08 Mark Mitchell <mark@codesourcery.com>
543
544 * scripttempl/armbpabi.sc (VERSION): Make special section symbols
545 local.
546 (Image$$ER_RO$$Base): Define whenever RELOCATING.
547 (Image$$ER_RO$$Limit): Likewise.
548 (SHT$$INIT_ARRAY$$Base): Likewise.
549 (SHT$$INIT_ARRAY$$Limit): Likeise.
550
551 2005-02-10 Ben Elliston <bje@au.ibm.com>
552
553 * emultempl/beos.em: Remove #if 0 and #if 1 blocks.
554
555 2005-02-08 Richard Sandiford <rsandifo@redhat.com>
556
557 * configure.tgt (mips64*el-*-linux-gnu*): Define targ_extra_libpath
558 to include o32 and n64 emulations.
559 (mips64*-*-linux-gnu*): Likewise.
560
561 2005-02-08 Hans-Peter Nilsson <hp@axis.com>
562
563 * ldmain.c (warning_callback, warning_find_reloc): Prepend
564 "warning: " to warning messages.
565
566 2005-02-04 Alan Modra <amodra@bigpond.net.au>
567
568 * emultempl/elf32.em (gld${EMULATION_NAME}_find_exp_assignment): Don't
569 look up symbol for etree_provide here.
570
571 2005-02-02 Daniel Jacobowitz <dan@codesourcery.com>
572
573 * emulparams/elf32bmip.sh (TEXT_DYNAMIC): Always set.
574
575 2005-02-01 Edward Welbourne <eddy@opera.com>
576 Nick Clifton <nickc@redhat.com>
577
578 * ld.texinfo (Source Code Reference): New node describing how to
579 access linker script defined variables from source code.
580
581 2005-02-01 Alan Modra <amodra@bigpond.net.au>
582
583 * ld.texinfo: Clarify --as-needed operation.
584
585 2005-01-31 Andrew Cagney <cagney@gnu.org>
586
587 * configure: Regenerate to track ../gettext.m4.
588
589 2005-01-31 Nick Clifton <nickc@redhat.com>
590
591 * ldver.c (ldversion): Bump reported copyright date to 2005.
592
593 2005-01-31 Nick Clifton <nickc@redhat.com>
594
595 * configure.tgt: Remove obsolete targets m68k-lynxos and
596 sparc-lynxos.
597
598 2005-01-28 Julian Brown <julian@codesourcery.com>
599
600 * emultempl/armelf.em (fix_v4bx): New variable.
601 (arm_elf_create_output_section_statements): Communicate fix_v4bx flag
602 value to bfd.
603 (PARSE_AND_LIST_PROLOGUE): Add option token OPTION_FIX_V4BX.
604 (PARSE_AND_LIST_LONGOPTS): Add option --fix-v4bx.
605 (PARSE_AND_LIST_OPTIONS): Add option --fix-v4bx.
606 (PARSE_AND_LIST_ARGS_CASES): Add option OPTION_FIX_V4BX.
607 * NEWS: Mention --fix-v4bx.
608 * ld.texinfo: Document --fix-v4bx.
609
610 2005-01-25 Mark Mitchell <mark@codesourcery.com>
611
612 * emulparams/armsymbian.sh (OTHER_READONLY_SECTIONS): Define, so
613 as to include .ARM.exidx$${Base,Limit}.
614 * ld/scripttempl/armbpabi.sc: Move .plt to end of text segment.
615 Define IMAGE$$ER_RO$${Base,Limit} and SHT$$INIT_ARRAY$${Base,Limit}.
616 Put .init_array, .fini_array, etc. into the read-only data
617 segment.
618
619 2005-01-25 Alan Modra <amodra@bigpond.net.au>
620
621 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Formatting.
622 (gld${EMULATION_NAME}_after_open): Ignore needed libs if they were
623 only needed by an as-needed lib that didn't get linked.
624
625 2005-01-23 Alan Modra <amodra@bigpond.net.au>
626
627 * ld.texinfo (Output Section Keywords <CONSTRUCTORS>): Correct
628 __DTOR_LIST__ description.
629
630 2005-01-23 Alan Modra <amodra@bigpond.net.au>
631
632 * ld.texinfo (Location Counter <dot outside sections>): Document
633 effects of orphan section placement, and ". = ." workaround.
634 * Makefile.in: Regenerate.
635
636 2005-01-22 Richard Sandiford <rsandifo@redhat.com>
637
638 * emulparams/elf32bmip.sh (OTHER_GOT_SECTIONS): Add ". = .;".
639 * emulparams/elf32bmipn32-defs.sh (OTHER_GOT_SECTIONS): Likewise.
640
641 2005-01-21 Jakub Jelinek <jakub@redhat.com>
642
643 * ldgram.y (AS_NEEDED): New token.
644 (input_list): Handle AS_NEEDED ( input_list ).
645 * ldlex.l (AS_NEEDED): Add.
646 * ld.texinfo: Document AS_NEEDED ().
647 * NEWS: Mention AS_NEEDED ().
648
649 2005-01-21 Ben Elliston <bje@au.ibm.com>
650
651 * ldlang.c (lang_reasonable_defaults): Remove.
652 (lang_process): Don't call lang_reasonable_defaults.
653
654 * ldexp.c (exp_assop): Remove #if 0'd code.
655 (exp_print_tree): Likewise.
656 * ldlang.c (lang_memory_region_lookup): Likewise.
657 (open_output): Likewise.
658 (lang_do_assignments_1): Likewise.
659 (lang_place_orphans): Likewise.
660 (lang_enter_output_section_statement): Likewise.
661 (lang_reasonable_defaults): Likewise.
662 * ldlang.h (struct lang_input_statement_struct): Likewise.
663 * mri.c (mri_draw_tree): Likewise.
664 (mri_load): Likewise.
665 * pe-dll.c (generate_reloc): Likewise.
666 (make_import_fixup_entry): Likewise.
667 (pe_as16): Likewise.
668 * emultempl/beos.em (set_pe_subsystem): Likewise.
669 * emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
670 * emultempl/pe.em: Likewise.
671 * emultempl/xtensaelf.em (xtensa_colocate_literals): Likewise.
672
673 2005-01-20 Daniel Jacobowitz <dan@codesourcery.com>
674
675 * Makefile.am (ALL_EMULATIONS): Add earmelfb_linux_eabi.o.
676 (earmelfb_linux_eabi.c): New target.
677 * Makefile.in: Regenerated.
678 * configure.tgt (arm*b-*-linux-gnueabi): New target.
679 * emulparams/armelfb_linux_eabi.sh: New file.
680
681 2005-01-20 Nick Hudson <skrll@netbsd.org>
682
683 PR ld/676
684 * emultempl/hppaelf.em (hppaelf_create_output_section_statements):
685 Handle bfd_elf32_hppa_nbsd_vec.
686
687 2005-01-19 Richard Sandiford <rsandifo@redhat.com>
688
689 * ldmain.h (ld_sysroot): Change type to a constant string.
690 * ldmain.c (ld_sysroot): Likewise.
691 (get_relative_sysroot, get_sysroot): New functions, adding command-line
692 support for changing the sysroot.
693 (main): Call the new functions.
694 * lexsup.c (OPTION_SYSROOT): New.
695 (ld_options): Add --sysroot.
696 (parse_args): Add a dummy handler for it.
697 * ld.texinfo (--sysroot): Document.
698 * NEWS: Mention the new --sysroot option.
699
700 2005-01-18 Alan Modra <amodra@bigpond.net.au>
701
702 * ldlang.c (section_already_linked): Adjust bfd_link_just_syms call.
703 (lang_place_orphans): Don't abort on just_syms_flag, instead call
704 bfd_link_just_syms.
705
706 2005-01-16 Danny Smith <dannysmith@users.sourceforge.net>
707
708 * defilep.y (def_name, def_library): Combine into...
709 (def_image_name): New function. Strip name to basename,
710 with warning.
711
712 2005-01-12 Mark Kettenis <kettenis@gnu.org>
713
714 * configure.in: Be sure to invoke config.sub using the shell.
715 * configure: Regenerate.
716
717 2005-01-11 Alan Modra <amodra@bigpond.net.au>
718
719 * configure.host: Correct sed patterns for last change.
720
721 2005-01-10 Nick Clifton <nickc@redhat.com>
722
723 PR binutils/609
724 * ldmisc.c (vfinfo): Add an extra argument: is_warning. Use this
725 to determine whether config.make_executable should be set to FALSE in
726 conjunction with config.fatal_warnings.
727 (info_msg, minfo, lfinof): Pass FALSE as the extra argument.
728 (einfo): Pass TRUE as the extra argument.
729
730 2005-01-10 Greg Schaffer <gschafer@zip.com.au>
731
732 * configure.host (linux targets): Use "${CC} -dumpspecs" instead
733 of "${CC} --print-file-name=specs" to appease GCC versions >= 4.0.
734 (ia64-*-aix): Delete - this target is obsolete, and would be
735 broken by this patch.
736
737 2005-01-06 Eric Botcazou <ebotcazou@libertysurf.fr>
738
739 * configure.host (sparc*-*-solaris2*): Rename into sparc-*-solaris2*.
740 (sparc64-sun-solaris2*): New host.
741
742 2005-01-06 Paul Brook <paul@codesourcery.com>
743
744 * Makefie.am: Add earmelf_vxworks.
745 * Makefile.in: Regenerate.
746 * configure.tgt: Make arm-*-vxworks a separate case.
747 * emulparams/armelf_vxworks.sh: New function.
748
749 2005-01-06 Alan Modra <amodra@bigpond.net.au>
750
751 * emultempl/ppc64elf.em (no_multi_toc): New var.
752 (gld${EMULATION_NAME}_finish): Pass to ppc64_elf_setup_section_lists.
753 (OPTION_NO_MULTI_TOC): Define.
754 (PARSE_AND_LIST_LONGOPTS): Add --no-multi-toc support.
755 (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
756
757 2005-01-05 Nick Clifton <nickc@redhat.com>
758
759 PR binutils/614
760 * ldmisc.c (vfinfo): Alter output to conform to the GNU Coding
761 Standard's specification for parsable error messages.
762
763 2005-01-04 Paul Brook <paul@codesourcery.com>
764
765 * Makefile.am: Correct dependency for earmsymbian.c.
766 * Makefile.in: Regenerate.
767
768 2004-12-28 Danny Smith <dannysmith@users.sourceforge.net>
769
770 * emultempl/pe.em (set_pe_subsystem): Change second arg to
771 lang_add_entry to FALSE.
772
773 2004-12-23 Nick Clifton <nickc@redhat.com>
774
775 PR 600
776 * emulparams/shelf.sh (.stack): Increase stack start address to
777 0x300000.
778
779 2004-12-20 Nick Clifton <nickc@redhat.com>
780
781 * ldmain.c (main): Issue an error message if -static and -shared
782 are used together.
783
784 2004-12-17 Jakub Jelinek <jakub@redhat.com>
785
786 * ldexp.h (exp_data_seg): Add min_base and maxpagesize fields.
787 * ldexp.c (fold_binary) <case DATA_SEGMENT_ALIGN>: Initialize them.
788 * ldlang.c (lang_size_sections): Use them to avoid wasting virtual
789 address space at DATA_SEGMENT_ALIGN. Fix computation of expected
790 PT_GNU_RELRO segment end.
791
792 2004-12-14 P.J. Darcy <darcypj@us.ibm.com>
793
794 * configure.tgt: Add s390x-ibm-tpf support.
795
796 2004-12-16 Martin Kögler <mkoegler@auto.tuwien.ac.at>
797
798 * ldmisc.c (vfinfo): Handle the case where %B is passed a NULL
799 BFD.
800
801 2004-12-07 Ben Elliston <bje@gnu.org>
802
803 * ldemul.h: Forward declare struct option.
804
805 2004-12-01 Danny Smith <dannysmith@users.sourceforge.net>
806
807 * scripttempl/pe.sc (.data): Add .jcr subsection.
808
809 2004-11-30 Paul Brook <paul@codesourcery.com>
810
811 * emultempl/armelf.em: Ignore -p and -no-pipeline-knowledge.
812
813 2004-11-30 Tero Niemela <tero_niemela@yahoo.com>
814
815 * Makefile.am: Change LOCALEDIR to $(datadir)/share.
816 * Makefile.in: Regenerate.
817
818 2004-11-26 Melissa Mears <asterisk@graces.dricas.com>
819
820 * emultempl/pe.em: Add --subsystem:xbox as well as
821 --subsystem:%d.
822 * ld.texinfo: (ld_options): Document acceptance of subsystem xbox
823 and numeric subsystems.
824
825 2004-11-24 Alan Modra <amodra@bigpond.net.au>
826
827 * ldexp.c (fold_name): Correct PR 338 fix.
828
829 2004-11-19 Mark Mitchell <mark@codesourcery.com>
830
831 * Makefile.am (ALL_EMULATIONS): Add earmelf_linux_eabi.o.
832 (earmelf_linux_eabi.c): New target.
833 * configure.tgt (arm*-*-linux-gnueabi): Handle it.
834 * emulparams/armelf_linux_eabi.sh: New file.
835 * Makefile.in: Regenerated.
836
837 2004-11-19 Nick Clifton <nickc@redhat.com>
838
839 PR 518
840 * ld.texinfo (MEMORY): Update the descriptions of the ORIGIN and
841 LENGTH fields in the MEMORY command, to explicitly state that
842 symbols cannot be used in their expressions.
843
844 2004-11-19 Jon Beniston <jon@beniston.com>
845
846 * ld/ldlex.l: Allow ORIGIN and LENGTH in EXPRESSION.
847 * ld/ldgram.y: Add ORIGIN and LENGTH expressions.
848 * ld/ldexp.c (fold_name): Implement LENGTH() and ORIGIN() functions
849 which return the length and origin of a memory.
850 * ld/ld.texinfo: Document LENGTH() and ORIGIN() functions.
851 * NEWS: Mention support for ORIGIN and LENGTH operators.
852
853 2004-11-17 Daniel Jacobowitz <dan@codesourcery.com>
854
855 * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Don't use
856 a dynamic object for stubs.
857
858 2004-11-04 Paul Brook <paul@codesourcery.com>
859
860 * ld.texinfo: Document --default-imported-symver.
861 * ldmain.c (main): Set link_info.default_imported_symver.
862 * lexsup.c (option_values): Add OPTION_DEFAULT_IMPORTED_SYMVER.
863 (ld_options): Add --default-imported-symver.
864 (parse_args): Handle OPTION_DEFAULT_IMPORTED_SYMVER.
865
866 2004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
867 Vineet Sharma <vineets@noida.hcltech.com>
868
869 * Makefile.am: Add entries for new maxq-coff target.
870 * Makefile.in: Regenerate.
871 * configure.tgt: Add support for maxq.
872 * emulparams/maxqcoff.sh: New File.
873 * scripttempl/maxqcoff.sc: New linker script for target maxq.
874 * NEWS: Mention the new target.
875
876 2004-11-04 Daniel Jacobowitz <dan@debian.org>
877
878 * Makefile.am (ALL_EMULATIONS): Remove earmelf_oabi.o.
879 (earmelf_oabi.c): Remove rule.
880 * configure.tgt: Remove arm-*-oabi and thumb-*-oabi.
881 * emulparams/armelf_oabi.sh, emultempl/armelf_oabi.em: Delete files.
882 * Makefile.in: Regenerated.
883
884 2004-11-04 Hans-Peter Nilsson <hp@axis.com>
885
886 * configure.tgt (crisv32-*-*): Handle like cris-*-* for non-aout.
887 * emulparams/criself.sh (INIT_START): Remove emitted "push srp".
888 (FINI_START): Ditto.
889 (INIT_END): Remove emitted "jump [sp+]".
890 (FINI_END): Ditto.
891
892 2004-11-04 Alan Modra <amodra@bigpond.net.au>
893
894 * emultempl/ppc64elf.em (no_tls_opt): Rename from notlsopt.
895 (no_opd_opt, no_toc_opt): New static vars.
896 (ppc_before_allocation): Don't edit opt if no_opd_opt. Call
897 ppc64_elf_edit_toc.
898 (OPTION_NO_OPD_OPT, OPTION_NO_TOC_OPT): Define.
899 (PARSE_AND_LIST_LONGOPTS): Add no-opd-optimize and no-toc-optimize.
900 (PARSE_AND_LIST_OPTIONS): Describe new options.
901 (PARSE_AND_LIST_ARGS_CASES): Handle them.
902
903 2004-10-27 Nick Clifton <nickc@redhat.com>
904
905 * emultempl/alphaelf.em (alpha_after_parse): Add extra, NULL,
906 parameter to invocation of lang_section_start.
907 * emultempl/aix.em (_handle_option): Likewise.
908
909 * Makefile.am (eelf64alpha.c, eelf64alpha_fbsd.c,
910 eelf64alpha_nbsd.c): Add dependency upon emultempl/alphaelf.em.
911 * Makefile.in: Regenerate.
912
913 2004-10-26 Mark Mitchell <mark@codesourcery.com>
914
915 * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Do not emit
916 __exidx_{start,end} when not relocating.
917
918 2004-10-25 Mark Mitchell <mark@codesourcery.com>
919
920 * Makefile.in (earmsymbian.c): Depend on armbpabi.sc, not elf.sc.
921 * ldexp.h (segment_type): New type.
922 (segments): New variable.
923 * ldexp.c (segments): New variable.
924 (exp_print_token): Handle SEGMENT_START.
925 (fold_binary): Likewise.
926 * ldgram.y (SEGMENT_START): Declare it as a token.
927 (exp): Handle SEGMENT_START.
928 * ldlang.h (lang_address_statement_type): Add segment field.
929 (lang_section_start): Change prototype.
930 * ldlang.c (map_input_to_output_sections): Do not process section
931 assignments if a corresponding SEGMENT_START has already been
932 seen.
933 (lang_section_start): Add segment parameter.
934 * ldlex.l (SEGMENT_START): Add it.
935 * lexsup.c (seg_segment_start): New function.
936 (parse_args): Use it for -Tbss, -Tdata, and -Ttext.
937 * ld.texinfo (SEGMENT_START): Document it.
938 * emulparams/armsymbian.sh (EMBEDDED): Set it.
939 * scripttempl/armbpabi.sc: Use SEGMENT_START to control segment
940 base addresses. Do not map relocations.
941 * NEWS: Mention SEGMENT_START.
942
943 2004-10-26 Paul Brook <paul@codesourcery.com>
944
945 * ld.texinfo: Document --default-symver.
946 * ldmain.c (main): Set link_info.create_default_symver.
947 * lexsup.c (enum option_values): Add OPTION_DEFAULT_SYMVER.
948 (ld_options): Add default-symver.
949 (parse_args): Handle OPTION_DEFAULT_SYMVER.
950
951 2004-10-24 Danny Smith <dannysmith@users.sourceforge.net>
952
953 * pe-dll.c (process_def_file): Don't export all symbols by default if
954 building a position-independent executable.
955
956 2004-10-21 H.J. Lu <hongjiu.lu@intel.com>
957
958 PR 463
959 * ldmain.c (reloc_overflow): Accept a pointer to struct
960 bfd_link_hash_entry. Report symbol location for relocation
961 overflow.
962
963 2004-10-21 H.J. Lu <hongjiu.lu@intel.com>
964
965 * genscripts.sh (libpath.exp): Really generate for first
966 emulation only.
967
968 2004-10-19 Danny Smith <dannysmith@users.sourceforge.net>
969
970 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Simplify
971 comparison and replacement of filenames.
972
973 2004-10-19 H.J. Lu <hongjiu.lu@intel.com>
974
975 PR 459
976 * ldlang.c (load_symbols): Use the same -Bdynamic/-Bstatic
977 option on linker script as the one for linker script.
978
979 2004-10-16 Daniel Jacobowitz <dan@debian.org>
980
981 * ldlang.c (struct excluded_lib, excluded_libs, add_excluded_libs)
982 (check_excluded_libs): New.
983 (load_symbols): Call check_excluded_libs.
984 * ldlang.h (add_excluded_libs): New prototype.
985 * emultempl/elf32.em (OPTION_EXCLUDED_LIBS): Define.
986 (gld${EMULATION_NAME}_add_options): Add --exclude-libs.
987 (gld${EMULATION_NAME}_handle_option): Handle --exclude-libs.
988 * ld.texinfo (Command Line Variables): Document --exclude-libs.
989 (Options Specific to i386 PE Targets): Remove --exclude-libs.
990
991 2004-10-15 Alan Modra <amodra@bigpond.net.au>
992
993 * ldexp.c (exp_fold_tree): Don't immediately exit ld on a
994 failing link script assert.
995
996 * ldctor.c (ldctor_add_set_entry): Fix comment typo.
997
998 2004-10-14 H.J. Lu <hongjiu.lu@intel.com>
999
1000 PR 445
1001 * emulparams/elf64_ia64.sh (SMALL_DATA_CTOR): Set.
1002 (SMALL_DATA_DTOR): Set.
1003 * emulparams/elf64_ia64_fbsd.sh (SMALL_DATA_CTOR): Unset.
1004 (SMALL_DATA_DTOR): Unset.
1005 * scripttempl/elf.sc: If SMALL_DATA_CTOR is set, move .ctors
1006 after .data. If SMALL_DATA_DTOR is set, move .dtors after
1007 .data.
1008
1009 2004-10-14 Alan Modra <amodra@bigpond.net.au>
1010
1011 PR 63
1012 * ldlang.h (lang_output_section_statement_type): Make "next" a
1013 struct lang_output_section_statement_struct *.
1014 (struct orphan_save): Move from elf32.em. Add "name" and "flags".
1015 (lang_output_section_find_by_flags, lang_insert_orphan): Declare.
1016 * ldlang.c (lang_output_section_find_1): Adjust for changed
1017 output_section_statement "next".
1018 (strip_excluded_output_sections): Likewise.
1019 (lang_record_phdrs): Likewise.
1020 (lang_output_section_find_by_flags): New function.
1021 (output_prev_sec_find): Move from pe.em. Adjust iterator.
1022 (lang_insert_orphan): New function. Tail end of elf32.em's
1023 place_orphan merged with that from pe.em. Allow bfd_section to
1024 be placed first. New heuristic for placing new output section
1025 statement in existing script, and accompanying split of __start
1026 symbol alignment into a separate assignment to dot.
1027 (lang_add_section): Consistently use output->bfd_section rather than
1028 an alias, section->output_section.
1029 (map_input_to_output_sections): Rename overly long arg. Move
1030 initialization of data_statement output section to here..
1031 (lang_check_section_addresses): ..from here.
1032 (print_assignment): Correct printing of etree_assert.
1033 (print_all_symbols): Don't bomb if userdata is NULL.
1034 (IGNORE_SECTION): Rearrange.
1035 * emultempl/elf32.em (output_rel_find): Adjust interator.
1036 (output_prev_sec_find): Delete.
1037 (struct orphan_save): Delete.
1038 (gld${EMULATION_NAME}_place_orphan): Cater for zero bfd_section
1039 flags without creating a duplicate output section statement.
1040 Revise code holding history of various orphan section placements.
1041 Allow orphan sections to place before script specified output
1042 sections. Call lang_output_section_find_by_flags when placement
1043 by name fails. Use lang_insert_orphan.
1044 * emultempl/mmo.em (output_prev_sec_find): Delete.
1045 (struct orphan_save): Delete.
1046 (mmo_place_orphan): Revise code holding history of orphan placement.
1047 Allow orphans to place before existing output sections. Use
1048 lang_insert_orphan.
1049 * emultempl/pe.em (output_prev_sec_find): Delete.
1050 (struct orphan_save): Delete.
1051 (gld_${EMULATION_NAME}_place_orphan): Revise to suit use of
1052 lang_insert_orphan.
1053
1054 2004-10-13 Mark Mitchell <mark@codesourcery.com>
1055
1056 * scripttempl/armbpabi.sc: Do not put .gnu.version.* into a
1057 loadable segment.
1058
1059 2004-10-13 Alan Modra <amodra@bigpond.net.au>
1060
1061 PR 44
1062 * ldcref.c (check_section_sym_xref): Delete.
1063 (check_local_sym_xref): New function.
1064 (check_nocrossrefs): Adjust call.
1065 * emultempl/pe.em (struct orphan_save): Add os_tail.
1066 (place_orphan): Backport assorted fixes from elf32.em.
1067
1068 2004-10-12 Bob Wilson <bob.wilson@acm.org>
1069
1070 * emultempl/xtensaelf.em: Use ISO C90 formatting.
1071
1072 2004-10-11 Jakub Jelinek <jakub@redhat.com>
1073
1074 * emultempl/elf32.em (gld${EMULATION_NAME}_parse_ld_so_conf): Avoid
1075 getline for portability.
1076
1077 * emultempl/elf32.em (gld${EMULATION_NAME}_ld_so_conf): New structure.
1078 (gld${EMULATION_NAME}_parse_ld_so_conf,
1079 gld${EMULATION_NAME}_parse_ld_so_conf_include): New functions.
1080 (gld${EMULATION_NAME}_check_ld_so_conf): Use them.
1081
1082 2004-10-11 Alan Modra <amodra@bigpond.net.au>
1083
1084 PR 423
1085 * ldfile.c (ldfile_try_open_bfd): Ensure dynamic objects are
1086 rejected when linking statically.
1087
1088 2004-10-08 Daniel Jacobowitz <dan@debian.org>
1089
1090 * configure.tgt: Include elf_x86_64 for i[3-7]86-*-solaris2*.
1091
1092 2004-10-07 Bob Wilson <bob.wilson@acm.org>
1093
1094 * ld.texinfo (Xtensa): Describe new linker relaxation to optimize
1095 assembler-generated longcall sequences. Describe new --size-opt
1096 option.
1097 * emulparams/elf32xtensa.sh (OTHER_SECTIONS): Add .xt.prop section.
1098 * emultempl/xtensaelf.em (remove_section,
1099 replace_insn_sec_with_prop_sec, replace_instruction_table_sections,
1100 elf_xtensa_after_open): New.
1101 (OPTION_OPT_SIZEOPT, OPTION_LITERAL_MOVEMENT,
1102 OPTION_NO_LITERAL_MOVEMENT): Define.
1103 (elf32xtensa_size_opt, elf32xtensa_no_literal_movement): New globals.
1104 (PARSE_AND_LIST_LONGOPTS): Add size-opt and [no-]literal-movement.
1105 (PARSE_AND_LIST_OPTIONS): Add --size-opt.
1106 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_OPT_SIZEOPT,
1107 OPTION_LITERAL_MOVEMENT, and OPTION_NO_LITERAL_MOVEMENT.
1108 (LDEMUL_AFTER_OPEN): Set to elf_xtensa_after_open.
1109 * scripttempl/elfxtensa.sc: Update with changes from elf.sc.
1110 * Makefile.am (eelf32xtensa.c): Update dependencies.
1111 * Makefile.in: Regenerate.
1112
1113 2004-10-07 Jeff Baker <jbaker@qnx.com>
1114
1115 * lexsup.c: Handle --warn-shared-textrel option.
1116 (ld_options): Restore alpha sorting of options.
1117 * ldmain.c (main): Initialise warn_shared_info field to FALSE.
1118 * ld.texinfo: Add documentation for --warn-shared-textrel.
1119 * NEWS: Added mention of --warn-shared-textrel option.
1120
1121 2004-10-05 Tomer Levi <Tomer.Levi@nsc.com>
1122
1123 * emultempl/crxelf.em (disable_relaxation): Add.
1124 (crxelf_before_allocation): Enable --relax option by default.
1125 (PARSE_AND_LIST_PROLOGUE): Add OPTION_NO_RELAX.
1126 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --no-relax.
1127 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NO_RELAX.
1128
1129 2004-10-04 H.J. Lu <hongjiu.lu@intel.com>
1130
1131 * NEWS: Mention SORT_BY_NAME, SORT_BY_ALIGNMENT and
1132 --sort-section name|alignment.
1133
1134 * ld.texinfo: Document SORT_BY_NAME, SORT_BY_ALIGNMENT and
1135 --sort-section name|alignment.
1136
1137 * ld.h (sort_type): New enum.
1138 (wildcard_spec): Change the type of `sorted' to sort_type.
1139
1140 * ldgram.y (SORT): Removed.
1141 (SORT_BY_NAME): Added.
1142 (SORT_BY_ALIGNMENT): Added.
1143 (wildcard_spec): Updated `sorted'. Handle SORT_BY_NAME and
1144 SORT_BY_ALIGNMENT.
1145 (input_section_spec_no_keep): Updated `sorted'.
1146 (statement): Replace SORT with SORT_BY_NAME.
1147
1148 * ldlang.c (compare_section): New function to compare 2
1149 sections with different sorting schemes.
1150 (wild_sort): Updated. Use compare_section.
1151 (update_wild_statements): New function.
1152 (lang_process): Call update_wild_statements before
1153 map_input_to_output_sections.
1154
1155 * ldlex.l (SORT_BY_NAME): New.
1156 (SORT_BY_ALIGNMENT): New.
1157 (SORT): Return SORT_BY_NAME.
1158
1159 * ldmain.c (sort_section): New. Defined.
1160 (main): Initialize it to none.
1161
1162 * lexsup.c (option_values): Add OPTION_SORT_SECTION.
1163 (ld_options): Add an entry for OPTION_SORT_SECTION.
1164 (parse_args): Handle OPTION_SORT_SECTION.
1165
1166 * mri.c (mri_draw_tree): Updated `sorted'.
1167
1168 2004-10-04 Jakub Jelinek <jakub@redhat.com>
1169
1170 * ldgram.y (DATA_SEGMENT_RELRO_END): Add one argument.
1171 * scripttempl/elf.sc (DATA_SEGMENT_RELRO_END): Add 0 as first
1172 argument.
1173 (DATA_SEGMENT_RELRO_GOTPLT_END): Pass $SEPARATE_GOTPLT as first
1174 and . as second argument.
1175 (GOTPLT): Move $DATA_SEGMENT_RELRO_GOTPLT_END before the section.
1176 * ldexp.c (fold_unary): Remove DATA_SEGMENT_RELRO_END handling here.
1177 (fold_binary): Add it here. Insert padding to make relro_end
1178 COMMONPAGESIZE bytes aligned. For DATA_SEGMENT_ALIGN in
1179 exp_dataseg_relro_adjust phase just use previously computed
1180 exp_data_seg.base.
1181 * ldlang.c (lang_size_sections): Set exp_data_seg.base for
1182 relro_adjust here. Call lang_size_sections_1 once more if there
1183 was too big padding at DATA_SEGMENT_RELRO_END.
1184 * ld.texinfo (DATA_SEGMENT_RELRO_END): Add documentation.
1185
1186 2004-10-01 Paul Brook <paul@codesourcery.com>
1187
1188 * emulparams/armelf.sh: Add unwinding table sections.
1189
1190 2004-09-30 Filip Navara <navaraf@reactos.com>
1191
1192 * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Generate
1193 correct base address for position independant executables.
1194 * pe-dll.c (pe_dll_fill_sections): Don't mark position independant
1195 executables as DLLs.
1196
1197 2004-09-30 Paul Brook <paul@codesourcery.com>
1198
1199 * ld.texinfo: Document --target2=abs.
1200 * emulparms/armsymbian.sh (TARGET2_TYPE): Set.
1201
1202 2004-09-29 Nick Clifton <nickc@redhat.com>
1203
1204 * scripttempl/xstormy16.sc: Only perform the assignments to the
1205 ROM region when not performing a relocatable link. The ROM region
1206 does not start at address 0, but the sections will.
1207 * Makefile.am: Fix linker script dependency for the generation of
1208 eelf32xstormy16.c.
1209 * Makefile.in: Regenerate.
1210
1211 2004-09-18 Filip Navara <navaraf@reactos.com>
1212
1213 * emulparams/arm_epoc_pe.sh, emulparams/armpe.sh, emulparams/i386pe.sh,
1214 emulparams/i386pe_posix.sh, emulparams/mcorepe.sh,
1215 emulparams/mipspe.sh, emulparams/ppcpe.sh, scripttempl/pe.sc: Define
1216 TARGET_PAGE_SIZE.
1217 * scripttempl/pe.sc: Make the virtual address and file offset synced if
1218 the alignment is lower than the target page size.
1219
1220 2004-09-27 Filip Navara <navaraf@reactos.com>
1221
1222 * emultempl/pe.em (gld_${EMULATION_NAME}_unrecognized_file): Allow
1223 def_file_parse to handle pe_def_file if NULL and prevent crash with
1224 invalid .def files.
1225
1226 2004-09-27 Alan Modra <amodra@bigpond.net.au>
1227
1228 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Enable
1229 --emit-stub-syms automatically when --emit-relocs.
1230
1231 2004-09-24 Paul Brook <paul@codeosurcery.com>
1232
1233 * scripttempl/elf.sc: Keep .preinit_array, .init_array and
1234 .fini_array sections.
1235
1236 2004-09-19 Andreas Schwab <schwab@suse.de>
1237
1238 * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: Adjust data segment
1239 base so that relro end is suitably aligned.
1240
1241 2004-09-17 Paul Brook <paul@codesourcery.com>
1242
1243 * ld.texinfo: Rename arm-specific section. Document --target*
1244 * emulparams/armelf_fbsd.sh: Set TARGET2_TYPE.
1245 * emulparams/armelf_linux.sh: Ditto.
1246 * emulparams/armelf_nbsd.sh: Ditto.
1247 * emultempl/armelf.em: Set default for TARGET2_TYPE.
1248 (target2_type): New variable.
1249 (arm_elf_before_allocation): Don't pass target1_type.
1250 (arm_elf_create_output_section_statements): New function.
1251 (PARSE_AND_LIST_PROLOGUE): Add OPTION_TARGET2.
1252 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --target=.
1253 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_TARGET2.
1254 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Set.
1255 * emultempl/armelf_oabi.em (_before_allocation): Remove extra
1256 argument to bfd_elf32_arm_process_before_allocation.
1257
1258 2004-09-17 Alan Modra <amodra@bigpond.net.au>
1259
1260 * ldexp.c (fold_name): Update u.undef.next refs.
1261 * emultempl/pe.em: Likewise.
1262 * emultempl/sunos.em: Likewise.
1263
1264 2004-09-17 Alan Modra <amodra@bigpond.net.au>
1265
1266 * Makefile.am: Run "make dep-am".
1267 * Makefile.in: Regenerate.
1268 * config.in: Regenerate.
1269 * configure: Regenerate.
1270 * aclocal.m4: Regenerate.
1271 * po/ld.pot: Regenerate.
1272
1273 2004-09-16 Tomer Levi <Tomer.Levi@nsc.com>
1274
1275 * scripttempl/elf32crx.sc (.init): Add KEEP for section's *personality*.
1276 (.fini): Likewise.
1277 (.jcr): Likewise.
1278
1279 2004-09-16 Alan Modra <amodra@bigpond.net.au>
1280
1281 * emultempl/armelf_oabi.em (before_allocation): Add extra zero param
1282 to bfd_elf32_arm_process_before_allocation call.
1283
1284 2004-09-13 Paul Brook <paul@codesourcery.com>
1285
1286 * emulparams/armsymbian.sh: Set TARGET1_IS_REL.
1287 * emultempl/armelf.em: Use TARGET1_IS_REL. Add --target1-{rel,abs}.
1288
1289 2004-09-07 H.J. Lu <hongjiu.lu@intel.com>
1290
1291 * configure: Regenerated with autconfig 2.13.
1292
1293 2004-09-07 Andreas Schwab <schwab@suse.de>
1294
1295 * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: Apply data segment
1296 alignment before adjusting DATA_SEGMENT_RELRO_END.
1297
1298 2004-09-06 Mark Mitchell <mark@codesourcery.com>
1299
1300 * emulparams/armsymbian.sh: Use armbpabi script.
1301 * scripttempl/armbpabi.sc: New script.
1302
1303 2004-09-02 Mark Mitchell <mark@codesourcery.com>
1304
1305 * Makefile.am (ALL_EMULATIONS): Add earmsymbian.o.
1306 (earmsymbian.c): New target.
1307 * configure.tgt: Use armsymbian emulation for arm*-*-symbianelf*.
1308 * Makefile.in: Regenerated.
1309 * aclocal.m4: Likewise.
1310 * configure: Likewise.
1311 * emulparams/armsymbian.sh: New file.
1312
1313 2004-09-03 Tomer Levi <Tomer.Levi@nsc.com>
1314
1315 * scripttempl/elf32crx.sc: Edit file with comments.
1316 (.init): Add new section.
1317 (.fini): Likewise.
1318 (.ctor): Control the linkage order.
1319 (.dtor): Likewise.
1320
1321 2004-08-27 Nick Clifton <nickc@redhat.com>
1322
1323 * emultempl/pe.em (after_open): Do not assume that either bfd is
1324 an archive.
1325
1326 2004-08-26 Alan Modra <amodra@bigpond.net.au>
1327
1328 * ldlang.c (lang_init): Don't compare with TRUE.
1329
1330 2004-08-25 Dmitry Diky <diwil@spec.ru>
1331
1332 * emulparams/msp430all.sh: Fix RAM sizes for all targets.
1333 * scripttempl/elf32msp430.sc: Add .profiler section definition.
1334
1335 2004-08-24 H.J. Lu <hongjiu.lu@intel.com>
1336
1337 * ldlang.c (wildcardp): Defined as a macro with strpbrk.
1338
1339 2004-08-19 Mark Mitchell <mark@codesourcery.com>
1340
1341 * configure.tgt (arm*-*-symbianelf*): New target.
1342 (arm*-*-eabi*): Likewise.
1343
1344 2004-08-19 Jakub Jelinek <jakub@redhat.com>
1345
1346 * emultempl/ppc64elf.em (non_overlapping_opd): New variable.
1347 (ppc_before_allocation): Pass it to ppc64_elf_edit_opd).
1348 (OPTION_NON_OVERLAPPING_OPD): Define.
1349 (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Add
1350 --non-overlapping-opd option.
1351
1352 2004-08-18 Alan Modra <amodra@bigpond.net.au>
1353
1354 PR 338
1355 * ldexp.c (fold_name): Don't call bfd_link_add_undef if the symbol
1356 was already on the undefs list.
1357
1358 2004-08-17 Alan Modra <amodra@bigpond.net.au>
1359
1360 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Dot
1361 prefix the symbol field too.
1362
1363 2004-08-13 Alan Modra <amodra@bigpond.net.au>
1364
1365 * ldmain.c (link_callbacks): Remove "error_handler".
1366 * ldmisc.c: Include elf-bfd.h.
1367 (vfinfo): Sort comment. Handle %A. Use %A instead of
1368 bfd_get_section_indent.
1369 (error_handler): Delete.
1370 * ldmisc.h (error_handler): Delete declaration.
1371
1372 2004-08-10 Alan Modra <amodra@bigpond.net.au>
1373
1374 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Call
1375 ppc64_elf_restore_symbols.
1376
1377 2004-08-09 Alan Modra <amodra@bigpond.net.au>
1378
1379 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Error if
1380 .toc is too large on relocatable linking.
1381
1382 2004-08-09 Alan Modra <amodra@bigpond.net.au>
1383
1384 * emultempl/ppc64elf.em (ppc_after_open): Delete.
1385 (LDEMUL_AFTER_OPEN): Don't define.
1386
1387 2004-08-02 Stephane Carrez <stcarrez@nerim.fr>
1388
1389 * ld.texinfo (Top): Document specific options of 68HC11 and 68HC12.
1390
1391 2004-08-01 Stephane Carrez <stcarrez@nerim.fr>
1392
1393 * scripttempl/elfm68hc12.sc: Align text, rodata and data section
1394 on power of 2.
1395
1396 2004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
1397
1398 * emulparams/hppanbsd.sh (OUTPUT_FORMAT): Set to "elf32-hppa-netbsd".
1399
1400 2004-07-26 Dmitry Diky <diwil@spec.ru>
1401
1402 * Makefile.am: Add new subtargets: msp430x1610, msp430x1611,
1403 msp430x1612, msp430x415, msp430x417, msp430xG437, msp430xG438,
1404 msp430xG439.
1405 * configure.tgt: Likewise.
1406 * emulparams/msp430all.sh: Likewise.
1407 * Makefile.in: Regenerate.
1408
1409 2004-07-23 Nick Clifton <nickc@redhat.com>
1410
1411 * emultempl/elf32.em (_place_orphan): Use an already existing
1412 section name if that section does not have any flags set.
1413
1414 2004-07-21 H.J. Lu <hongjiu.lu@intel.com>
1415
1416 * ldlang.c (already_linked_hash_entry): Removed.
1417 (already_linked): Likewise.
1418 (already_linked_table): Likewise.
1419 (section_already_linked): Call bfd_section_already_linked.
1420 (lang_process): Replace already_linked_table_init with
1421 bfd_section_already_linked_table_init and check return. Replace
1422 already_linked_table_free with bfd_section_already_linked_table_free.
1423
1424 2004-07-21 Nick Clifton <nickc@redhat.com>
1425
1426 * ldlang.c (init_os): Make sure that the newly allocated userdata
1427 structure is zeroed out.
1428
1429 2004-07-19 H.J. Lu <hongjiu.lu@intel.com>
1430
1431 * NEWS: Mention the new --add-needed/--no-add-needed and
1432 --as-needed/--no-as-needed options.
1433
1434 2004-07-19 H.J. Lu <hongjiu.lu@intel.com>
1435
1436 * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): Also
1437 check the add_needed field.
1438 (dt_needed): New struct.
1439 (gld${EMULATION_NAME}_try_needed): Change the first argument
1440 to a pointer to struct dt_needed. Check the DYN_NO_ADD_NEEDED
1441 bit in the file where the DT_NEEDED entry comes from.
1442 (gld${EMULATION_NAME}_search_needed): Change the second
1443 argument to a pointer to struct dt_needed.
1444 (gld${EMULATION_NAME}_check_ld_so_conf): Updated.
1445 (gld${EMULATION_NAME}_after_open): Likewise.
1446
1447 * ld.texinfo: Add --add-needed document.
1448 * ldlang.c (new_afile): Set p->add_needed.
1449 * ldlang.h (lang_input_statement_type): Add add_needed field.
1450 * ldmain.h (add_needed): Declare.
1451 * ldmain.c (add_needed): New global var.
1452 * lexsup.c (option_values): Add OPTION_ADD_NEEDED and
1453 OPTION_NO_ADD_NEEDED.
1454 (ld_options): Likewise.
1455 (parse_args): Handle them.
1456
1457 2004-07-13 Christof Petig <christof@petig-baender.de>
1458
1459 * emultempl/pe.em (make_import_fixup): Use bfd_get_32 to correct
1460 for endian-ness of extracted addend.
1461
1462 2004-07-13 Danny Smith <dannysmith@usesr.sourceforge.net>
1463
1464 * pe-dll.c (auto_export): Filter on just the import prefix,
1465 "_imp_", not "_imp__".
1466
1467 2004-07-09 Nick Clifton <nickc@redhat.com>
1468
1469 * configure.tgt: Change sh-sybmian-elf to sh-*-symbianelf.
1470
1471 2004-07-06 Tomer Levi <Tomer.Levi@nsc.com>
1472
1473 * Makefile.am (ALL_EMULATIONS): Add eelf32crx.o.
1474 (eelf32crx.c): New target.
1475 * Makefile.in: Regenerate.
1476 * configure.tgt: Handle crx-*-elf*.
1477 * emulparams/elf32crx.sh: New file.
1478 * emultempl/crxelf.em: New file.
1479 * scripttempl/elf32crx.sc: New file.
1480 * NEWS: Mention new target.
1481
1482 2004-07-06 Nick Clifton <nickc@redhat.com>
1483
1484 * Makefile.am: Add eshlsymbian.c.
1485 * Makefile.in: Regenerate.
1486 * configure.tgt: Add sh*-symbian-elf target.
1487 * emulparams/shlsymbian.sh: New file. Configure the
1488 sh-symbian-elf linker scripts.
1489 * scripttemp/elf32sh-symbian.sc: New file. Linker script
1490 template for the sh-symbian-elf target.
1491
1492 2004-07-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1493
1494 * emulparams/hppa64linux.sh: Define PLT_BEFORE_GOT.
1495 * emulparams/hppalinux.sh: Likewise.
1496 * scripttempl/elf.sc: Place .plt just before .got when .plt is in
1497 data segment and PLT_BEFORE_GOT is defined.
1498
1499 2004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1500
1501 * ld.texinfo (WIN32): Document PE weak symbols.
1502
1503 2004-07-02 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1504
1505 * emulparams/shlelf32_linux.sh (COMMONPAGESIZE): Set to 4KB.
1506
1507 2004-07-01 H.J. Lu <hongjiu.lu@intel.com>
1508
1509 * ldmisc.c (vfinfo): Call bfd_get_section_ident to identify
1510 the section.
1511
1512 2004-06-29 Alan Modra <amodra@bigpond.net.au>
1513
1514 * ldlang.c (lang_reset_memory_regions): Save last relax pass section
1515 size in rawsize.
1516
1517 2004-06-24 Alan Modra <amodra@bigpond.net.au>
1518
1519 * ldlang.c (print_output_section_statement): Don't print size before
1520 relaxation.
1521 (IGNORE_SECTION): Remove bfd arg. Update all callers.
1522
1523 * ldexp.c (fold_name): .. See below.
1524 * ldlang.c (section_already_linked, print_output_section_statement,
1525 print_input_section, insert_pad, size_input_section,
1526 lang_check_section_addresses, lang_size_sections_1,
1527 lang_size_sections, lang_do_assignments_1, lang_set_startof,
1528 lang_one_common, lang_reset_memory_regions, lang_process,
1529 lang_abs_symbol_at_end_of, lang_do_version_exports_section): ..
1530 * ldwrite.c (build_link_order, clone_section, ds, split_sections): ..
1531 * pe-dll.c (process_def_file, generate_reloc): ..
1532 * emultempl/elf32.em (gld${EMULATION_NAME}_find_statement_assignment,
1533 gld${EMULATION_NAME}_before_allocation): ..
1534 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): ..
1535 * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation,
1536 sh64_elf_${EMULATION_NAME}_after_allocation): ..
1537 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): ..
1538 * emultempl/xtensaelf.em (ld_assign_relative_paged_dot,
1539 ld_local_file_relocations_fit, ld_xtensa_insert_page_offsets): Use
1540 "size" instead of "_raw_size" and "_cooked_size". Expand
1541 bfd_section_size macro invocations.
1542
1543 2004-06-22 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1544
1545 * ld/scripttemp/pe.sc (.CRT): Define ___crt_xc_start__,
1546 ___crt_xc_end__, ___crt_xi_start__, ___crt_xi_end__, ___crt_xl_start__,
1547 ___crt_xp_start__, ___crt_xp_end__, ___crt_xt_start__ and
1548 ___crt_xt_end__.
1549 (.tls): Define ___tls_start__ and ___tls_end__.
1550
1551 2004-06-21 Alexandre Oliva <aoliva@redhat.com>
1552
1553 * emulparams/elf32frvfd.sh (GENERATE_PIE_SCRIPT): Set to yes.
1554
1555 2004-06-18 Adam Nemet <anemet@lnxw.com>
1556
1557 * configure.in: Set EXTRA_SHLIB_EXTENSION to .a for LynxOS.
1558 * configure: Regenerate.
1559
1560 2004-06-15 Jakub Jelinek <jakub@redhat.com>
1561
1562 * scripttempl/elf.sc: Readd KEEP and .gcc_except_table.* to
1563 .gcc_except_table output sections lost accidentally with
1564 -z relro patch.
1565
1566 2004-06-15 Alan Modra <amodra@bigpond.net.au>
1567
1568 * ldwrite.c (build_link_order): Use bfd_get_section_size
1569 instead of bfd_get_section_size_before_reloc or _raw_size.
1570 * pe-dll.c (process_def_file): Likewise.
1571
1572 2004-06-14 Alan Modra <amodra@bigpond.net.au>
1573
1574 From Richard Wirth <r.wirth@wirthware.de>
1575 * ldlang.c (lang_finish): Don't free lang_definedness_table.
1576
1577 2004-05-29 Alan Modra <amodra@bigpond.net.au>
1578
1579 * ldlang.c (gc_section_callback): Move SEC_EXCLUDE twiddles..
1580 (lang_gc_sections): .. to a LANG_FOR_EACH_INPUT_STATEMENT loop here.
1581
1582 2004-05-28 Alan Modra <amodra@bigpond.net.au>
1583
1584 * ldlang.c: Formatting. Wrap long lines, expand bfd_get_section_flags
1585 throughout file.
1586 * lexsup.c: Formatting. Wrap long lines.
1587 * ldwrite.c: Update copyright date.
1588
1589 * ldlang.c (lang_add_section): Don't twidlle SEC_EXCLUDE here.
1590 (output_section_callback): Nor SEC_KEEP here.
1591 (gc_section_callback): Twiddle SEC_EXCLUDE here.
1592 (lang_gc_wild): Delete. Fold into..
1593 (lang_gc_sections_1): ..here. Only call bfd_gc_sections when garbage
1594 collecting.
1595 (lang_process): Always call lang_gc_sections.
1596 (lang_place_orphans): Handle SEC_EXCLUDE sections.
1597 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
1598 SEC_EXCLUDE code.
1599
1600 2004-05-26 H.J. Lu <hongjiu.lu@intel.com>
1601
1602 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Clear
1603 SEC_EXCLUDE on non-SEC_DEBUGGING sections for relocatable link.
1604 * ldlang.c (lang_add_section): Likewise.
1605
1606 2004-05-26 Alan Modra <amodra@bigpond.net.au>
1607
1608 * ldlang.c (lang_add_section): Set SEC_EXCLUDE for SEC_GROUP
1609 sections when doing a final link. Clear SEC_EXCLUDE when doing
1610 a relocable link, except for SEC_DEBUGGING sections.
1611 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Use the
1612 same condition here to drop SEC_EXCLUDE orphan sections.
1613
1614 2004-05-25 Alan Modra <amodra@bigpond.net.au>
1615
1616 * ldlang.c (lang_process): Call bfd_merge_sections later, and
1617 only when not a relocatable link.
1618 (print_input_section): Handle SEC_EXCLUDE sections.
1619 (size_input_section): Don't update dot on SEC_EXCLUDE sections.
1620 (lang_do_assignments_1): Likewise.
1621 * ldwrite.c (build_link_order): Ignore SEC_EXCLUDE input sections.
1622 * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Likewise.
1623 * emultempl/hppaelf.em (build_section_lists): Likewise.
1624 * emultempl/ppc64elf.em (build_toc_list): Likewise.
1625 (build_section_lists): Likewise.
1626
1627 2004-05-23 Andreas Schwab <schwab@suse.de>
1628
1629 * ld.texinfo (Options): Fix typo in last change.
1630
1631 2004-05-21 Andy Chittenden <achittenden@bluearc.com>
1632
1633 * ld.h (ld_config_type): Add new field: hash_table_size.
1634 * ldmain.c: Initialise the new field to zero. If it is non-zero
1635 after parsing the linker's command line call
1636 bfd_hash_set_default_size.
1637 * lexsup.c (option_values): Add OPTION_HASH_SIZE.
1638 (ld_options): Add hash-size.
1639 (parse_args): Parse --hash-size option. Allow
1640 --reduce-memory-overheads to set the default hash table size as
1641 well.
1642 * ld.texinfo: Document the new switch. Also mention that
1643 --reduce-memory-overheads can affect the hash table size.
1644 * NEWS: Mention the new feature.
1645
1646 2004-05-19 J"orn Rennecke <joern.rennecke@superh.com>
1647
1648 * NEWS: Mention new linker map file generation and the
1649 --reduce-memory-overheads option.
1650 * ld.texinfo: Document --reduce-memory-overheads option.
1651 * ld.h (map_symbol_def): New struct.
1652 (struct user_section_struct, section_userdata_type): Rename to:
1653 (struct lean_user_section_struct, lean_section_userdata_type).
1654 (struct fat_user_section_struct, fat_section_userdata_type): New.
1655 (SECTION_USERDATA_SIZE): Define.
1656 (args_type): New member reduce_memory_overheads.
1657 * ldlang.c (map_obstack): New static variable.
1658 (init_map_userdata, print_all_symbols, sort_def_symbol): New functions.
1659 (lang_map): Unless command_line.reduce_memory_overheads is set,
1660 initialize lists of defined symbols for each section.
1661 (print_input_section): Unless command_line.reduce_memory_overheads
1662 is set, use print_all_symbols.
1663 (init_os): Use lean_section_userdata_type / SECTION_USERDATA_SIZE.
1664 * ldmain.c (main): Initialize command_line.reduce_memory_overheads.
1665 * lexsup.c (enum option_values): Add OPTION_REDUCE_MEMORY_OVERHEADS.
1666 (ld_options): Add entry for --reduce-memory-overheads.
1667 (parse_args): Handle OPTION_REDUCE_MEMORY_OVERHEADS.
1668
1669 2004-05-19 Jakub Jelinek <jakub@redhat.com>
1670
1671 * ldgram.y (sect_constraint): New.
1672 (ONLY_IF_RO, ONLY_IF_RW): New tokens.
1673 (section): Add sect_constraint. Pass additional argument
1674 to lang_enter_output_section_statement.
1675 * mri.c (mri_draw_tree): Pass additional argument to
1676 lang_enter_output_section_statement.
1677 * emultempl/pe.em (place_orphan): Likewise.
1678 (output_prev_sec_find): Disregard output section statements with
1679 constraint == -1.
1680 * emultempl/mmo.em (output_prev_sec_find): Likewise.
1681 (mmo_place_orphan): Pass additional argument to
1682 lang_enter_output_section_statement.
1683 * emultempl/elf32.em (output_prev_sec_find): Disregard output section
1684 statements with constraint == -1.
1685 (place_orphan): Pass additional argument to
1686 lang_enter_output_section_statement.
1687 * ldlang.c (lang_enter_overlay_section): Likewise.
1688 (lang_output_section_find_1): New.
1689 (lang_output_section_find): Use it.
1690 (lang_output_section_statement_lookup_1): New.
1691 (lang_output_section_statement_lookup): Use it.
1692 (check_section_callback, check_input_sections): New.
1693 (map_input_to_output_sections): Check if all input sections
1694 are readonly if ONLY_IF_RO or ONLY_IF_RW was seen.
1695 (strip_excluded_output_sections): Disregard output section statements
1696 with constraint == -1.
1697 (lang_record_phdrs): Likewise.
1698 (lang_enter_output_section_statement): Add constraint argument.
1699 Use lang_output_section_statement_lookup_1.
1700 * ldlang.h (lang_output_section_statement_type): Add constraint
1701 and all_input_readonly fields.
1702 (lang_enter_output_section_statement): Adjust prototype.
1703 * ldlex.l (ONLY_IF_RO, ONLY_IF_RW): New tokens.
1704 * scripttempl/elf.sc (.eh_frame, .gcc_except_table): Move into text
1705 segment if all input sections are readonly.
1706
1707 2004-05-19 Adam Nemet <anemet@lnxw.com>
1708
1709 * scripttempl/i386lynx.sc: Remove file.
1710
1711 2004-05-17 Bob Wilson <bob.wilson@acm.org>
1712
1713 * ld.texinfo (Output Section Address): Correct subsection name.
1714
1715 2004-05-17 Adam Nemet <anemet@lnxw.com>
1716
1717 * configure.tgt (powerpc-*-lynxos* case): New case.
1718 * configure.host (i[3-7]86-*-lynxos* case): Remove case.
1719 * emulparams/ppclynx.sh: New file.
1720 * emulparams/i386lynx.sh (SCRIPT_NAME): Update to LynxOS 4.0.
1721 * Makefile.am (ALL_EMULATIONS): Add eppclynx.o
1722 (ei386lynx.c): Update rule to LynxOS 4.0 ELF.
1723 (eppclynx.c): New rule.
1724 * Makefile.in: Regenerate.
1725
1726 2004-05-13 Joel Sherrill <joel@oarcorp.com>
1727
1728 * configure.tgt (or32-*-rtems*): Switch to elf and
1729 support versioned targets.
1730
1731 2004-05-13 Nick Clifton <nickc@redhat.com>
1732
1733 * po/fr.po: Updated French translation.
1734
1735 2004-05-11 Jakub Jelinek <jakub@redhat.com>
1736
1737 * genscripts.sh: Generate -z combreloc -z now -z relro scripts
1738 for binaries, -shared and -pie.
1739 * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set.
1740 * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set.
1741 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to...
1742 (OTHER_RELRO_SECTIONS): ... this.
1743 * ldlex.l (DATA_SEGMENT_RELRO_END): Add.
1744 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
1745 -z relro and -z norelro.
1746 (gld${EMULATION_NAME}_list_options): Add it to usage.
1747 (gld${EMULATION_NAME}_get_script): Return -z combreloc -z now
1748 -z relro scripts when appropriate.
1749 * scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set.
1750 Create separate .got.plt section if SEPARATE_GOTPLT.
1751 Move sections which are only written during relocation handling
1752 to the beginning of RW segment. If NO_SMALL_DATA, move .got
1753 before .data. Add DATA_SEGMENT_RELRO_END directive.
1754 Include OTHER_RELRO_SECTIONS.
1755 * ldgram.y (DATA_SEGMENT_RELRO_END): Add.
1756 * ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END.
1757 (fold_unary): Likewise.
1758 (fold_binary): Handle -z relro.
1759 * ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and
1760 exp_dataseg_relro_adjust phases. Add relro_end field.
1761 * ldmain.c (main): Initialize link_info.relro to FALSE.
1762 * ldlang.c (lang_size_sections): Handle -z relro.
1763
1764 2004-05-08 Marek Michalkiewicz <marekm@amelek.gda.pl>
1765
1766 * scripttempl/avr.sc: Do not set LMA for "eeprom" section.
1767
1768 2004-05-07 J"orn Rennecke <joern.rennecke@superh.com>
1769
1770 * ldlang.c (print_padding_statement): Cast size_t to bfd_vma
1771 before printing it with %W.
1772
1773 2004-05-07 Brian Ford <ford@vss.fsi.com>
1774 DJ Delorie <dj@redhat.com>
1775
1776 * emultempl/pe.em (real_flags): New static.
1777 (OPTION_LARGE_ADDRESS_AWARE): New define.
1778 (gld${EMULATION_NAME}_add_options): Add --large-address-aware option.
1779 (gld_${EMULATION_NAME}_list_options): Likewise.
1780 (gld${EMULATION_NAME}_handle_option): Likewise.
1781 (gld_${EMULATION_NAME}_after_open): Pass real_flags to PE private data.
1782 * ld.texinfo: Document it.
1783 * NEWS: Mention it.
1784
1785 2004-05-07 Brian Ford <ford@vss.fsi.com>
1786
1787 * NEWS: Mention DWARF 2 support for i386pe.
1788
1789 2004-05-05 Alexandre Oliva <aoliva@redhat.com>
1790
1791 * emulparams/elf32frvfd.sh (OUTPUT_FORMAT): Switch to new
1792 elf32-frvfdpic.
1793
1794 2004-04-30 Alan Modra <amodra@bigpond.net.au>
1795
1796 * ldlang.c (unique_section_p): Pass section parm, return true on
1797 group sections.
1798 (output_section_callback): Adjust.
1799 * ldlang.h (unique_section_p): Update prototype.
1800 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust.
1801
1802 2004-04-30 Eric Botcazou <ebotcazou@act-europe.fr>
1803
1804 * ld.texinfo (--gc-sections): Remove restriction for
1805 dynamic linking.
1806
1807 2004-04-29 Brian Ford <ford@vss.fsi.com>
1808
1809 * scripttempl/pe.sc: Handle .debug* and .gnu.linkonce.wi.* sections
1810 for DWARF 2/3. Update stab section's syntax.
1811
1812 2004-04-29 Alan Modra <amodra@bigpond.net.au>
1813
1814 * pe-dll.c: Revert changes accidentally committed 2004-03-08.
1815 (fill_edata): Correct pointer arithmetic.
1816
1817 2004-04-21 Chris Demetriou <cgd@broadcom.com>
1818
1819 * ld.texinfo: Remove MIPS --embedded-relocs documentation.
1820 * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Remove definition.
1821 * emulparams/mipsidt.sh (TEMPLATE_NAME): Use generic.em.
1822 (EXTRA_EM_FILE): Use mipsecoff.em
1823 * emulparams/mipsidtl.sh (TEMPLATE_NAME): Use generic.em.
1824 (EXTRA_EM_FILE): Use mipsecoff.em
1825 * emultempl/mipsecoff.em: Restructure to be included as an
1826 extra emulation file.
1827 (check_sections, gld${EMULATION_NAME}_after_open)
1828 (gld${EMULATION_NAME}_after_allocation)
1829 (gld${EMULATION_NAME}_get_script)
1830 (ld_${EMULATION_NAME}_emulation): Remove
1831 (gld${EMULATION_NAME}_before_parse): Rename to...
1832 (mipsecoff_before_parse): This.
1833 (LDEMUL_BEFORE_PARSE): Define.
1834 * emultempl/mipself.em: Remove file.
1835 * scripttempl/mips.sc (.rel.sdata): Do not include in output.
1836 (__runtime_reloc_start, __runtime_reloc_stop): Stop providing
1837 these symbols.
1838 * Makefile.am: Remove dependencies on emultempl/mipself.em.
1839 * Makefile.in: Regenerate.
1840
1841 2004-04-21 Anil Paranjpe <anilp1@kpitcummins.com>
1842
1843 * ld.texinfo (synthesizing on H8/300): Information about linker
1844 relaxation support for bit manipulation instructions and system
1845 control instructions is added.
1846
1847 2004-04-21 Hans-Peter Nilsson <hp@axis.com>
1848
1849 * NEWS: Mention change in DEFINED semantics.
1850
1851 2004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
1852
1853 * scripttempl/elf.sc (.text): Add KEEP for .text.*personality*.
1854 (.data): Add KEEP for .gnu.linkonce.d.*personality*.
1855 (.gcc_except_table): Add KEEP for self and accept .gcc_except_table.*.
1856
1857 2004-04-21 Ben Elliston <bje@au.ibm.com>
1858
1859 * ld.texinfo (Simple Example): Add missing punctuation.
1860
1861 2004-04-20 Chris Demetriou <cgd@broadcom.com>
1862
1863 * NEWS: Note that MIPS --embedded-relocs option is deprecated.
1864
1865 2004-04-19 Jakub Jelinek <jakub@redhat.com>
1866
1867 * ldlang.c (lang_do_assignments_1): Handle .tbss output section
1868 specially.
1869
1870 2004-04-18 Danny Smith <dannysmith@users.sourceforge.net>
1871
1872 * scriptempl/pe.sc: Put numbered .ctors.* after .ctors
1873 with default priority. Likewise for dtors.
1874
1875 2004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1876
1877 * configure.host: Remove mips*-dec-bsd* target.
1878 * configure.tgt: Likewise.
1879
1880 2004-04-08 Richard Sandiford <rsandifo@redhat.com>
1881
1882 * emulparams/elf32bsmip.sh (EXTRA_EM_FILE): Define to irix.
1883 * emulparams/elf64bmip.sh (EXTRA_EM_FILE): Likewise.
1884 * emulparams/elf32bmipn32.sh (EXTRA_EM_FILE): Likewise.
1885 * emultempl/irix.em: New file.
1886 * Makefile.am (eelf32bsmip.c, eelf32bmipn32.c, eelf64bmip.c): Update
1887 dependencies.
1888 * Makefile.in: Regenerate.
1889
1890 2004-04-01 Paul Brook <paul@codesourcery.com>
1891
1892 * emultempl/armelf.em (byteswap_code): Add.
1893 (arm_elf_before_allocation): Pass extra parameter.
1894 (PARSE_AND_LIST_PROLOGUE): Add OPTION_BE8.
1895 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add be8.
1896 (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_BE8.
1897 * emultempl/armelf_oabi.em: Pass extra parameter.
1898 * ld.texinfo: Document --be8.
1899
1900 2004-03-30 Stan Shebs <shebs@apple.com>
1901
1902 Remove long-obsolete MPW support.
1903 * mpw-config.in, mpw-make.sed, mac-ld.r: Remove files.
1904 * Makefile.am (mpw): Remove file-presynthesizing actions.
1905 * Makefile.in: Likewise.
1906 * ldfile.c (slash): Remove MPW case.
1907 * ldlex.l [MPW]: Remove unused definition.
1908
1909 2004-03-30 Galit Heller <Galit.Heller@nsc.com>
1910
1911 * Makefile.am (ALL_EMULATIONS): Add eelf32cr16c.o.
1912 (eelf32cr16c.c): New target.
1913 * Makefile.in: Regenerate.
1914 * configure.tgt: Handle cr16c-*-elf*.
1915 * emulparams/elf32cr16c.sh: New file.
1916 * scripttempl/elfcr16c.sc: Likewise
1917 * NEWS: Mention support for new target.
1918
1919 2004-03-30 Nick Clifton <nickc@redhat.com>
1920
1921 * po/sv.po: Updated Swedish translation.
1922
1923 2004-03-27 Alan Modra <amodra@bigpond.net.au>
1924
1925 * emultempl/elf32.em: Update new bfd_elf_discard_info name.
1926 * emultempl/hppaelf.em: Likewise.
1927 * emultempl/ppc64elf.em: Likewise.
1928 * emultempl/sh64elf.em: Likewise.
1929
1930 2004-03-25 Alan Modra <amodra@bigpond.net.au>
1931
1932 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Update
1933 size_dynamic_sections call.
1934
1935 2004-03-23 Alan Modra <amodra@bigpond.net.au>
1936
1937 PR 51.
1938 * emultempl/ppc64elf.em (ppc_create_output_section_statements): Set
1939 link_info.wrap_char.
1940
1941 2004-03-20 H.J. Lu <hongjiu.lu@intel.com>
1942
1943 * lexsup.c (parse_args): Don't set unresolved_syms_in_objects
1944 or unresolved_syms_in_shared_libs for -Bdynamic and -Bstatic.
1945
1946 2004-03-20 Alexandre Oliva <aoliva@redhat.com>
1947
1948 * emulparams/elf32frvfd.sh (MAXPAGESIZE): Change to 16Kb.
1949
1950 2004-03-19 Alan Modra <amodra@bigpond.net.au>
1951
1952 * config.in: Regenerate.
1953 * po/ld.pot: Regenerate.
1954
1955 2004-03-18 Alan Modra <amodra@bigpond.net.au>
1956
1957 * ld.texinfo: Add --as-needed doco.
1958 * ldmain.c (as_needed): New global var.
1959 * ldmain.h (as_needed): Declare.
1960 * lexsup.c (option_values): Add OPTION_AS_NEEDED and
1961 OPTION_NO_AS_NEEDED.
1962 (ld_options): Likewise.
1963 (parse_args): Handle them.
1964 * ldlang.h (lang_input_statement_type): Add as_needed field.
1965 * ldlang.c (new_afile): Set p->as_needed.
1966 * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): New function.
1967 (gld${EMULATION_NAME}_try_needed): Use bfd_elf_set_dyn_lib_class.
1968 (ld_${EMULATION_NAME}_emulation): Set LDEMUL_RECOGNIZED_FILE entry.
1969
1970 * ldlang.c (open_input_bfds): Remove useless cast.
1971 (lang_do_assignments_1): Likewise.
1972 (lang_for_each_input_section): Delete.
1973
1974 2004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
1975
1976 * configure.tgt: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
1977
1978 2004-03-08 Danny Smith <dannysmith@users.sourceforge.net>
1979
1980 * pe-dll.c (pe_dll_generate_implib): Skip sections marked as
1981 private when building implib.
1982
1983 2004-03-05 Nathan Sidwell <nathan@codesourcery.com>
1984
1985 * ldlang.c (lang_add_section): Don't force SEC_LOAD on
1986 SEC_THREAD_LOCAL.
1987 (IGNORE_SECTION): Ignore .tbss sections too.
1988 (lang_size_sections_1): .tbss sections do not advance dot.
1989
1990 2004-03-01 Andreas Schwab <schwab@suse.de>
1991
1992 * ld.texinfo (Options): Fix example for --wrap.
1993
1994 2004-02-25 Danny Smith <dannysmith@users.sourceforge.net>
1995
1996 * pe-dll.c (fill_edata): Check that exported_symbol_sections is
1997 not NULL.
1998
1999 2004-02-23 Ian Lance Taylor <ian@wasabisystems.com>
2000
2001 * ldlang.c (lang_check): Use %P, not %E, in error message.
2002
2003 2004-02-23 Nathan Sidwell <nathan@codesourcery.com>
2004
2005 * ldlang.h (struct lang_output_section_state): Change processed
2006 field's type.
2007 * ldexp.c (check, invalid): Remove.
2008 (fold_name): Move valid_p assignments. Create undefined symbol
2009 when needed. Directly exampine section's processd flag.
2010 * ldlang.c (lang_output_section_statement_lookup): Adjust
2011 processed field init.
2012 (lang_size_sections_1): Allow LOADADDR when determining section's
2013 VMA. Adjust error message. Fold data statement's expr.
2014 (lang_size_sections): Correctly increment lang_statement_iteration.
2015
2016 2004-02-23 Alan Modra <amodra@bigpond.net.au>
2017
2018 * ldexp.c (fold_tree): Follow indirect symbols.
2019
2020 2004-02-20 Nathan Sidwell <nathan@codesourcery.com>
2021
2022 * ldgram.y (exp): Add two operand ALIGN.
2023 * ldexp.c (fold_binary): Add ALIGN_K case.
2024 * ld.texinfo (ALIGN): Document two operand version.
2025
2026 2004-02-19 Nathan Sidwell <nathan@codesourcery.com>
2027
2028 * ldlang.c (map_input_to_output_sections): Initialize sections
2029 mentioned in a data statement expression.
2030 (lang_do_assignments_1): Add data statement's expression's
2031 section's vma.
2032
2033 2004-02-18 Nathan Sidwell <nathan@codesourcery.com>
2034
2035 * ldgram.y (statement_anywhere): Add assert rule.
2036 * ldlang.c (exp_init_os): Add assert case.
2037
2038 2004-02-14 Andrew Cagney <cagney@redhat.com>
2039
2040 * ldmain.c (remove_output): Call bfd_cache_close.
2041
2042 2004-02-14 Richard Sandiford <rsandifo@redhat.com>
2043
2044 * emulparams/elf32bmipn32-defs.sh (OTHER_SECTIONS): Discard
2045 .MIPS.content* and .MIPS.events* sections.
2046
2047 2004-02-09 Daniel Jacobowitz <drow@mvista.com>
2048
2049 * emulparams/armelf.sh, emulparams/armelf_linux.sh: Move
2050 .note.gnu.arm.ident to after allocated sections. Mark its
2051 address as 0.
2052
2053 2004-02-09 Daniel Jacobowitz <drow@mvista.com>
2054
2055 * emulparams/armelf_linux.sh (COMMONPAGESIZE): Set to 4KB.
2056 * emulparams/elf32bmip.sh (COMMONPAGESIZE): Likewise.
2057 * emulparams/elf32bmipn32.sh (COMMONPAGESIZE): Likewise.
2058 * emulparams/elf32btsmipn32.sh (COMMONPAGESIZE): Likewise.
2059 * emulparams/shlelf_linux.sh (COMMONPAGESIZE): Likewise.
2060
2061 2004-02-05 Nick Clifton <nickc@redhat.com>
2062
2063 * emultempl/pe.em (_after_open): Fix typo in previous delta.
2064
2065 2004-02-04 Danny Smith <dannysmith@users.sourceforge.net>
2066
2067 * emultempl/pe.em (_after_open): Fix thinko in 2003-12-18 patch.
2068
2069 2004-01-28 Alan Modra <amodra@bigpond.net.au>
2070
2071 * genscripts.sh: Fix typo.
2072
2073 * genscripts.sh: Apply $LIBPATH_SUFFIX to $tool_lib and $libdir too.
2074
2075 2004-01-24 Jakub Jelinek <jakub@redhat.com>
2076
2077 * emulparams/elf64_ia64.sh: Put .rela.opd into
2078 OTHER_GOT_RELOC_SECTIONS instead of OTHER_PLT_RELOC_SECTIONS.
2079
2080 2004-01-20 Danny Smith <dannysmith@users.sourceforge.net>
2081
2082 * pe-dll.c (pe_create_import_fixup): Clear WP_TEXT flag.
2083 * ld.texinfo (--omagic): Note that writable text section
2084 does not conform to published PE-COFF specs.
2085 (--enable-auto-import): Likewise.
2086
2087 2004-01-15 Alan Modra <amodra@bigpond.net.au>
2088
2089 * emulparams/elf32ppc.sh (COMMONPAGESIZE): Define.
2090
2091 2004-01-13 Nick Clifton <nickc@redhat.com>
2092
2093 * ldlang.c (lang_get_regions): Add extra parameter 'have_vma'
2094 which if true will prevent the LMA region being used as a
2095 replacement for a default VMA region.
2096 (lang_leave_output_section_statement): Pass extra parameter.
2097 (lang_leave_overlay): Likewise.
2098 * ld.texinfo (Output Section LMA): Document that the LMA
2099 region can be set to the VMA region if no VMA has been set.
2100 * ldlang.h (struct lang_output_section_phdr_list): Create a
2101 typedef for this type. Minor formatting fixes.
2102
2103 2004-01-13 Nick Clifton <nickc@redhat.com>
2104
2105 * ldlang.c (lang_size_sections_1): If dot is advanced, then
2106 assume that the section should be allocated.
2107
2108 2004-01-13 Alan Modra <amodra@bigpond.net.au>
2109
2110 * ldlang.c (IGNORE_SECTION): Don't ignore SEC_ALLOC && !SEC_LOAD
2111 sections. Do ignore SEC_NEVER_LOAD sections.
2112 (lang_size_sections_1): Remove test made redundant with the above.
2113
2114 2004-01-09 Alan Modra <amodra@bigpond.net.au>
2115
2116 * emultempl/ppc64elf.em (ppc_before_allocation): Clear cached
2117 program_header_size.
2118
2119 2004-01-06 Alexandre Oliva <aoliva@redhat.com>
2120
2121 2003-11-28 Alexandre Oliva <aoliva@redhat.com>
2122 * emulparams/elf32frvfd.sh (EMBEDDED): Clear.
2123 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
2124 * emulparams/elf32frvfd.sh (STACK_ADDR): Unset.
2125 (MAXPAGESIZE): Set to 64Kb.
2126 (OTHER_READONLY_SECTIONS): Define __ROFIXUP_LIST__ and
2127 __ROFIXUP_END__. Don't map .rofixup.got any more.
2128 * emulparams/elf32frv.sh (NOP): Set.
2129 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
2130 * configure.tgt: Add frv-*-*linux*.
2131 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
2132 * Makefile.am (ALL_EMULATIONS): Added eelf32frvfd.o.
2133 (eelf32frvfd.c): New.
2134 * configure.tgt <frv-*-*>: Added it to targ_extra_emuls.
2135 * emulparams/elf32frv.sh: Reverted previous two patches.
2136 * emulparams/elf32frvfd.sh: New.
2137 * Makefile.in: Rebuilt.
2138 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
2139 * emulparams/elf32frv.sh (OTHER_READONLY_SECTIONS): Added
2140 .rofixup.got to .rofixup.
2141 2003-09-15 Alexandre Oliva <aoliva@redhat.com>
2142 * emulparams/elf32frv.sh (MAXPAGESIZE): Make it 256KiB, not 256B.
2143 (TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT): Set.
2144
2145 2004-01-05 Jakub Jelinek <jakub@redhat.com>
2146
2147 * emulparams/elf_s390.sh (NO_SMALL_DATA): Set to yes.
2148 * emulparams/elf64_s390.sh (NO_SMALL_DATA): Set to yes.
2149
2150 2004-01-03 Alan Modra <amodra@bigpond.net.au>
2151
2152 * ldexp.c (align_n): Make static.
2153 * ldexp.h (align_n): Delete declaration.
2154 * ldlang.h (lang_enter_output_section_statement): Remove
2155 block_value param.
2156 * ldlang.c (lang_enter_output_section_statement): Likewise.
2157 (TO_ADDR, TO_SIZE): Define.
2158 (opb_shift): New var.
2159 (init_opb): New function.
2160 (print_input_section): Call init_opb and use TO_ADDR.
2161 (print_data_statement, print_reloc_statement): Likewise.
2162 (print_padding_statement): Likewise.
2163 (size_input_section): Use TO_SIZE and TO_ADDR, and global opb_shift.
2164 (lang_check_section_addresses): Likewise.
2165 (lang_size_sections_1): Likewise.
2166 (lang_do_assignments_1): Likewise.
2167 (lang_set_startof): Likewise.
2168 (lang_one_common): Likewise. Combine power_of_two and opb_shift align.
2169 (lang_process): Call init_opb.
2170 (lang_abs_symbol_at_end_of): Use TO_ADDR and global opb_shift.
2171 (lang_enter_overlay_section): Adjust
2172 lang_enter_output_section_statement call.
2173 * ldgram.y: Likewise.
2174 * mri.c (mri_draw_tree): Likewise.
2175 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
2176 * emultempl/mmo.em (mmo_place_orphan): Likewise.
2177 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Likewise.
2178
2179 * ldfile.c (ldfile_set_output_arch): Add defarch param.
2180 * ldfile.h (ldfile_set_output_arch): Ditto.
2181 * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Use
2182 ldfile_set_output_arch.
2183 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Ditto.
2184 * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Ditto.
2185 * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Ditto.
2186 * emultempl/mipsecoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2187 * emultempl/pe.em (gld${EMULATION_NAME}_before_parse): Ditto.
2188 * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse): Ditto.
2189 * ldgram.y: Adjust ldfile_set_output_arch call.
2190 * emultempl/armcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2191 * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Ditto.
2192 * emultempl/armelf_oabi.em (gld${EMULATION_NAME}_before_parse): Ditto.
2193 * emultempl/generic.em (gld${EMULATION_NAME}_before_parse): Ditto.
2194 * emultempl/gld960c.em (gld960_set_output_arch): Ditto.
2195 * emultempl/m68kcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2196 * emultempl/ticoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2197
2198 2004-01-02 Bernardo Innocenti <bernie@develer.com>
2199
2200 * configure.tgt: Add m68k-uClinux target.
2201
2202 For older changes see ChangeLog-0203
2203 \f
2204 Local Variables:
2205 mode: change-log
2206 left-margin: 8
2207 fill-column: 74
2208 version-control: never
2209 End: