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