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