OSDN Git Service

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