1 2002-02-18 Alan Modra <amodra@bigpond.net.au>
3 * ld.texinfo (Output Section Fill): Fix amateur texinfo.
6 2002-02-17 Hans-Peter Nilsson <hp@bitrange.com>
8 * emultempl/mmo.em (mmo_after_open): Don't call
9 _bfd_mmix_check_all_relocs when producing ELF output.
11 2002-02-15 Richard Henderson <rth@redhat.com>
13 * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
14 definition. Emit a unop+nop pair.
16 2002-02-15 Hans-Peter Nilsson <hp@bitrange.com>
18 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
19 for presence of .MMIX.reg_contents.linker_allocated before early
22 * NEWS: Mention support for MMIX.
24 2002-02-15 Alan Modra <amodra@bigpond.net.au>
26 Support arbitrary length fill patterns.
27 * ld.texinfo (Output Section Fill): Describe fill expressions.
28 (FILL): Refer to the above.
29 * ldexp.h (etree_value_type): Add "str" field.
30 (union etree_union): Add "str" to "value" struct.
31 (exp_bigintop): Declare.
32 (exp_get_fill): Declare.
33 * ldexp.c: Include "safe-ctype.h".
34 (exp_intop): Set value.str to NULL.
35 (exp_bigintop): New function.
36 (new_rel): Pass in "str", and set new.str from it.
37 (new_rel_from_section): Set new.str to NULL.
38 (fold_name): Adjust calls to new_rel.
39 (exp_fold_tree): Likewise.
40 (exp_get_fill): New function.
41 * ldgram.y (struct big_int bigint, fill_type *fill): New.
42 (INT): Returns a "bigint". Adjust all code handling INTs.
43 (fill_opt): Returns a "fill".
44 (fill_exp): Split out of fill_opt, use for FILL.
45 * ldlang.h (struct _fill_type): New.
46 (fill_type): Move typedef to ldexp.h.
47 (lang_output_section_statement_type): "fill" is now a pointer.
48 (lang_fill_statement_type): Likewise.
49 (lang_padding_statement_type): Likewise.
50 (lang_add_fill): Now takes a "fill_type *" param.
51 (lang_leave_output_section_statement): Likewise.
52 (lang_do_assignments): Likewise.
53 (lang_size_sections): Likewise.
54 (lang_leave_overlay_section): Likewise.
55 (lang_leave_overlay): Likewise.
56 * ldlang.c: Include ldgram.h after ldexp.h.
57 (lang_output_section_statement_lookup): Adjust for fill_type change.
58 (print_fill_statement): Likewise.
59 (print_padding_statement): Likewise.
60 (insert_pad): Now takes a "fill_type *" arg.
61 (size_input_section): Likewise.
62 (lang_size_sections_1): Likewise.
63 (lang_size_sections): Likewise.
64 (lang_do_assignments): Likewise.
65 (lang_add_fill): Likewise.
66 (lang_leave_output_section_statement): Likewise.
67 (lang_leave_overlay_section): Likewise.
68 (lang_leave_overlay): Likewise.
69 Adjust all callers of the above function.
70 * ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers
71 starting with "0X" as well as "0x". Return bigint.str for hex
72 numbers starting with "0x" or "0X", zero bigint.str otherwise.
73 Always use base 16 for numbers starting with "$".
74 * ldmain.c: Include ldgram.h after ldexp.h.
75 * ldwrite.c (build_link_order): Use bfd_data_link_order in place
76 of bfd_fill_link_order.
77 * pe-dll.c: Adjust lang_do_assignments calls.
78 * emultempl/elf32.em: Likewise.
79 * emultempl/hppaelf.em: Likewise.
80 * emultempl/ppc64elf.em: Likewise.
81 * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
82 lang_add_assignment call.
83 * emultempl/pe.em: Likewise.
85 2002-02-14 Phil Edwards <pme@gcc.gnu.org>
87 * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
88 * ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
89 the pattern in question is not a regexp.
92 * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
94 2002-02-12 Jakub Jelinek <jakub@redhat.com>
96 * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
97 * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
98 (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
99 * ldexp.c (exp_data_seg): New variable.
100 (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
101 (fold_binary): Handle DATA_SEGMENT_ALIGN.
102 (exp_fold_tree): Handle DATA_SEGMENT_END.
103 Pass allocation_done when recursing instead of hardcoding
104 lang_allocating_phase_enum.
105 * ldexp.h (exp_data_seg): New.
106 * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
107 (lang_size_sections): New.
108 * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
109 * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
110 if COMMONPAGESIZE is defined.
111 * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
112 * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
113 * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
114 * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
115 * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
118 2002-02-11 Alan Modra <amodra@bigpond.net.au>
120 * Makefile.in: Regenerate.
122 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
124 * lexsup.c: Remove strtoul declaration.
126 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
128 * ldmain.c: Add prototype for main ().
129 * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
130 * emultempl/lnk960.em (lnk960_choose_target): Function should
133 2002-02-10 Alan Modra <amodra@bigpond.net.au>
135 * ldlang.c (entry_section): New initialised variable.
136 (lang_finish): Use it.
137 * ldlang.h (entry_section): Declare.
138 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
139 entry_section to ".opd".
141 2002-02-09 Chris Demetriou <cgd@broadcom.com>
143 * ld.texinfo (Options): Add back in -nostdlib documentation,
144 which had been inadvertently removed.
146 2002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
148 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
149 register section vma to a sane value after emitting error. Make
150 fatal conditions cause program exit when emitting message.
152 2002-02-08 Ivan Guzvinec <ivang@opencores.org>
154 * configure.tgt: Add or32-*-rtems target.
156 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
159 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
160 * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
161 in OTHER_RELOCATABLE_SECTIONS.
162 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
163 * emulparams/shelf32.sh (STACK_ADDR): Define.
164 (OTHER_RELOCATABLE_SECTIONS): Renamed to...
165 (OTHER_SECTIONS): this. Removed stack settings.
166 * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
167 (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
168 2001-03-12 DJ Delorie <dj@redhat.com>
169 * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
170 relaxing if any shmedia or mixed sections are found.
171 2001-03-07 DJ Delorie <dj@redhat.com>
172 * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
173 einfo. Gracefully decline to output to non-elf formats.
174 2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
175 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
176 Default to _end aligned to next multiple of 0x40000, plus 0x40000.
177 * emulparams/shelf32.sh: Ditto.
178 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
179 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
181 2001-01-10 Ben Elliston <bje@redhat.com>
182 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
183 non-portable shell constructs. From Hans-Peter Nilsson.
184 2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
185 * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
186 * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
187 dependencies to the shell script include chain.
188 * Makefile.in: Regenerate.
189 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
190 * emultempl/sh64elf.em: Update and tweak comments.
191 (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
192 make a .cranges section SEC_IN_MEMORY.
193 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
194 * emultempl/sh64elf.em
195 (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
196 .cranges section found to be necessary; continue and set stored
197 section contents flags for sections with non-mixed contents.
198 Use a struct sh64_section_data container and sh64_elf_section_data
199 to store contents-type flags.
200 Remove unused update of "isec".
201 (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
202 sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
203 access contents-type flags. Assert that the associated container
204 is initialized. Use that container, not elf_gp_size, to hold size
205 of linker-generated cranges contents.
206 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
207 * emultempl/sh64elf.em
208 (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
209 there's already a .cranges section. When section flag difference
210 is found, don't NULL-check cranges a second time. Tweak comments.
211 (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
212 merging, not max size, as size of ld-generated .cranges contents.
213 Don't set ELF section flags in output section. When checking for
214 needed .cranges descriptors, don't use a variable; compare
215 incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
217 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
218 * emultempl/sh64elf.em: New file.
219 * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
220 * Makefile.in: Regenerate.
221 * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
222 (OTHER_RELOCATING_SECTIONS): Ditto.
223 (EXTRA_EM_FILE): New, set to sh64elf if not set.
224 * emulparams/shlelf32.sh: Stub out all settings except
225 OUTPUT_FORMAT. Source shelf32.sh.
226 * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
227 OTHER_RELOCATING_SECTIONS.
228 (OTHER_RELOCATING_SECTIONS): Remove .cranges.
229 * emulparams/shlelf64.sh: Stub out all settings except
230 OUTPUT_FORMAT. Source shelf64.sh.
231 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
232 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
234 (DATA_START_SYMBOLS): Define, provide ___data.
235 (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
236 for consecutive .data section.
237 (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
238 section after .data section.
239 * emulparams/shlelf64.sh: Ditto.
240 * emulparams/shelf32.sh: Ditto.
241 (ALIGNMENT): Define to 8.
242 * emulparams/shelf32.sh: Ditto.
243 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
244 * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
245 built-in linker scripts.
246 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
247 * emulparams/shlelf64.sh: New.
248 * emulparams/shelf64.sh: New.
249 * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
251 * Makefile.am: Add support for shlelf64 and shelf64.
252 * Makefile.in: Regenerate.
253 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
254 * configure.tgt (sh64-*-elf*): Add shelf as default.
255 Add shlelf to targ_extra_emuls.
256 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
257 * emulparams/shelf32.sh: New file.
258 * emulparams/shlelf32.sh: New file.
259 * Makefile.am: Add support for shlelf32 and shelf32.
260 * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
261 * Makefile.in: Regenerate.
263 2002-02-05 Hans-Peter Nilsson <hp@axis.com>
265 * ldlang.c (lang_reset_memory_regions): Rename from
266 reset_memory_regions. Change all callers. Make public.
267 * ldlang.h (lang_reset_memory_regions): Prototype.
268 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
269 lang_reset_memory_regions before lang_size_sections.
270 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
271 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
273 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
275 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
276 arithmetic when checking for too many global registers.
278 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
280 * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
281 (ehppanbsd.c): New rule.
282 * Makefile.in: Regenerate.
283 * configure.tgt (hppa*-*-netbsd*): New target.
284 * emulparams/hppalinux.sh: Add comment to check other files
285 that source this file it is modified, and list which
287 * emulparams/hppanbsd.sh: New file.
289 2002-02-01 Geoffrey Keating <geoffk@redhat.com>
291 * scripttempl/xstormy16.sc: Don't allocate extra space for the
294 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
296 Support on-demand global register allocation from
297 R_MMIX_BASE_PLUS_OFFSET relocs.
298 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
299 mmix_set_reg_section_vma. Call
300 _bfd_mmix_finalize_linker_allocated_gregs.
301 (mmix_before_allocation): New function.
302 (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
303 (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
304 * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
305 (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
306 before .MMIX.reg_contents.
307 * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
308 (mmo_after_open): New function.
309 (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
310 * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting. Add
311 .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
313 2002-01-31 Ivan Guzvinec <ivang@opencores.org>
315 * emulparams/or32.sh: New file.
316 * emulparams/or32elf.sh: New file.
317 * scripttempl/or32.sc: New file.
318 * configure.tgt : Add support for or32.
319 * configure: Regenerate
320 * Makefile.am: Add support for or32.
321 * Makefile.in: Regenerate.
322 * NEWS: Mention support for or32.
323 * po/ld.pot: Regenerate.
325 2002-01-29 Chris Demetriou <cgd@broadcom.com>
326 Mitch Lichtenberg <mpl@broadcom.com>
328 * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
329 * emultempl/mipself.em: New file to handle MIPS ELF embedded
330 reloc creation (ld --embedded-relocs).
332 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
334 * configure: Regenerated.
336 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
338 * Makefile.am (install): Depend on install-info.
339 * Makefile.in: Regenerate.
341 2002-01-26 Christian Rose <menthos@menthos.com>
343 * ldmain.c (main): Use full sentences to ease translation.
345 2002-01-26 Nick Clifton <nickc@cambridge.redhat.com>
347 * po/fr.po: Updated version.
349 2002-01-25 Nick Clifton <nickc@cambridge.redhat.com>
351 * po/es.po: Updated version.
353 2002-01-25 Andreas Jaeger <aj@suse.de>
355 * ldlex.l (yy_input): Correct error check.
357 2002-01-25 Alan Modra <amodra@bigpond.net.au>
359 * ldmisc.c (demangle): Put back dots when string not demangled.
361 2002-01-22 Richard Henderson <rth@redhat.com>
363 * emulparams/elf64alpha.sh (NOP): Use unop.
365 2002-01-21 Andreas Jaeger <aj@suse.de>
367 * ldlex.l: Use fread instead of read.
369 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
371 * configure.tgt (ia64-*-netbsd*): New target.
373 2002-01-21 H.J. Lu <hjl@gnu.org>
375 * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
377 * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
379 2002-01-18 Andreas Jaeger <aj@suse.de>
381 * ldver.c (ldversion): Update year.
383 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
385 * po/ld.pot: Regenerate.
387 2002-01-16 Alan Modra <amodra@bigpond.net.au>
389 * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
390 * Makefile.in: Regenerate.
391 * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
392 * emultempl/ppc64elf.em: New file.
394 2002-01-15 DJ Delorie <dj@redhat.com>
396 * scripttempl/pe.sc: Add support for constructor priorities.
398 2002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
400 * emulparams/avr1200.sh (DATA_START): Define as 0x60.
401 * emulparams/avr23xx.sh: Likewise.
402 * emulparams/avr4433.sh: Likewise.
403 * emulparams/avr44x4.sh: Likewise.
404 * emulparams/avr85xx.sh: Likewise.
405 * emulparams/avrmega103.sh: Likewise.
406 * emulparams/avrmega161.sh: Likewise.
407 * emulparams/avrmega603.sh: Likewise.
408 * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
410 2002-01-08 Alexandre Oliva <aoliva@redhat.com>
412 * ldlang.c (walk_wild_section): Exclude object file if enclosing
415 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
417 * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
418 (eshelf_nbsd.c): New rule.
419 (eshlelf_nbsd.c): New rule.
420 * Makefile.in: Regenerate.
421 * configure.tgt (sh*le-*-netbsdelf*): New target.
422 (sh*-*-netbsdelf*): New target.
423 * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
424 * ld/emulparams/shelf_nbsd.sh: New emulation.
425 * ld/emulparams/shlelf_nbsd.sh: New emulation.
427 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
429 * po/es.po: New file: Spanish translation.
430 * configure.in (ALL_LINGUAS): Add es.
431 * configure: Regenerate.
433 2002-01-06 John Marshall <jmarshall@acm.org>
435 * ld.texinfo: Note that --emit-relocs is currently only
438 2002-01-05 Alan Modra <amodra@bigpond.net.au>
440 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
441 of bfd_section_list_remove and bfd_section_list_insert macros.
442 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
443 * emultempl/mmo.em (mmo_place_orphan): Likewise.
445 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
447 * configure.tgt (x86_64-*-netbsd*): New target.
449 2001-12-21 Tom Rix <trix@redhat.com>
451 (gld*_create_output_section_statements): New function.
452 For -binitfini support.
453 * emultempl/aix.em (gld*_before_parse): Fix comment.
454 * emultempl/aix.em (gld*_parse_args): Fix comment.
456 2001-12-20 Jason Thorpe <thorpej@wasabisystems.com>
458 * configure.tgt (mips*-dec-netbsd*): Delete alias for
460 (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
462 * configure.tgt (arm-*-netbsdelf*): Add target.
463 (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
464 * emulparams/armelf_nbsd.sh: Added.
465 * Makefile.am: Add rules for earmelf_nbsd.
466 * Makefile.in: Regenerate.
468 2001-12-19 Andreas Jaeger <aj@suse.de>,
469 Susanne Oberhauser <froh@suse.de>
471 * configure.host: Add rules for x86_64-*linux-gnu. Change
472 s390x-linux entry to use gcc to report configuration, replace gcc
473 with $CC in s390-linux
475 2001-12-19 Andreas Jaeger <aj@suse.de>
477 * ld.texinfo (VERSION): Fix markup.
479 2001-12-18 matthew green <mrg@eterna.com.au>
481 * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
482 (m68kelfnbsd.c): New rule.
483 * Makefile.in: Regenerate.
484 * configure.tgt (m68*-hp-netbsd*): Renamed to ..
485 (m68*-*-netbsd*4k*): .. this.
486 (m68*-*-netbsdelf*): New target.
487 (m68*-*-netbsd*): Also include ELF support.
488 (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
489 * emulparams/m68kelfnbsd.sh: New emulation.
491 2001-12-18 Jakub Jelinek <jakub@redhat.com>
493 * ldgram.y (vers_node): Support anonymous version tags.
494 * ldlang.c (lang_register_vers_node): Ensure anonymous version
495 tag is not defined together with non-anonymous versions.
496 * ld.texinfo: Document it.
498 2001-12-18 Nick Clifton <nickc@cambridge.redhat.com>
500 * po/tr.po: New file: Turkish translation.
501 * configure.in (ALL_LINGUAS): Add tr.
502 * configure: Regenerate.
504 2001-12-17 Jason Thorpe <thorpej@wasabisystems.com>
506 * Makefile.am: Add rules for eelf64alpha_nbsd.
507 * Makefile.in: Regenerate.
508 * configure.tgt (alpha*-*-netbsd*): Set
509 targ_emul to elf64alpha_nbsd.
510 * emulparams/elf64alpha_nbsd.sh: Added.
512 2001-12-17 Alan Modra <amodra@bigpond.net.au>
514 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
515 section_tail when fiddling with section list.
516 (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
517 broken into separate strings to make translation easier.
518 * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
519 fiddling with section list.
520 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
522 2001-12-16 Hans-Peter Nilsson <hp@bitrange.com>
524 * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
526 2001-12-15 Alan Modra <amodra@bigpond.net.au>
528 * ldmain.c (main): Initialise link_info.eh_frame_hdr.
530 2001-12-13 Jakub Jelinek <jakub@redhat.com>
532 * emultempl/elf32.em (finish): Supply output_bfd
533 to bfd_elf*_discard_info.
534 (OPTION_EH_FRAME_HDR): Define.
535 (longopts): Add --eh-frame-hdr.
536 (parse_args): Handle it.
537 (list_options): Add --eh-frame-hdr to help.
538 * emultempl/hppaelf.em (finish): Supply output_bfd
539 to bfd_elf*_discard_info.
540 * scripttempl/elf.sc (.eh_frame_hdr): Add.
542 2001-12-13 Alan Modra <amodra@bigpond.net.au>
544 * lexsup.c (parse_args): Don't pass shortopts to second call to
545 getopt functions. Restore optind rather than decrementing before
546 second call. Remove errind as it now duplicates last_optind.
548 2001-12-11 Christopher Faylor <cgf@redhat.com>
550 * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
552 2001-12-07 Geoffrey Keating <geoffk@redhat.com>
553 Richard Henderson <rth@redhat.com>
555 * Makefile.am: Add support for xstormy16.
556 * configure.tgt: Add support for xstormy16.
557 * Makefile.in: Regenerate.
558 * emulparams/elf32xstormy16.sh: New file.
559 * scripttempl/xstormy16.sc: New file.
561 2001-10-01 Christopher Faylor <cgf@cygnus.com>
563 * Makefile.in (LIB_PATH): Make configurable.
564 (GENSCRIPTS): Set LIB_PATH in environment.
565 * configure.in: Substitute LIB_PATH.
566 * configure: Regenerate.
567 * configure.tgt (*cygwin): Set LIB_PATH for cross build.
568 * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
570 2001-12-07 Nick Clifton <nickc@cambridge.redhat.com>
572 * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
573 describing the -N option so that it is easier to translate into
576 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com>
578 * emultempl/pe.em (..._list_options): Replace multiple fprintf
579 statements describing a single option with a single, newline
580 escaped fprintf. This allows better translation into other
583 * ldmain.c (add_archive_element): Combine multiple strings
584 into a single string to permit better translation into other
587 2001-12-05 Tom Rix <trix@redhat.com>
589 * Makefile.am: Remove eaixppc64.
590 * Makefile.in: Regenerate.
592 2001-12-04 Tom Rix <trix@redhat.com>
594 * emultempl/aix.em (choose_target): Change default target to
595 OUTPUT_FORMAT for ppcmacos. Add braces to remove compiler
597 (gld*_read_file): Fix typo.
598 (change_symbol_mode): Add prototype.
601 * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
602 * emulparams/aixrs6.sh : Same.
603 * emulparams/ppcmacos.sh : Same.
604 * emulparams/aixppc64.sh : Delete file.
605 * emultempl/aix.em : Formatting changes.
607 2001-12-04 Hans-Peter Nilsson <hp@axis.com>
609 * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
610 (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
612 (OTHER_END_SYMBOLS): Fix formatting.
613 * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
614 (OTHER_END_SYMBOLS): Fix formatting.
616 2001-12-04 Alan Modra <amodra@bigpond.net.au>
618 * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
620 2001-12-02 Tom Rix <trix@redhat.com>
622 * configure.tgt : Remove eaixppc64 emulations.
623 * Makefile.in : Remove eaixppc64.c
624 * ldemul.c (ldemul_choose_target): New parameters argc, argv.
625 (ldemul_default_target): Same.
626 * emultempl/gld960.em (gld960_choose_target): Same.
627 * emultempl/gld960c.em (gld960_choose_target): Same.
628 * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
629 * emultempl/aix.em (is_syscall): syscall_mask now a variable.
630 * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
631 * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
632 * emultempl/aix.em (choose_target): New function. Handle emulation of
635 2001-11-27 H.J. Lu <hjl@gnu.org>
637 * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
638 * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
639 * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
640 * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
641 * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
642 * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
643 * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
644 * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
646 * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
649 (REL_SDATA): Likewise.
650 (REL_SBSS): Likewise.
651 (REL_SDATA2): Likewise.
652 (REL_SBSS2): Likewise.
653 (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
656 2001-11-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
658 * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
660 * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
662 2001-11-22 H.J. Lu <hjl@gnu.org>
664 * Makefile.in: Regenerated with automake based on automake
667 2001-11-22 Alan Modra <amodra@bigpond.net.au>
669 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
670 (config.status): Delete rule.
671 Add extra dependencies to cover sourced emulparams files.
672 * Makefile.in: Regenerate.
674 * scripttempl/elf.sc: Order <section>, <section>.* and
675 corresponding linkonce sections as seen in input files.
676 Formatting fixes. Zero vma of all sections if not relocating.
677 (STACK): Define and insert if STACK_ADDR defined.
678 (OTHER_RELOCATING_SECTIONS): Delete.
679 (OTHER_END_SYMBOLS): Define.
680 (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
681 (OTHER_READWRITE_SECTIONS): Likewise.
682 (OTHER_GOT_SECTIONS): Likewise.
683 (OTHER_SDATA_SECTIONS): Likewise.
684 (OTHER_BSS_SECTIONS): Likewise.
685 * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
686 (OTHER_READWRITE_SECTIONS): Likewise.
687 * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
688 (OTHER_READWRITE_SECTIONS): Likewise
690 * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
691 (STACK_ADDR): Define.
692 * emulparams/armelf_oabi.sh: As for armelf.sh.
693 * emulparams/elf32mcore.sh: As for armelf.sh.
694 * emulparams/h8300elf.sh: As for armelf.sh.
695 * emulparams/mn10200.sh: As for armelf.sh.
696 * emulparams/shelf.sh: As for armelf.sh.
698 * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
699 (OTHER_END_SYMBOLS): Define.
700 * emulparams/m32relf.sh: As for elf32fr30.sh.
701 * emulparams/h8300helf.sh: As for elf32fr30.sh.
702 * emulparams/h8300self.sh: As for elf32fr30.sh.
704 * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
705 defines with RELOCATING test.
706 (OTHER_SDATA_SECTIONS): Likewise.
707 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
708 (OTHER_END_SYMBOLS): ..this.
709 * emulparams/crislinux.sh: As for criself.sh.
711 * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
713 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
714 (OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
715 normal and linkonce sections as seen in input files.
716 * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
717 (TEXT_DYNAMIC): Likewise.
718 (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
719 (OTHER_SDATA_SECTIONS): Likewise.
720 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
721 * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
722 * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
723 * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
724 * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
725 (OTHER_PLT_RELOC_SECTIONS): Likewise.
726 (OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
727 sections as seen in input files.
728 * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
729 * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
731 (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
732 (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
733 * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
734 (OTHER_SECTIONS): Instead, use this..
735 (OTHER_END_SYMBOLS): ..and this.
737 * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
738 * emulparams/elf32bsmip.sh: Likewise.
739 * emulparams/elf32btsmip.sh: Likewise.
740 * emulparams/elf32ebmip.sh: Likewise.
741 * emulparams/elf32lmip.sh: Likewise.
742 * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
743 * emulparams/elf32lsmip.sh: Likewise.
744 * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
745 * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
746 * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
747 * emulparams/elf64btsmip.sh: Likewise.
748 * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
749 * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
750 * emulparams/elf32ppclinux.sh: Likewise.
751 * emulparams/elf32ppcsim.sh: Likewise.
752 * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
753 * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
754 * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
755 * emulparams/h8300self.sh: Likewise.
756 * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
757 * emulparams/sh.sh: Comment.
758 * emulparams/shl.sh: Source sh.sh, remove duplicates.
759 * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
760 * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
762 2001-11-21 David Heine <dlheine@tensilica.com>
763 Alan Modra <amodra@bigpond.net.au>
765 * ldlang.c (map_input_to_output_sections): Replace "break"
766 accidentally removed with 2001-08-03 change.
767 (lang_gc_sections_1): Likewise.
769 2001-11-21 Alan Modra <amodra@bigpond.net.au>
771 * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
773 2001-11-20 Angela Marie Thomas <angela@redhat.com>
775 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
776 of false when calling lang_size_sections.
777 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
779 2001-11-15 Alan Modra <amodra@bigpond.net.au>
781 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
782 function when LDEMUL_FINISH isn't set to the same name. Don't
783 call ${LDEMUL_FINISH}.
784 (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
785 * emultempl/armelf.em (arm_elf_finish): Call
786 gld${EMULATION_NAME}_finish.
787 * emultempl/hppaelf.em (hppaelf_finish): Rename to
788 gld${EMULATION_NAME}_finish. Call bfd_elf32_discard_info and
789 hppaelf_layout_sections_again if necessary.
790 (need_laying_out): New var.
791 (hppaelf_layaout_sections_again): Rename to
792 hppaelf_layout_sections_again. Clear need_laying_out.
793 (PARSE_AND_LIST_OPTIONS): Format text.
795 2001-11-14 H.J. Lu <hjl@gnu.org>
797 * emultempl/armelf.em (arm_elf_finish): Renamed from
798 gld${EMULATION_NAME}_finish.
799 (LDEMUL_FINISH): Set to arm_elf_finish.
801 2001-11-14 Daniel Jacobowitz <drow@mvista.com>
803 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
804 (struct ld_emulation_xfer_struct): Use it.
806 2001-11-13 Ross Alexander <ross.alexander@uk.neceur.com>
808 * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
809 additional symbols referenced by newer crt0.o files from HP.
811 2001-11-12 Anthony Green <green@redhat.com>
813 * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
815 2001-11-12 Alfred M. Szmidt <ams@kemisten.nu>
817 * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
818 * Makefile.in: Regenerate.
820 2001-11-02 Stephane Carrez <Stephane.Carrez@worldnet.fr>
822 * ld.texinfo: Use @command for commands, @option for options.
823 * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
825 * Makefile.in: Rebuild.
827 2001-11-04 Chris Demetriou <cgd@broadcom.com>
829 * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
830 Add support for targets.
832 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com>
834 * configure.in (ALL_LINGUAS): Add "fr" and "sv"
835 * configure: Regernate.
836 * po/fr.po: New file.
837 * po/sv.po: New file.
839 2001-11-01 NIIBE Yutaka <gniibe@m17n.org>
841 * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
842 as little endian default and to support big endian.
844 2001-11-01 Chris Demetriou <cgd@broadcom.com>
846 * ld.texinfo (Options): Document new option, -nostdlib.
847 * lexsup.c (OPTION_NOSTDLIB): New definition.
848 (ld_options): Add entry for "nostdlib".
849 (parse_args): Handle OPTIONS_NOSTDLIB.
850 * ldfile.c (ldfile_add_library_path): Don't add directories
851 to the search path if they weren't specified on the command line
852 and -nostdlib was specified.
853 * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
855 2001-10-31 Nick Clifton <nickc@cambridge.redhat.com>
857 * lexsup.c (parse_args): Prevent infinite parsing loop when
858 "-rpath.a" is specified on the command line.
859 Replace calls to fprintf with calls to einfo.
861 2001-10-31 John Marshall <jmarshall@acm.org>
863 * ld.texinfo: A historical requirement that MEMORY and SECTIONS
864 appear only once across all the linker scripts involved in a link
865 invocation no longer applies. Make the documentation reflect
868 2001-10-31 NIIBE Yutaka <gniibe@m17n.org>
870 * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
872 (sh-*-linux*): Added targ_extra_libpath.
874 2001-10-31 David Heine <dlheine@tensilica.com>
876 * ldlang.c (lang_size_sections): Keep a valid output_offset field
877 for padding statements.
879 2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
881 * configure.tgt (mmix-*-*): New target.
882 * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
883 Add dependencies to match.
884 * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
885 emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
886 scripttempl/mmo.sc: New files.
887 * gen-doc.texi: @set MMIX.
889 [MMIX] Add MMIX node.
890 * Makefile.in: Regenerate.
892 2001-10-29 Kazu Hirata <kazu@hxi.com>
894 * ldlang.c: Fix a comment typo.
896 2001-10-23 Alan Modra <amodra@bigpond.net.au>
898 * configure.host: Move alpha*-*-linux-gnu* entry to generic
899 entries, and match *-*-linux*.
901 2001-10-20 Alan Modra <amodra@bigpond.net.au>
903 * ldgram.y (mri_script_command): Surround processing of INCLUDE
904 with ldlex_script, ldlex_popstate.
905 (ifile_p1): Likewise.
906 * ldlex.l (EOF): Don't BEGIN(SCRIPT). Restore lineno from the
908 (lex_push_file): Save current lineno to lineno_stack. Set lineno
909 to 1. Don't BEGIN(SCRIPT).
910 (lex_redirect): Similarly.
911 * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
913 2001-10-20 Nick Clifton <nickc@cambridge.redhat.com>
915 * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
916 __EH_FRAME_END__ and accept eh frames into data section.
917 Add ctor and dtor sections.
919 2001-10-19 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
921 * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
922 (auto-export): Fix indentation.
924 2001-10-18 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
926 * pe-dll.c (autofilter_objectlist): Add startup objects
928 (auto-export): Constify char * p.
929 Extract file basename and use strcmp rather than ststr
932 2001-10-18 Chris Demetriou <cgd@broadcom.com>
934 * ldmain.c (get_emulation): Improve comment about the handling
937 2001-10-17 Alan Modra <amodra@bigpond.net.au>
939 * po/POTFILES.in: Regenerate.
941 2001-10-16 Vassili Karpov <malc@pulsesoft.com>
943 * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
944 -z nocopyreloc and -z nocombreloc usage strings.
946 2001-10-12 Vassili Karpov <malc@pulsesoft.com>
948 * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
951 2001-10-11 Aleksey Romanov <aromanov@ennovatenetworks.com>
953 * scripttempl/armaout.sc: Place .bss section after end of aligned
954 data section to match behaviour of aout code in constructrion of
957 2001-10-11 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
959 * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
960 startup files for mingw32 dlls to list.
962 2001-10-10 Chris Demetriou <cgd@broadcom.com>
964 * emultempl/elf32.em: Fix shell 'if' usage for portability.
966 2001-10-08 Aldy Hernandez <aldyh@redhat.com>
968 * configure.tgt (targ): Add arm9e-*-elf.
970 2001-10-05 H.J. Lu <hjl@gnu.org>
972 * genscripts.sh: Fix a typo in the last change.
974 2001-10-05 Jakub Jelinek <jakub@redhat.com>
976 * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
977 -z nocombreloc in usage.
979 2001-10-03 Jim Blandy <jimb@redhat.com>
981 * genscripts.sh: Include a comment at the top of each generated
982 script, explaining its purpose.
984 2001-10-03 Vassili Karpov <malc@pulsesoft.com>
986 * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
987 * NEWS: Mention -z nocopyreloc.
988 * ld.texinfo (Options): Describe nocopyreloc.
990 2001-10-03 Alan Modra <amodra@bigpond.net.au>
992 * configure: Regenerate.
994 2001-10-02 Alan Modra <amodra@bigpond.net.au>
996 * ldver.h (ld_program_version): Remove declaration.
997 * lexsup.c (parse_args): Move printing of copyright message..
998 * ldver.c (ldversion): .. to here.
999 Use BFD_VERSION_STRING in place of BFD_VERSION.
1000 (ld_program_version): Remove.
1001 * Makefile.am (Makefile): Depend on bfd/configure.in.
1003 * Makefile.in: Regenerate.
1005 2001-09-30 Hans-Peter Nilsson <hp@bitrange.com>
1007 * Makefile.am: Update dependencies with "make dep-am".
1008 * Makefile.in: Regenerate.
1010 2001-09-29 John Reiser <jreiser@BitWagon.com>
1012 * ldlang.c (lang_common): Conditionally inhibit Common allocation.
1013 * lexsup.c: Add --no-define-common commandline option.
1014 * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
1015 * ldlex.l: Likewise.
1016 * ld.h: Add command_line.inhibit_common_definition.
1017 * ldmain.c (main): Initialize.
1018 * ld.texinfo: Document.
1020 2001-09-26 Alan Modra <amodra@bigpond.net.au>
1022 * ldmisc.c (USE_STDARG): Remove.
1023 (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
1028 * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
1029 declarations. Update copyright.
1031 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1033 * pe-dll.c: Remove obsoleted declaration of
1034 pe_get_data_import_dll_name.
1035 (pe_create_import_fixup): Fix thinko.
1037 * ld.texinfo(enable-auto-import): Clarify the explanation.
1039 2001-09-24 Nick Clifton <nickc@cambridge.redhat.com>
1041 * pe-dll.c (pe_create_import_fixup): Revert previous patch.
1042 * emultemp/pe.em (pe_data_import_dll): Move definition outside of
1043 DLL_SUPPORT controlled code.
1045 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1047 * emultempl/pe.em(pe_data_import_dll): Make static.
1048 (pe_get_data_import_dll_name): New accessor function.
1049 * pe-dll.c(pe_create_import_fixup): call
1050 pe_get_data_import_dll_name() from pe.em, instead of
1051 directly accessing pe_data_import_dll variable from pe.em.
1053 2001-09-18 Bruno Haible <haible@clisp.cons.org>
1055 * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
1056 (def_file_add_directive): Use ISSPACE instead of isspace.
1057 (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
1058 isdigit/isxdigit/isalpha/isalnum.
1059 * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
1060 (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
1061 * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
1062 (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
1064 * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
1065 (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
1067 * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
1068 (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
1069 * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
1070 (ctor_prio): Use ISDIGIT instead of isdigit.
1071 * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
1072 (ldfile_open_file_search): Use ISALPHA instead of isalpha.
1073 (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
1075 * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
1076 (stricpy): Use TOLOWER instead of isupper/tolower.
1077 (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
1078 * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
1079 (lex_warn_invalid): Use ISPRINT instead of isprint.
1080 * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
1081 (main): For gettext, also set the LC_CTYPE locate facet.
1082 (add_keepsyms_file): Use ISSPACE instead of isspace.
1083 * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
1084 (is_num, parse_args): Use ISDIGIT instead of isdigit.
1085 * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
1086 (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
1087 * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
1088 (gldppcmacos_read_file): Use ISSPACE instead of isspace.
1089 * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
1090 (quoteput): Use ISSPACE instead of isspace.
1091 (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
1094 2001-09-18 Alan Modra <amodra@bigpond.net.au>
1096 * deffilep.y (def_stash_module): Constify "name" param.
1098 * pe-dll.c: Replace CONST with const throughout.
1099 (quick_symbol): Constify "n1", "n2", "n3" params.
1100 (make_singleton_name_thunk): Constify "import" param. Make
1101 "buffer_len" a size_t.
1102 (make_import_fixup_entry): Constify "name", "fixup_name",
1103 "dll_symname" params.
1104 (pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
1105 (pe_get32): Likewise.
1106 (pe_implied_import_dll): Likewise.
1108 * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
1109 (sort_by_section_name): Likewise.
1111 * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
1112 (make_import_fixup): Cast printf arg, rel->address to long rather
1114 (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
1116 2001-09-15 Alan Modra <amodra@bigpond.net.au>
1118 * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
1119 defines BufferSize. Increase buffer size by one.
1121 2001-09-14 Ralf Habacker <Ralf.Habacker@freenet.de>
1123 * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
1125 2001-09-14 Kevin Lo <kevlo@openbsd.org>
1127 * configure.tgt: Add arm-openbsd target.
1129 2001-09-12 H.J. Lu <hjl@gnu.org>
1131 * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
1133 (ALL_64_EMULATIONS): Here.
1134 * Makefile.in: Regenerated.
1136 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1138 * emultempl/pe.em(make_import_fixup): change signature to
1139 take asection as well as arelec; we need this for proper
1140 error reporting. Only call pe_create_import_fixup() if
1141 there is no attempt to add a constant addend to the reloc;
1142 otherwise, report error condition.
1143 * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
1144 since final argument is a pointer to make_import_fixup().
1145 Change call to cb() to match make_import_fixup() signature.
1146 (make_import_fixup_mark): make buffer_len unsigned.
1147 * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
1149 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu>
1151 * ld.texinfo: add verbose documentation for auto-import
1152 direct-addressing workaround, to compliment the terse
1155 2001-09-12 Andrew MacLeod <amacleod@redhat.com>
1157 * scripttempl/v850.sc: Add gcc_except_table sections.
1159 2001-09-11 Jeffrey A Law (law@cygnus.com)
1161 * emulparams/h8300helf.sh: Move stack to a much higher memory address.
1162 * emulparams/h8300self.sh: Similarly.
1164 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
1166 * ld.texinfo (Options, --stack): Correct default value for stack
1169 2001-09-05 Tom Rix <trix@redhat.com>
1171 * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
1173 2001-09-03 Andreas Jaeger <aj@suse.de>
1175 * emultempl/beos.em: Declare prototypes for comparions functions,
1178 2001-09-02 Andreas Jaeger <aj@suse.de>
1180 * emultempl/aix.em: Add missing prototype.
1181 * emultempl/lnk960.em: Likewise.
1182 * emultempl/vanilla.em: Likewise.
1183 * emultempl/armcoff.em: Likewise.
1184 * emultempl/armelf_oabi.em: Likewise.
1185 * emultempl/beos.em: Likewise.
1186 * emultempl/gld960c.em: Likewise.
1187 * emultempl/gld960.em: Likewise.
1189 * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
1190 for prototype declaration.
1192 2001-08-31 Eric Christopher <echristo@redhat.com>
1193 Jason Eckhardt <jle@redhat.com>
1195 * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
1197 2001-08-31 Andreas Jaeger <aj@suse.de>
1199 * emultempl/pe.em: Add missing prototypes.
1200 (gld_${EMULATION_NAME}_after_open): Remove extra args to
1201 pe_find_data_imports.
1202 (pr_sym): Add unused attribute.
1204 2001-08-29 Joel Sherrill <joel@OARcorp.com>
1206 * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
1207 default from coff to elf.
1209 2001-08-29 Jeff Law <law@redhat.com>
1211 * emulparams/h8300helf.sh: Resync with h8300elf.sh. Update
1213 * emulparams/h8300self.sh: Similarly.
1215 2001-08-28 J"orn Rennecke <amylaar@redhat.com>
1217 * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
1219 (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
1220 * configure.tgt (h8300-*-elf*): New case.
1221 * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
1222 * emulparams/h8300self.sh: New file.
1223 * Makefile.in: Regenerated.
1225 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
1227 * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
1230 2001-08-27 Linus Nordberg <linus@swox.com>
1231 Alan Modra <amodra@bigpond.net.au>
1233 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
1234 (eelf64ppc.c, eelf64lppc.c): Add make targets.
1236 * Makefile.in: Regenerate.
1237 * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj
1238 entries to correct alphabetical position.
1239 * emulparams/elf64ppc.sh: New.
1240 * emulparams/elf64lppc.sh: New.
1242 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
1244 * ldmain.c (main): Declare BSIZE as static.
1246 2001-08-23 Jakub Jelinek <jakub@redhat.com>
1248 * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
1249 into .rel.dyn resp. .rela.dyn if combreloc.
1250 (get_script): If .x linker script is equal to .xn, only put it
1251 once into the binary.
1252 Add .xc and .xsc scripts.
1253 (parse_args): Handle -z combreloc and -z nocombreloc.
1254 * scripttempl/elf.sc (.rela.sbss): Fix a typo.
1255 For .xc and .xsc scripts put all .rel* or .rela* input sections
1256 but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
1257 * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
1259 Strip trailing whitespace from script.
1260 Generate .xc and .xsc scripts if requested.
1261 * ldmain.c (main): Initialize link_info.combreloc and
1262 link_info.spare_dynamic_tags.
1263 * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
1264 (ld_options): Add --spare-dynamic-tags option.
1265 (parse_args): Likewise.
1266 * ld.texinfo: Document -z combreloc and -z nocombreloc.
1267 * ldint.texinfo: Document .xc and .xsc linker scripts.
1268 * NEWS: Add notes about -z combreloc and SHF_MERGE.
1270 2001-08-22 H.J. Lu <hjl@gnu.org>
1272 * emulparams/elf32fr30.sh: Add a newline.
1274 2001-08-21 Andreas Jaeger <aj@suse.de>
1276 * deffilep.y: Add missing prototypes.
1277 * pe-dll.c: Likewise.
1279 2001-08-20 Alan Modra <amodra@bigpond.net.au>
1281 * ldlang.c (insert_pad): Fix typos in last patch.
1283 * ldlang.c: When traversing lang_statement_union_type lists,
1284 consistently use "header.next" rather than "next".
1285 * mpw-eppcmac.c: Likewise.
1286 * emultempl/beos.em: Likewise.
1287 * emultempl/hppaelf.em: Likewise.
1288 * emultempl/pe.em: Likewise.
1289 * ldlang.h (union lang_statement_union): Remove "next" field.
1291 * ldlang.c (insert_pad): Use offsetof macro.
1292 (lang_size_sections): Always neuter padding statements.
1293 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
1295 * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
1296 passed to lang_size_sections.
1297 (pe_exe_fill_sections): Likewise.
1298 * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
1299 (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
1301 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1303 * emultempl/aix.em: Formatting fixes.
1305 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1307 * ldlang.c (insert_pad): Make use of an existing pad statement if
1308 available. Move code calculating alignment, adjusting section
1309 alignment power, and adjusting dot to ..
1310 (size_input_section): .. here. Remove unused relax param.
1311 (lang_size_sections): Change boolean `relax' param to boolean *.
1312 Adjust call to size_input_section. Make use of insert_pad to
1313 place pad after the assignment statement. If relaxing, zap
1315 (reset_memory_regions): Reset output_bfd section sizes too.
1316 (relax_again): Move to..
1317 (lang_process): ..here. Adjust call to lang_size_sections, and
1318 remove duplicated code.
1319 * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
1321 2001-08-17 Alan Modra <amodra@bigpond.net.au>
1323 * ld.texinfo: Document that fill values now use the four least
1325 * emulparams/elf32fr30.sh (NOP): Update.
1326 * emulparams/elf32mcore.sh: Likewise.
1327 * emulparams/elf64_s390.sh: Likewise.
1328 * emulparams/elf_i386.sh: Likewise.
1329 * emulparams/elf_i386_be.sh: Likewise.
1330 * emulparams/elf_i386_chaos.sh: Likewise.
1331 * emulparams/elf_i386_ldso.sh: Likewise.
1332 * emulparams/elf_s390.sh: Likewise.
1333 * emulparams/elf_x86_64.sh: Likewise.
1334 * emulparams/i386moss.sh: Likewise.
1335 * emulparams/i386nw.sh: Likewise.
1336 * emulparams/m68kelf.sh: Likewise.
1337 * scripttempl/elf.sc: Update NOP comment.
1338 * scripttempl/elfi370.sc: Likewise.
1339 * scripttempl/elfm68hc11.sc: Likewise.
1340 * scripttempl/elfm68hc12.sc: Likewise.
1341 * scripttempl/nw.sc: Likewise.
1343 2001-08-15 Tom Rix <trix@redhat.com>
1345 * ldgram.y (saved_script_handle): Initialize to NULL.
1346 * ldmain.c (main): Change check on saved_script_handle.
1348 2001-08-14 Alan Modra <amodra@bigpond.net.au>
1350 * emultempl/elf32.em: Formatting fixes.
1351 (output_prev_sec_find): Test for bfd_ind_section too; do so by
1352 looking at sec->owner.
1353 (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
1354 (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove
1355 unused code, and reorganize orphan section placement code.
1357 * ldlang.c (wild_doit): Rename to lang_add_section.
1358 * ldlang.h: Here too.
1359 * mpw-elfmips.c: And here.
1360 * emultempl/beos.em: And here.
1361 * emultempl/elf32.em: And here.
1362 * emultempl/hppaelf.em: And here.
1363 * emultempl/pe.em: And here.
1365 2001-08-13 Richard Henderson <rth@redhat.com>
1367 * emultempl/needrelax.em: New file.
1368 * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
1369 * Makefile.am (eelf64_ia64.c): Depend on it.
1370 * Makefile.in: Rebuild.
1372 2001-08-13 Alan Modra <amodra@bigpond.net.au>
1374 * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
1375 output_section is set non-NULL.
1377 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
1378 `true' for SEC_EXCLUDE sections so that the generic code doesn't
1379 needlessly create an output_section_statement. Treat a correctly
1380 named output_section_statement with NULL bfd_section as compatible.
1382 2001-08-13 Hans-Peter Nilsson <hp@bitrange.com>
1384 * emultempl/generic.em: Support EXTRA_EM_FILE.
1385 (ld_${EMULATION_NAME}_emulation): Support emulation parameters
1386 LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
1387 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
1388 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
1389 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
1390 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
1391 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
1392 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
1393 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
1394 LDEMUL_FIND_POTENTIAL_LIBRARIES.
1396 2001-08-12 Richard Henderson <rth@redhat.com>
1398 * scripttempl/elf.sc, scripttempl/elfd30v.sc,
1399 scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
1400 scripttempl/v850.sc: Keep .jcr data.
1402 2001-08-12 H.J. Lu <hjl@gnu.org>
1403 Andrew Haley <aph@cambridge.redhat.com>
1404 Nick Clifton <nickc@redhat.com>
1406 * ldgram.y (had_script): Change name to saved_script_handle.
1407 Change type to file handle.
1408 * ld.h (had_script): Rename and retype.
1409 * ldfile.c (ldfile_open_command_file): Save the file handle
1410 used in saved_script_handle.
1411 * lexsup.c (parse_args): Do not allow -c option to alter
1412 saved_script_handle.
1413 * ldmain.c (main): Print out the linker script used if
1414 --verbose is given. Check saved_script_handle to obtain the
1415 external linker script used, or if NULL, dump the builtin
1417 * ld.texinfo: Document that --verbose now dumps the linker
1418 script used, regardless of whether it was an internal or an
1421 2001-08-10 Andreas Jaeger <aj@suse.de>
1423 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
1425 * configure: Regenerate.
1427 2001-08-09 Alan Modra <amodra@bigpond.net.au>
1429 * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
1431 * scripttempl/elf.sc: Move non-text .dynamic section before
1432 .plt/.got/.sdata* group.
1433 (OTHER_GOT_SECTIONS): Move to immediately after .got.
1434 (OTHER_SDATA_SECTIONS): Add.
1435 * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
1437 * emulparams/crislinux.sh: Likewise.
1438 * emulparams/elf32b4300.sh: Likewise.
1439 * emulparams/elf32bmip.sh: Likewise.
1440 * emulparams/elf32bmipn32.sh: Likewise.
1441 * emulparams/elf32bsmip.sh: Likewise.
1442 * emulparams/elf32btsmip.sh: Likewise.
1443 * emulparams/elf32ebmip.sh: Likewise.
1444 * emulparams/elf32elmip.sh: Likewise.
1445 * emulparams/elf32l4300.sh: Likewise.
1446 * emulparams/elf32lmip.sh: Likewise.
1447 * emulparams/elf32lsmip.sh: Likewise.
1448 * emulparams/elf32ltsmip.sh: Likewise.
1449 * emulparams/elf64bmip.sh: Likewise.
1450 * emulparams/elf64btsmip.sh: Likewise.
1451 * emulparams/elf64ltsmip.sh: Likewise.
1453 2001-08-08 Alan Modra <amodra@bigpond.net.au>
1455 * genscripts.sh: Source the emulparams script before each output
1456 script is generated so that variables like `RELOCATING' may affect
1457 variables defined in the emulparams script.
1459 2001-08-04 Alan Modra <amodra@bigpond.net.au>
1461 * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
1464 * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
1465 ie. iterate over wild_statement.section_list.
1466 (gld${EMULATION_NAME}_place_orphan): Likewise.
1468 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1470 * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
1471 .fini[0-4] sections used by _exit
1472 (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
1473 (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
1474 * scripttempl/elfm68hc11.sc: Likewise.
1476 2001-08-03 H.J. Lu <hjl@gnu.org>
1478 * emultempl/beos.em (init): Add the missing initialization.
1480 2001-08-03 Alan Modra <amodra@bigpond.net.au>
1482 * ld.texinfo (Input Section Basics): Clarify ordering of output
1484 * ldlang.c (callback_t): Add wildcard_list param.
1485 (walk_wild_section): Remove "section" param. Rewrite for
1486 lang_wild_statement_type change. Remove unique_section_p test.
1487 (walk_wild_file): Remove "section" param.
1488 (walk_wild): Remove "section" and "file" params.
1489 (lang_gc_wild): Likewise.
1490 (wild): Likewise. Modify for lang_wild_statement_type change.
1491 (wild_sort): Likewise. Add "sec" param.
1492 (gc_section_callback): Likewise.
1493 (output_section_callback): Likewise. Do unique_section_p test.
1494 (map_input_to_output_sections): Modify call to wild.
1495 (lang_gc_sections_1): Likewise.
1496 (print_wild_statement): Modify for lang_wild_statement_type
1498 (lang_add_wild): Replace filename, filenames_sorted param with
1499 filespec. Replace section_name, sections_sorted,
1500 exclude_filename_list with section_list.
1501 * ldlang.h (lang_add_wild): Here too.
1502 (lang_wild_statement_type): Replace section_name, sections_sorted,
1503 and exclude_filename_list with section_list.
1504 * ldgram.y (current_file): Delete.
1505 (%union): Add wildcard_list.
1506 (file_NAME_list): Set type to wildcard_list. Build a linked list
1507 rather than calling lang_add_wild for each entry.
1508 (input_section_spec_no_keep): Call lang_add_wild here instead.
1509 * ld.h (struct wildcard_list): Declare.
1510 * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
1512 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
1514 * ldmain.c (main): initialize link_info.pei386_auto_import
1515 * pe-dll.c: new tables for auto-export filtering
1516 (auto_export): change API, pass abfd for contextual filtering.
1517 Loop thru tables of excluded symbols instead of comparing
1520 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
1522 * pe-dll.c: new variable pe_dll_enable_extra_debug. New
1523 static variable current_sec (static struct sec *). Add
1524 forward declaration for add_bfd_to_link.
1525 (process_def_file): Don't export undefined symbols. Do not
1526 export symbols starting with "_imp__". Call auto_export()
1528 (pe_walk_relocs_of_symbol): New function.
1529 (generate_reloc): add optional extra debugging
1530 (pe_dll_generate_def_file): eliminate extraneous initial blank
1532 (make_one): enlarge symtab to make room for __nm__ symbols
1533 (DATA auto-import support).
1534 (make_singleton_name_thunk): New function.
1535 (make_import_fixup_mark): New function.
1536 (make_import_fixup_entry): New function.
1537 (pe_create_import_fixup): New function.
1538 (add_bfd_to_link): Specify that 'name' argument is a CONST
1540 * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
1541 declare new functions pe_walk_relocs_of_symbol and
1542 pe_create_import_fixup.
1543 * emultempl/pe.em: add new options --enable-auto-import,
1544 --disable-auto-import, and --enable-extra-pe-debug.
1545 (make_import_fixup): New function.
1546 (pe_find_data_imports): New function.
1547 (pr_sym): New function.
1548 (gld_${EMULATION_NAME}_after_open): Add optional extra pe
1549 debugging. Call pe_find_data_imports. Mark .idata as DATA, not
1552 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
1554 * ld.texinfo: add additional documentation for
1555 --export-all-symbols. Document --out-implib,
1556 --enable-auto-image-base, --disable-auto-image-base,
1557 --dll-search-prefix, --enable-auto-import, and
1558 --disable-auto-import.
1559 * ldint.texinfo: Add detailed documentation on auto-import
1562 2001-07-30 Nick Clifton <nickc@cambridge.redhat.com>
1564 * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
1567 2001-07-24 Alan Modra <amodra@bigpond.net.au>
1569 * Makefile.am: Update dependencies with "make dep-am".
1570 * Makefile.in: Regenerate
1572 2001-07-23 Alan Modra <amodra@bigpond.net.au>
1574 * ldcref.c (check_section_sym_xref): New function.
1575 (check_nocrossrefs): Call it.
1576 (check_nocrossref): Interate over h->refs here instead of..
1577 (check_refs): ..here. Pass in the symbol name, section, and bfd
1578 rather than hash_entry pointers.
1579 (struct check_refs_info): Keep symbol name rather than hash entry.
1581 (check_reloc_refs): Tweak for above changes in check_refs_info.
1582 Only report references to section syms when symname is NULL to
1583 prevent duplicate messages for the same reloc.
1585 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com>
1587 * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
1588 available. Do not print NULL trees.
1589 (exp_print_token): Print unknown tokens with values > 126 as
1590 decimal values not ASCII characters.
1592 * ldlang.c (lang_leave_overlay): If a region is specified assign
1593 it to all sections inside the overlay unless they have been
1594 assigned to the own, non-default, memory region.
1596 * README: Add header for consistency with other README files.
1598 2001-07-14 H.J. Lu <hjl@gnu.org>
1600 * emultempl/elf32.em (output_prev_sec_find): Never return
1601 bfd_abs_section_ptr, bfd_com_section_ptr nor
1602 bfd_und_section_ptr.
1604 2001-07-14 Nick Clifton <nickc@cambridge.redhat.com>
1606 * Makefile.am (em32relf.c): Change dependency from generic.em to
1608 * Makefile.in: Regenerate.
1610 2001-07-14 matthew green <mrg@eterna.com.au>
1612 * configure.tgt (i386-*-netbsdelf*): New target.
1613 (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
1615 2001-07-13 Jakub Jelinek <jakub@redhat.com>
1617 * emultempl/elf32.em (output_prev_sec_find): New.
1618 (place_orphan): Use it.
1620 2001-07-11 H.J. Lu <hjl@gnu.org>
1622 * ldmain.c (main): Fix typos in the last change.
1624 2001-07-11 Jakub Jelinek <jakub@redhat.com>
1626 * ldmain.c (main): Disallow -F and -f without -shared.
1628 2001-07-11 Nick Clifton <nickc@cambridge.redhat.com>
1630 * emultempl/pe.em (after_open): Check for the output_bfd not
1631 having any coff_data structure allocated to it.
1633 2001-07-09 David O'Brien <obrien@FreeBSD.org>
1635 * emultempl/elf32.em: Do not assuming that contents of the buffer
1636 returned from basename function will remain unchanged accross other
1639 2001-07-03 H.J. Lu <hjl@gnu.org>
1641 * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
1642 2001-07-03. It creates dynamic entries even for static binaries.
1644 2001-07-03 Jakub Jelinek <jakub@redhat.com>
1646 * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
1647 (DYNAMIC): Use it to reserve few dynamic entries for
1650 2001-06-27 Alan Modra <amodra@bigpond.net.au>
1652 * emulparams/hppa64linux.sh: New file.
1653 * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
1654 * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
1655 (ehppa64linux.c): Add rule to make it.
1657 * Makefile.in: Regenerate.
1659 2001-06-21 Hans-Peter Nilsson <hp@axis.com>
1661 * ld.texinfo (Options, -r): Mention restrictions when using
1662 different object formats.
1664 2001-06-19 Hans-Peter Nilsson <hp@axis.com>
1666 * ldlang.c (lang_check): Emit fatal error if relocatable link
1667 between different object flavours with relocations in input.
1669 2001-06-19 H.J. Lu <hjl@gnu.org>
1671 * ld.texinfo (-E, --export-dynamic): Mention --version-script.
1672 (--version-script): Mention the language support.
1674 2001-06-19 H.J. Lu <hjl@gnu.org>
1676 * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
1678 2001-06-18 H.J. Lu <hjl@gnu.org>
1680 * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
1681 (diststuff): Add $(MANS).
1682 * Makefile.in: Regenerated.
1686 2001-06-18 Hans-Peter Nilsson <hp@axis.com>
1688 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1689 Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
1690 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
1691 * ld.h (args_type): Remove member export_dynamic. All users
1692 changed to use struct bfd_link_info member.
1694 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
1695 $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
1696 * Makefile.in: Regenerate.
1698 2001-06-18 H.J. Lu <hjl@gnu.org>
1700 * ldlang.c (init_os): Add the newline to the einfo call.
1701 (lang_check): Likewise.
1702 (lang_do_version_exports_section): Likewise.
1704 2001-06-15 H.J. Lu <hjl@gnu.org>
1706 * lexsup.c (parse_args); Save optind to report unrecognized
1709 2001-06-15 Hans-Peter Nilsson <hp@axis.com>
1711 * ldlang.c (lang_check): Emit fatal error if relocatable link
1712 between different object flavours.
1714 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
1715 Set new link_info member export_dynamic.
1716 * ldmain.c (main): Initialize new link_info member export_dynamic.
1718 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
1720 * ldlang.c (walk_wild): Only call walk_wild_file if
1721 lookup_name returns something.
1722 (lookup_name): If load_symbols fails, return NULL.
1723 (load_symbols): Change to a boolean function.
1724 (open_input_bfds): If load_symbols fails then do not make the
1727 2001-06-08 Alan Modra <amodra@bigpond.net.au>
1729 * ldlang.c (record_bfd_errors): Remove.
1731 * emultempl/aix.em: Fix copyright dates.
1733 2001-06-07 Andreas Jaeger <aj@suse.de>
1735 * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
1736 (TEXT_START_ADDR): Likewise.
1738 2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
1740 * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
1742 2001-06-05 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1744 * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
1746 2001-05-31 H.J. Lu <hjl@gnu.org>
1748 * ldlang.c (open_input_bfds): Don't change the bfd error
1749 handler whilst loading symbols.
1751 2001-05-28 Nick Clifton <nickc@cambridge.redhat.com>
1753 * configure.tgt: Remove i370-mvs architecture, it is not currently
1756 2001-05-25 H.J. Lu <hjl@gnu.org>
1758 * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1759 like emulparams/aixppc.sh.
1761 2001-05-25 H.J. Lu <hjl@gnu.org>
1763 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
1764 setting of output_filename after bfd_scan_arch.
1765 * emultempl/pe.em: Likewise.
1767 2001-05-25 H.J. Lu <hjl@gnu.org>
1769 * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1770 like emulparams/aixppc.sh.
1772 * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
1773 instead of ${srcdir}/emultempl/stringify.sed.
1775 2001-05-25 Timothy Wall <twall@oculustech.com>
1777 * emulparams/elf64_aix.sh: Change settings to match IBM linker
1780 2001-05-25 Alan Modra <amodra@one.net.au>
1782 * configure.host: Replace linuxoldld with linux*oldld.
1783 * configure.tgt: Likewise.
1785 2001-05-24 H.J. Lu <hjl@gnu.org>
1787 * emultempl/stringify.sed: Removed again.
1789 2001-05-24 H.J. Lu <hjl@gnu.org>
1791 * emultempl/aix.em (OUTPUT_ARCH): Defined.
1792 (gld${EMULATION_NAME}_before_parse): Initialize
1793 ldfile_output_architecture, ldfile_output_machine and
1794 ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
1795 * emultempl/beos.em: Likewise.
1796 * emultempl/elf32.em: Likewise.
1797 * emultempl/linux.em: Likewise.
1798 * emultempl/mipsecoff.em: Likewise.
1799 * emultempl/pe.em: Likewise.
1800 * emultempl/sunos.em: Likewise.
1802 2001-05-24 Tom Rix <trix@redhat.com>
1804 * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
1805 udate import file format.
1806 (change_symbol_mode) New, same
1807 (is_syscall) New, same
1808 * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
1809 * emulparams/aixppc64.sh : same
1810 * emulparams/aixrs6.sh : same
1811 * emulparams/ppcmacos.sh : same
1812 * emultempl/aix.em : use strtoull to parse options
1813 * Makefile.am : add eaixppc64 emulation for xcoff64
1814 * Makefile.in : same
1815 * configure.tgt : same
1817 * scripttempl/aix.sc : default text section offset to 0x10000000
1818 default data section offset to 0x20000000
1819 add .sv3264 and .sv64 pseudo sections
1820 loader and debug sections use the currect section offset.
1822 * emultempl/aix.em : Add xcoff64 support
1823 Add -binitfini support
1824 (gld${EMULATION_NAME}_before_parse) -binitfini
1825 (gld${EMULATION_NAME}_parse_args) same
1826 (gld${EMULATION_NAME}_before_allocation) format change for special
1829 * emulparams/aixppc64.sh : New file for xcoff64 support
1831 2001-05-23 Alexandre Oliva <aoliva@redhat.com>
1833 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
1834 variable to avoid non-portable shell construct.
1836 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1838 * ldmain.c (get_emulation): Add -mips5 command line argument.
1840 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
1842 * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
1843 (ELF_INTERPRETER_NAME): Define it.
1844 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
1846 * configure.tgt (targ_emul, targ_extra_emuls)
1847 [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
1848 as primary, elf_i386 as extra.
1849 * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
1850 (eelf_i386_ldso.c): New rule.
1851 * Makefile.in: Rebuilt.
1853 2001-05-22 Nick Clifton <nickc@redhat.com>
1855 * lexsup.c (ld_options): Allow -I to be an alias for
1856 --dynamic-linker. This is for Solaris compatability.
1857 * ld.texinfo: Document that -I can be used.
1860 2001-05-16 Alan Modra <amodra@one.net.au>
1862 * ldlang.c (wild_doit): Use linker_has_input to reliably determine
1863 whether an input section is the first one assigned to an output
1865 Assorted formatting fixes.
1867 2001-05-14 DJ Delorie <dj@delorie.com>
1869 * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
1870 * Makefile.in: Ditto.
1872 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1874 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
1875 .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
1877 * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
1879 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1881 * ldlang.c (lang_process): Call bfd_merge_sections.
1883 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1885 * ldgram.y: Fix typo.
1887 2001-05-03 H.J. Lu <hjl@gnu.org>
1889 * emultempl/elf32.em: Include "libiberty.h".
1890 (gld${EMULATION_NAME}_vercheck): Call basename () to get the
1891 basename of the bfd filename.
1892 (gld${EMULATION_NAME}_stat_needed): Likewise.
1893 (gld${EMULATION_NAME}_try_needed): Likewise.
1894 (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
1896 2001-05-02 H.J. Lu <hjl@gnu.org>
1898 * emultempl/pe.em: Include <ctype.h>.
1900 2001-05-02 Johan Rydberg <jrydberg@opencores.org>
1902 * emulparams/elf32openrisc.sh: New file.
1904 * Makefile.am: Add OpenRISC target.
1905 * Makefile.in: Regenerated.
1907 * configure.tgt: Add openrisc-*-* mapping.
1909 2001-05-02 Nick Clifton <nickc@redhat.com>
1911 * emultempl/aix.em: Replace buystring with xstrdup.
1912 * emultempl/beos.em: Replace buystring with xstrdup.
1914 2001-05-02 H.J. Lu <hjl@gnu.org>
1916 * ldfile.c: Include "libiberty.h".
1917 * ldlex.l: Likewise.
1919 * ldmisc.c (buystring): Removed.
1920 * ldmisc.h: Likewise.
1922 * ldfile.c: Replace buystring with xstrdup.
1923 * ldlang.c: Likewise.
1924 * ldlex.l: Likewise.
1925 * ldmain.c: Likewise.
1926 * ldmisc.c: Likewise.
1927 * lexsup.c: Likewise.
1928 * mpw-eppcmac.c: Likewise.
1930 2001-04-30 Andreas Jaeger <aj@suse.de>
1932 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
1934 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1936 * ldlang.c (load_symbols): Give emulation a chance
1937 to process unrecognized file before fatal error is
1938 reported, not after.
1940 2001-04-27 Sean McNeil <sean@mcneil.com>
1942 * configure.tgt: Add arm-vxworks target.
1943 * scripttempl/armcoff.sc: Support .text or .data as a section name
1947 2001-04-13 J.T. Conklin <jtc@redback.com>
1949 * ld.texinfo: Document --fatal-warnings.
1952 * ldmisc.c (vfinfo): Set flag to inhibit making executable if
1953 warnings have been turned into errors.
1954 * lexsup.c (OPTION_WARN_FATAL): Define.
1955 (ld_options): Entry for --fatal-warnings.
1956 (parse_args): Handle OPTION_WARN_FATAL.
1957 * ld.h (ld_config_type): Add fatal_warnings field.
1959 2001-04-13 Jakub Jelinek <jakub@redhat.com>
1961 * ldmain.c (main): Default to discard_sec_merge.
1962 * lexsup.c (OPTION_DISCARD_NONE): Define.
1963 (ld_options): Add --discard-none.
1964 (parse_args): Handle OPTION_DISCARD_NONE.
1965 * ldlang.c (wild_doit): SEC_MERGE should be set in the output
1966 section only if SEC_MERGE and SEC_STRINGS flags and entsize of
1967 all its input sections match.
1969 2001-04-05 Steven J. Hill <sjhill@cotw.com>
1971 * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
1972 (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
1973 (eelf32ltsmip.c): New target.
1974 (eelf64btsmip.c): Likewise.
1975 (eelf64ltsmip.c): Likewise.
1976 * Makefile.in: Regenerated.
1978 * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
1980 (mips*-*-linux-gnu*): Likewise.
1982 * emulparams/elf32ltsmip.sh: New. Traditional little endian
1984 * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
1986 * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
1989 2001-04-05 Hans-Peter Nilsson <hp@axis.com>
1991 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
1992 correct value of __Stext here.
1993 (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
1996 * emulparams/crislinux.sh: Remove FIXME.
1998 2001-04-02 Alan Modra <alan@linuxcare.com.au>
2000 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
2001 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
2003 2001-03-27 Hans-Peter Nilsson <hp@axis.com>
2005 * configure.tgt (cris-*-*): Change default emulation to criself.
2006 (cris-*-*aout*): New rule.
2008 2001-03-27 Matthew Wilcox <willy@ldl.fc.hp.com>
2010 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
2011 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
2013 2001-03-26 Andreas Jaeger <aj@suse.de>
2015 * ld.texinfo (Overview): Fix syntax in texi code.
2017 2001-03-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2019 * ld.texinfo: Put @c man indications to generate the ld man page.
2020 When generating man, define all the variables. Define SEEALSO
2021 and SYNOPSIS. Re-organize some lines to avoid the cross references.
2022 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
2023 (ld.1): Generate from ld.texinfo.
2024 * Makefile.in: Regenerate.
2026 2001-03-23 Mark Elbrecht <snowball3@bigfoot.com>
2028 * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
2029 and '-fdata-sections'. Set the VMA of STABS sections to zero.
2031 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2033 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
2034 is an absolute path look only for this file and not along the path.
2036 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2038 * emultempl/elf32.em (OPTION_GROUP): New macro.
2039 Add new option Bgroup to longopts.
2040 (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
2041 (gld*_list_options): Add -Bgroup and -z defs.
2042 * ld.1: Document -Bgroup and -z defs.
2043 * ld.texinfo: Likewise.
2045 2001-03-07 Michael Meissner <meissner@redhat.com>
2047 * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
2048 with sections created by -fdata-sections.
2049 (.dynbss,.bss): Ditto.
2051 2001-03-05 Alan Modra <alan@linuxcare.com.au>
2053 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
2054 after_allocation_default, not gld..._before_allocation.
2056 2001-02-27 Alan Modra <alan@linuxcare.com.au>
2058 * configure.in (BFD_VERSION): New.
2059 (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
2060 * configure: Regenerate.
2061 * Makefile.am: Run "make dep-am"
2062 * Makefile.in: Regenerate.
2064 2001-02-26 Timothy Wall <twall@cygnus.com>
2066 * emulparams/elf64_aix.sh: Add additional read-only sections;
2067 uncomment lines which are now required.
2069 2001-02-26 H.J. Lu <hjl@gnu.org>
2071 * ldlang.c (open_input_bfds): Set the bfd error handler so
2072 that problems can be caught whilst loading symbols.
2073 (record_bfd_errors): New function: Report BFD errors and mark
2074 the executable output as being invalid.
2076 2001-02-22 Timothy Wall <twall@cygnus.com>
2078 * configure.host: Add configuration for ia64-*-aix*.
2079 * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
2080 Add dependencies for eelf64_aix.c.
2081 * Makefile.in: Regenerate.
2082 * configure.tgt: Add ia64-*-aix* mapping.
2083 * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
2084 * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
2087 2001-02-20 H.J. Lu <hjl@gnu.org>
2089 * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
2090 false if we found the file.
2092 2001-02-18 David O'Brien <obrien@FreeBSD.org>
2094 * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
2095 FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
2097 2001-02-18 lars brinkhoff <lars@nocrew.org>
2099 * Makefile.am: Add PDP-11 target.
2100 * configure.tgt: Likewise.
2101 * emulparams/pdp11.sh: New file.
2103 2001-02-17 David O'Brien <obrien@FreeBSD.org>
2105 * configure.host: Add a generic FreeBSD configuration entry such that
2106 all [modern] FreeBSD systems on all platforms will look the same.
2108 2001-02-14 H.J. Lu <hjl@gnu.org>
2110 * configure.tgt: Remove mention of earmelf_linux26.
2112 2001-02-13 Richard Henderson <rth@redhat.com>
2114 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
2116 2001-02-13 H.J. Lu <hjl@gnu.org>
2118 * ldexp.h (node_type): Add etree_provided.
2119 * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
2120 type to etree_provided if defined by PROVIDE. Allow updating
2122 (exp_print_tree): Handle etree_provided.
2123 * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
2126 2001-02-09 David Mosberger <davidm@hpl.hp.com>
2128 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
2129 .IA_64.unwind.* pattern to unwind table section and
2130 .IA_64.unwind_info* pattern to unwind info section.
2132 2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
2134 * Makefile.am: Add linux target for S/390.
2135 * Makefile.in: Likewise.
2136 * configure.host: Likewise.
2137 * configure.tgt: Likewise.
2138 * emulparams/elf64_s390.sh: New file.
2139 * emulparams/elf_s390.sh: New file.
2141 2001-02-09 Jakub Jelinek <jakub@redhat.com>
2143 * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
2145 (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
2147 2001-02-06 Philip Blundell <philb@gnu.org>
2149 * Makefile.am: Remove mention of earmelf_linux26.
2150 * Makefile.in: Regenerate.
2152 2001-02-04 Philip Blundell <philb@gnu.org>
2154 * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
2155 * emulparams/armelf_linux26.sh: Delete.
2156 * configure.tgt: Remove mention of armelf_linux26 emulation.
2158 2001-02-01 Nick Clifton <nickc@redhat.com>
2160 * ld.1: Replace occurances of -oformat with --oformat.
2162 2001-01-25 Jim Driftmyer <jdrift@stny.rr.com>
2164 * ldlang.c (lang_leave_overlay): Don't set lma_region when
2165 load_base is specified.
2167 2001-01-24 Hans-Peter Nilsson <hp@axis.com>
2169 * emultempl/elf32.em: Correct spelling in comments and listed
2172 2001-01-23 Alan Modra <alan@linuxcare.com.au>
2174 * ldlang.c (lang_leave_overlay): Only set lma_region from the
2175 default for the first section of a group of overlay sections.
2177 2001-01-22 Alan Modra <alan@linuxcare.com.au>
2179 * Makefile.am (GENSCRIPTS): Pass exec_prefix.
2180 * Makefile.in: Regenerate.
2181 * genscripts.sh: Use exec_prefix parameter to specify tool lib.
2182 Check for null tool_dir.
2184 2001-01-16 Jim Wilson <wilson@redhat.com>
2186 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
2187 and IA_64.unwind.info.
2189 2001-01-16 H.J. Lu <hjl@gnu.org>
2191 * ldlang.c (lang_check): Merge the private data only if the
2192 input file has contents.
2194 2001-01-14 Alan Modra <alan@linuxcare.com.au>
2196 * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
2198 * emultempl/hppaelf.em (hppaelf_after_parse): New function,
2199 enabling search for libmilli. On a relocatable link, make .text
2201 (LDEMUL_AFTER_PARSE): Define.
2202 (hppaelf_finish): Correct spelling of relocatable in comments.
2204 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2205 rummage through the script for sections on the unique list.
2206 Correct length of strncmp for ".note".
2207 (gld${EMULATION_NAME}_check_needed): Rearrange function.
2209 * ldlang.c (unique_section_list): New var.
2210 (unique_section_p): New function.
2211 (walk_wild_section): Don't match sections on unique_section_list.
2212 (lang_add_unique): New function.
2213 Correct spelling of relocatable in comments.
2215 * ldlang.h (struct unique_sections): Declare.
2216 (unique_section_list): Declare.
2217 (unique_section_p): Declare.
2218 (lang_add_unique): Declare.
2220 * lexsup.c (ld_options): Allow --unique to take an optional arg.
2221 (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
2223 * ld.texinfo (--unique): Update.
2225 2001-01-13 Nick Clifton <nickc@redhat.com>
2227 * lexsup.c (parse_args): Remove spurious white space.
2229 2001-01-12 Nick Clifton <nickc@redhat.com>
2231 * lexsup.c (parse_args): Update copyright date.
2233 2001-01-12 Philip Blundell <pb@futuretv.com>
2235 * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
2237 2001-01-10 Kazu Hirata <kazu@hxi.com>
2239 * scripttempl/h8300.sc: Fix formatting. Fix a comment typo.
2240 * scripttempl/h8300h.sc: Fix formatting.
2241 * scripttempl/h8300s.sc: Likewise.
2242 * scripttempl/h8500.sc: Likewise.
2243 * scripttempl/h8500b.sc: Likewise.
2244 * scripttempl/h8500c.sc: Likewise.
2245 * scripttempl/h8500m.sc: Likewise.
2246 * scripttempl/h8500s.sc: Likewise.
2248 2000-01-07 David O'Brien <obrien@BSDi.com>
2250 * emultempl/elf32.em: Only perform Linux ld hints processing when
2253 2001-01-07 Philip Blundell <philb@gnu.org>
2255 * ld.texinfo (Bug Reporting): Update email address for reports.
2257 2000-12-31 Nick Clifton <nickc@redhat.com>
2259 * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
2260 options by checking for a return value of '?' not -1.
2262 2000-12-28 Nick Clifton <nickc@redhat.com>
2264 * lexsup.c (struct ld_option): Add new enum value:
2266 (ld_options[]): Change -omagic, -output and -oformat options
2267 to be EXACTLY_TWO_DASHES.
2268 (OUTPUT_COUNT): Use ARRAY_SIZE.
2269 (parse_args): Change parameter 'argc' to unsigned.
2270 Place EXACTLY_TWO_DASHES options into new really_longopts
2272 If getopt_long_only fails, try calling getopt_long using the
2273 really_longopts array.
2274 (help): Print a double dash for both EXACTLY_TWO_DASHES and
2277 * ldlex.h: Fix prototype of parse_args.
2279 * ld.texinfo: Document that long options starting with 'o'
2280 must be preceeded by two dashes. Change example of a single
2281 dashed long option from -oformat to -trace-symbol.
2283 2000-12-26 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
2285 * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
2286 (longopts[]): New --no-default-excludes option.
2287 (gld_${EMULATION_NAME}_list_options): Document.
2288 (gld_${EMULATION_NAME}_parse_args): Handle.
2290 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2292 * ldlang.c (new_stat): Revert the last beautification with "innocent"
2293 whitespace, it breaks the K&R C preprocessor.
2295 2000-12-11 DJ Delorie <dj@redhat.com>
2297 * ld.texinfo: Add notes about --whole-archive and gcc.
2299 2000-11-18 Fred Fish <fnf@be.com>
2301 * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
2302 (ld_options): Entry for --allow-shlib-undefined.
2303 (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
2304 * ldmain.c (main): Initialize link_info.allow_shlib_undefined
2306 * ld.texinfo: Document new command line switch.
2308 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
2310 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
2311 .fixup is actually read/write.
2312 * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2313 * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2314 * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2316 2000-12-11 Jan Hubicka <jh@suse.cz>
2318 * NEWS: Add note about x86_64 architecture.
2320 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
2322 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
2323 Set DWARF2 sections to a VMA of zero.
2325 2000-12-01 Joel Sherrill <joel@OARcorp.com>
2327 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
2329 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
2330 (sparc*-*-rtems*): Switched from a.out to ELF.
2332 2000-11-30 Jan Hubicka <jh@suse.cz>
2334 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
2335 (eelf_x86_64.c): New.
2336 * Makefile.in: Regenerate.
2337 * configure.tgt: Add support for x86_64-*-linux-gnu*.
2338 * emulparams/elf_x86_64.sh: New.
2340 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
2342 * emulparams/crislinux.sh (ENTRY): Change back to _start.
2343 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
2345 * scripttempl/crisaout.sc: Change all RELOCATING not related to
2346 merging non-a.out sections into CONSTRUCTING.
2348 2000-11-28 Nick Clifton <nickc@redhat.com>
2350 * ld.1 (COPYING): Mention that the GNU Free Documentation
2351 License is present in the sources, but not the output, and
2352 also available from the GNU website.
2353 (GNU Free Documentation License): Comment out this section.
2355 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
2357 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
2360 2000-11-25 David O'Brien <obrien@FreeBSD.org>
2362 * ld.1: Remove old date so it does not give the impression the manpage
2365 2000-11-24 Nick Clifton <nickc@redhat.com>
2367 * configure.tgt (xscale-coff): Add target.
2368 (xscale-elf): Add target.
2370 2000-11-24 Fred Fish <fnf@be.com>
2372 * ldmain.c (main): Remove redundant init of config.make_executable
2375 2000-11-15 Richard Henderson <rth@redhat.com>
2377 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
2379 2000-11-14 Kazu Hirata <kazu@hxi.com>
2381 * scripttempl/h8300.sc: Fix formatting.
2382 * scripttempl/h8300h.sc: Likewise.
2383 * scripttempl/h8300s.sc: Likewise.
2385 2000-11-14 Denis Chertykov <denisc@overta.ru>
2387 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
2389 2000-11-09 Philip Blundell <pb@futuretv.com>
2391 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
2392 around orphan sections whose names can be represented in C.
2394 2000-11-07 Jim Wilson <wilson@redhat.com>
2396 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
2397 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
2399 2000-11-06 Nick Clifton <nickc@redhat.com>
2401 * ld.texinfo: Add GNU Free Documentation License.
2402 * ldint.texinfo: Add GNU Free Documentation License.
2403 * ld.1: Add GNU Free Documentation License.
2405 2000-11-05 Alan Modra <alan@linuxcare.com.au>
2407 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
2408 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
2410 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
2411 Move 2000-11-02 Makefile.in changes to this file.
2412 * Makefile.in: Regenerate.
2414 2000-11-03 Nick Clifton <nickc@redhat.com>
2416 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
2417 constructors and destructors.
2418 * scripttempl/h8300h.sc: Ditto.
2419 * scripttempl/h8300s.sc: Ditto.
2420 * scripttempl/h8500.sc: Ditto.
2421 * scripttempl/h8500b.sc: Ditto.
2422 * scripttempl/h8500c.sc: Ditto.
2423 * scripttempl/h8500m.sc: Ditto.
2424 * scripttempl/h8500s.sc: Ditto.
2425 * scripttempl/v850.sc: Ditto.
2426 * scripttempl/w65.sc: Ditto.
2427 * scripttempl/z8000.sc: Ditto.
2429 2000-11-02 Per Lundberg <plundis@chaosdev.org>
2431 * Makefile.in (e_i386_chaos.c): New rule.
2432 (ALL_EMULATIONS): Added e_i386_chaos.o.
2433 * emulparams/elf_i386_chaos.sh: New file.
2434 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
2436 2000-10-20 Jakub Jelinek <jakub@redhat.com>
2438 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
2439 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
2440 Fix sed invocation, so that it coped with '/' in Solaris 64bit
2441 library path suffix.
2442 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
2444 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
2446 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
2447 for consecutive sections.
2449 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
2451 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
2453 * ld.texinfo: Added notes about this new option.
2455 2000-10-16 Nick Clifton <nickc@redhat.com>
2457 * emultempl/pe.em (_after_open): Add tests of return values from
2458 bfd functions. Emit appropriate error messages if necessary.
2460 2000-10-13 Nick Clifton <nickc@redhat.com>
2462 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
2463 local variables - they are not used, but leave in the call to
2464 bfd_canonicalize_symtab.
2465 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
2466 pe_dll_search_prefix.
2468 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
2470 * emultempl/pe.em (pe_dll_search_prefix): New variable,
2471 (longopts): New --dll-search-prefix option.
2472 (gld_${EMULATION_NAME}_list_options): Document.
2473 (gld_${EMULATION_NAME}_parse_args): Handle.
2474 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
2475 dynamically, search for a dll named '<prefix><basename>.dll'
2476 in preference to 'lib<basename>.dll' if --dll-search-prefix
2479 2000-10-12 Alan Modra <alan@linuxcare.com.au>
2481 * ldlang.c (section_already_linked): Set kept_section instead of
2484 2000-10-10 Kazu Hirata <kazu@hxi.com>
2486 * deffile.h: Fix formatting.
2487 * lexsup.c: Likewise.
2490 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2492 * pe-dll.c (make_one): Do not generate code thunk for DATA
2494 (process_def_file): deduce DATA flag for auto-export sumbols.
2496 2000-10-09 Kazu Hirata <kazu@hxi.com>
2498 * ld.h: Fix formatting.
2499 * ldcref.c: Likewise.
2500 * ldctor.h: Likewise.
2501 * ldemul.c: Likewise.
2502 * ldemul.h: Likewise.
2503 * ldexp.c: Likewise.
2504 * ldexp.h: Likewise.
2505 * ldfile.c: Likewise.
2506 * ldfile.h: Likewise.
2507 * ldlang.c: Likewise.
2508 * ldlang.h: Likewise.
2509 * ldmain.c: Likewise.
2510 * pe-dll.c: Likewise.
2512 * pe-dll.c: Revert some formatting fixes.
2514 2000-10-08 Kazu Hirata <kazu@hxi.com>
2516 * pe-dll.c: Fix formatting.
2518 2000-10-05 Kazu Hirata <kazu@hxi.com>
2520 * ldlang.c: Fix formatting.
2522 2000-10-03 DJ Delorie <dj@redhat.com>
2524 * pe-dll.c (fill_edata): initialize entire block
2525 (make_one): fill in correct section.
2527 2000-10-03 Kazu Hirata <kazu@hxi.com>
2529 * ldexp.c: Fix formatting.
2531 2000-10-02 DJ Delorie <dj@redhat.com>
2533 * emultempl/pe.em (gld_*_after_open): detect case where there two
2534 import libraries for same dll; rename one to ensure proper link
2537 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
2539 (generate_edata): fix typo
2541 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
2543 * scripttempl/crisaout.sc (ENTRY): Now __start.
2544 (.text): Add default setting for __start.
2545 Remove CONSTRUCTORS handling.
2546 (/DISCARD/): Add .gnu.warning.*.
2547 * emulparams/crislinux.sh (ENTRY): Now __start.
2548 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
2549 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
2550 (ENTRY): Now __start.
2551 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
2552 (EXECUTABLE_SYMBOLS): Add default setting for __start.
2554 2000-09-29 Kazu Hirata <kazu@hxi.com>
2556 * deffile.h: Fix formatting.
2558 * ldcref.c: Likewise.
2559 * ldctor.c: Likewise.
2560 * ldctor.h: Likewise.
2561 * ldemul.c: Likewise.
2562 * ldemul.h: Likewise.
2563 * ldexp.c: Likewise.
2564 * ldexp.h: Likewise.
2565 * ldfile.c: Likewise.
2566 * ldfile.h: Likewise.
2567 * ldlang.c: Likewise.
2568 * ldlang.h: Likewise.
2569 * lexsup.c: Likewise.
2571 * pe-dll.c: Likewise.
2573 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2575 * pe-dll.c (process_def_file): Uninitialized data wasn't
2576 exported with --export-all-symbols switch.
2578 2000-09-28 DJ Delorie <dj@redhat.com>
2580 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
2581 noname work properly.
2583 2000-09-28 Alan Modra <alan@linuxcare.com.au>
2585 * ld.texinfo (HPPA ELF32): New section.
2587 * emultempl/hppaelf.em (group_size): New.
2588 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
2589 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
2590 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
2591 options to prevent abbreviations matching.
2592 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
2593 (PARSE_AND_LIST_ARGS_CASES): Handle it.
2595 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2597 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
2598 on the m68*-*-elf target. Make it support COFF input objects.
2600 2000-09-21 Kazu Hirata <kazu@hxi.com>
2602 * ldmain.c: Fix formatting.
2603 * ldmisc.c: Likewise.
2604 * ldver.c: Likewise.
2605 * ldwrite.c: Likewise.
2607 2000-09-21 Alan Modra <alan@linuxcare.com.au>
2609 * ldwrite.c (clone_section): Silence gcc warnings.
2611 2000-09-20 Alan Modra <alan@linuxcare.com.au>
2613 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
2614 out of memory failure.
2616 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
2617 (clone_section): Handle out of memory failures. Rename var to
2618 avoid c++ reserved word.
2620 2000-09-18 Alan Modra <alan@linuxcare.com.au>
2622 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
2623 stub_name param to stub_sec_name.
2624 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
2626 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2628 * emultempl/m68kelf.em: New file.
2629 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
2630 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
2631 * Makefile.in: Regenerate.
2633 2000-09-15 Alan Modra <alan@linuxcare.com.au>
2635 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
2638 2000-09-13 Nick Clifton <nickc@redhat.com>
2640 * ldmain.c (multiple_definition): Disable relaxation if
2641 multiple symbol definitions are encountered - otherwise the
2642 linker could abort with an assertion failure.
2644 2000-09-10 Nick Clifton <nickc@redhat.com>
2646 * mri.c: Fix formatting.
2648 2000-09-07 H.J. Lu <hjl@gnu.org>
2650 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
2651 * configure: Rebuild.
2653 2000-09-07 H.J. Lu <hjl@gnu.org>
2655 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
2656 * Makefile.in: Rebuild.
2658 2000-09-07 Alan Modra <alan@linuxcare.com.au>
2660 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
2661 broken list handling. Create __start_SECNAME and __stop_SECNAME
2662 when no place-holder. Add some comments. Test both SEC_CODE and
2663 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
2664 Handle case where no output section statement created.
2666 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
2668 * configure.tgt (sh-*-linux*): Added.
2669 * Makefile.am: Added eshelf_linux and eshlelf_linux.
2670 * Makefile.in: Rebuilt.
2671 * emulparams/shelf_linux.sh: New file.
2672 * emulparams/shlelf_linux.sh: New file.
2674 2000-09-06 Alan Modra <alan@linuxcare.com.au>
2676 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2677 try shuffling sections when the orphan happens to be the place
2678 holder. Keep count of unique section names generated so we speed
2679 the search for a new name.
2681 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
2683 * configure: Rebuilt with new libtool.m4.
2685 2000-09-05 Nick Clifton <nickc@redhat.com>
2687 * Makefile.in: Regenerate.
2688 * aclocal.m4: Regenerate.
2689 * configure: Regenerate.
2690 * config.in: Regenerate.
2691 * po/ld.pot: Regenerate.
2693 * ldint.texinfo: Remove CVS revision marker - it foils local
2696 * emultempl/ticoff.em: Remove extraneous comma.
2698 2000-09-05 Alan Modra <alan@linuxcare.com.au>
2700 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
2701 to stub section flags.
2702 (hppa_for_each_input_file_wrapper): New.
2703 (hppa_lang_for_each_input_file): New.
2704 (lang_for_each_input_file): Define to call above.
2705 (multi_subspace): New.
2706 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
2707 (PARSE_AND_LIST_PROLOGUE): Define.
2708 (PARSE_AND_LIST_LONGOPTS): Define.
2709 (PARSE_AND_LIST_OPTIONS): Define.
2710 (PARSE_AND_LIST_ARGS_CASES): Define.
2711 (hppaelf_finish): Call elf32_hppa_set_gp.
2712 (hppaelf_set_output_arch): Remove.
2713 (LDEMUL_SET_OUTPUT_ARCH): Remove.
2715 * emulparams/hppalinux.sh (ELFSIZE): Define.
2717 (OTHER_READONLY_SECTIONS): Define.
2719 (GENERATE_SHLIB_SCRIPT): Define.
2721 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
2722 to const throughout. Change `void *' to `PTR' throughout.
2723 (lang_memory_default): Function is local to file, add `static'.
2725 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
2726 (ehppalinux.c): Likewise.
2727 (earmelf.c): Likewise.
2728 (earmelf_linux.c): Likewise.
2729 (earmelf_linux26.c): Likewise.
2730 * Makefile.in: Regenerate.
2732 * ld.h (ld_config_type): Add unique_orphan_sections.
2733 * lexsup.c (OPTION_UNIQUE): Define.
2734 (ld_options): Add "--unique".
2735 (parse_args): Handle it.
2736 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2737 search for an existing output section if unique_orphan_sections is
2738 set. Make use of bfd_get_unique_section_name rather than
2739 duplicating code here.
2740 * ld.texinfo: Describe --unique.
2742 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
2743 optional arg to split-by-file.
2744 (parse_args): Handle them.
2745 * ld.texinfo: Update description of these options.
2746 * ldwrite.c (clone_section): Pass in the section name. Replace
2747 local code with bfd_get_unique_section_name.
2748 (split_sections): Tidy code and comments. Use a list traversal
2749 more appropriate to the list construction. Handle cooked section
2750 sizes. Split when split_by_reloc reached rather than exceeded.
2751 Track section size and split when split_by_file reached. Fix
2752 link_order_tail (even though it's not used).
2753 (ldwrite): Modify condition for calling split_sections to suit
2754 changed split_by_reloc and split_by_file.
2755 * ldmain.c (main): Init config.split_by_reloc and
2756 config.split_by_file to -1.
2757 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
2758 Change split_by_file to bfd_size_type.
2760 2000-09-02 Nick Clifton <nickc@redhat.com>
2762 * configure.in: Increase version number to 2.10.91.
2763 * NEWS: Mention new ability to support removal of duplicate DWARF2
2765 * configure: Regenerate.
2766 * aclocal.m4: Regenerate.
2767 * config.in: Regenerate.
2769 2000-09-02 Daniel Berlin <dberlin@redhat.com>
2771 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
2773 * scripttempl/elf32avr.sc: Ditto.
2774 * scripttempl/elfd10v.sc: Ditto.
2775 * scripttempl/elfd30v.sc: Ditto.
2776 * scripttempl/elfi370.sc: Ditto.
2777 * scripttempl/elfm68hc11.sc: Ditto.
2778 * scripttempl/elfm68hc12.sc: Ditto.
2779 * scripttempl/elfi386beos.sc: Ditto.
2780 * scripttempl/v850.sc: Ditto.
2782 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
2784 * acinclude.m4: Include libtool and gettext macros from the
2786 * aclocal.m4, configure: Rebuilt.
2788 2000-08-25 Nick Clifton <nickc@redhat.com>
2790 * ldlang.c (open_output): When choosing the target for a
2791 particular endianness, do nothing if the target is not
2794 2000-08-25 H.J. Lu <hjl@gnu.org>
2796 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
2797 check -rpath nor LD_RUN_PATH for cross link.
2798 * ld.texinfo: Document the change.
2800 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
2802 * NEWS: Mention support for CRIS.
2804 2000-08-23 H.J. Lu <hjl@gnu.org>
2806 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
2807 the current runpath list from bfd_elf_get_runpath_list ()
2810 2000-08-22 H.J. Lu <hjl@gnu.org>
2812 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
2813 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
2814 LD_LIBRARY_PATH for native linker. Display the needed DSO if
2815 trace_file_tries is non-zero.
2816 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
2817 if trace_file_tries is non-zero.
2819 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
2822 2000-08-14 Jason Eckhardt <jle@cygnus.com>
2824 * NEWS: Mention i860 support.
2826 2000-08-14 Andreas Schwab <schwab@suse.de>
2828 * scripttempl/elf.sc: Fix last change to use correct comment
2831 2000-08-10 Geoff Keating <geoffk@cygnus.com>
2833 * scripttempl/elf.sc: Add a comment giving the correspondence
2834 between sections, per-datum sections, and linkonce sections. Make
2835 the comment true even for .bss, .sdata, .sdata2, .sbss, and
2838 2000-08-10 Jason Eckhardt <jle@cygnus.com>
2840 * emulparams/elf32_i860.sh: New file.
2841 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
2842 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
2843 (eelf32_i860.c): New rule.
2844 * Makefile.in: Regenerate.
2846 2000-08-10 Nick Clifton <nickc@cygnus.com>
2848 * emulparams/mipspe.sh (ENTRY): Add definition.
2850 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
2852 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
2855 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2857 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
2858 the final size of .bss section.
2859 * scripttempl/elfm68hc12.sc: Likewise.
2861 2000-08-04 Alan Modra <alan@linuxcare.com.au>
2863 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
2864 gld${EMULATION_NAME}_parse_args for consistency. Combine
2865 lastoptind and prevoptind vars, and keep track of last optind.
2866 (gld_${EMULATION_NAME}_list_options): Rename to
2867 gld${EMULATION_NAME}_list_options.
2869 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
2871 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
2872 (i586-sco-sysv5uw7.1.0).
2874 2000-07-27 H.J. Lu <hjl@gnu.org>
2876 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
2877 (PARSE_AND_LIST_PROLOGUE): New.
2878 (PARSE_AND_LIST_LONGOPTS): Likewise.
2879 (PARSE_AND_LIST_OPTIONS): Likewise.
2880 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2881 (PARSE_AND_LIST_EPILOGUE): Likewise.
2883 2000-07-28 Alan Modra <alan@linuxcare.com.au>
2885 * emultempl/armelf.em: Elide functions common to elf32.em,
2886 ie. most of the file.
2887 (arm_elf_after_open): New. Do arm specific things then call
2888 gld${EMULATION_NAME}_after_open.
2889 (arm_elf_before_allocation): New. Call
2890 gld${EMULATION_NAME}_before_allocation then do arm specifics.
2891 (PARSE_AND_LIST_PROLOGUE): Define.
2892 (PARSE_AND_LIST_SHORTOPTS): Define.
2893 (PARSE_AND_LIST_LONGOPTS): Define.
2894 (PARSE_AND_LIST_OPTIONS): Define.
2895 (PARSE_AND_LIST_ARGS_CASES): Define.
2896 (LDEMUL_AFTER_OPEN): Define.
2897 (LDEMUL_BEFORE_ALLOCATION): Define.
2898 (LDEMUL_BEFORE_PARSE): Define.
2899 (LDEMUL_FINISH): Define.
2901 * emultempl/hppaelf.em: Similarly zap most of this file.
2902 (hppaelf_add_stub_section): Prototype.
2903 (hppaelf_layaout_sections_again): Prototype.
2904 (hook_in_stub): Prototype.
2905 (LDEMUL_SET_OUTPUT_ARCH): Define.
2906 (LDEMUL_FINISH): Define.
2907 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2909 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
2910 (EXTRA_EM_FILE): New.
2911 * emulparams/armelf_linux.sh: Likewise.
2912 * emulparams/armelf_linux26.sh: Likewise.
2913 * emulparams/hppalinux.sh: Likewise.
2914 * emulparams/hppaelf.sh: Likewise.
2917 * emultempl/elf32.em: Fix formatting.
2918 (EXTRA_EM_FILE): Source it.
2919 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
2920 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
2921 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
2922 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
2923 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
2924 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
2925 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
2926 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
2927 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
2928 allow functions in this file to be overridden.
2929 (PARSE_AND_LIST_SHORTOPTS): Handle it.
2931 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
2933 * emultempl/elf32.em: Reorganize file.
2935 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
2937 * emulparams/elf64alpha.sh: Implement "-taso" emulation
2938 specific option to fit 64-bit executable in the lower
2939 31-bit address range. This is done by changing start
2940 address of .interp (the very first section of executable)
2941 and then setting EF_ALPHA_32BIT elf header flag.
2943 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2945 * emultempl/m68kcoff.em: New file.
2946 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
2947 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
2949 * Makefile.in: Regenerate.
2951 2000-07-20 H.J. Lu <hjl@gnu.org>
2953 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
2954 and "disable-new-dtags" to stop getopt from treating -d/-e as
2955 abbreviations for these options.
2957 2000-07-20 H.J. Lu <hjl@gnu.org>
2959 * ld.texinfo: Add documentation for --disable-new-dtags and
2962 * ldmain.c (main): Initialize link_info.new_dtags to false.
2964 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
2965 --disable-new-dtags and --enable-new-dtags.
2966 (gld_${EMULATION_NAME}_list_options): Likewise.
2968 2000-07-05 Kenneth Block <krblock@computer.org>
2970 * lexsup.c: Add optional style to demangle switch
2971 * ld.texinfo: Document optional style to demangle switch.
2973 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
2975 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
2977 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
2978 Regenerate dependencies.
2979 * Makefile.in: Rebuild.
2980 * configure.tgt (cris-*-*): New target.
2981 * emulparams/crisaout.sh, emulparams/criself.sh,
2982 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
2983 * po/POTFILES.in, po/ld.pot: Regenerate.
2985 2000-07-20 H.J. Lu <hjl@gnu.org>
2987 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
2988 Print out ignored -z options.
2990 2000-07-19 H.J. Lu <hjl@gnu.org>
2992 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
2993 (PARSE_AND_LIST_PROLOGUE): New.
2994 (PARSE_AND_LIST_LONGOPTS): Likewise.
2995 (PARSE_AND_LIST_OPTIONS): Likewise.
2996 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2998 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
3000 * lexsup.c (ld_options): Comment out 'z'.
3001 (parse_args): Likewise.
3003 * emultempl/elf32.em: Include "elf/common.h".
3004 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
3006 (gld_${EMULATION_NAME}_list_options): Likewise.
3008 * ld.texinfo: Add documentation for the recognized -z options.
3010 2000-07-19 H.J. Lu <hjl@gnu.org>
3012 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
3013 bfd_elf_set_dt_needed_soname ().
3015 2000-07-18 DJ Delorie <dj@cygnus.com>
3017 * pe-dll.c (pe_dll_id_target): check object target name also
3019 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
3021 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
3022 ${INIT_END} if relocating.
3023 (.fini): Likewise ${FINI_START} and ${FINI_END}.
3025 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
3027 * emultempl/pe.em (gld_*_open_dynamic_archive): New search
3028 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
3029 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
3030 errors introduced by the old dynamic lib search order.
3032 2000-07-17 DJ Delorie <dj@cygnus.com>
3034 * pe-dll.c (process_def_file): auto-export data items also
3035 (pe_process_import_defs): also see if _imp_ form needed
3037 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
3039 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
3040 for dll import libraries
3042 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
3044 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
3045 gcc 2.95.2 and later.
3047 2000-07-11 Kazu Hirata <kazu@hxi.com>
3049 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
3052 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3054 * ldemul.h (struct lang_input_statement_struct): Remove forward
3056 (struct search_dirs): Likewise.
3057 * ldfile.h (struct lang_input_statement_struct): Likewise.
3058 Protect file from multiple inclusion.
3059 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
3060 declaration from macro to file scope.
3062 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
3063 * ldgram.y: Likewise here.
3064 * ldlang.c: And here.
3065 * ldmain.c: And here.
3066 * mpw-elfmips.c: And here.
3067 * mpw-eppcmac.c: And here.
3068 * emultempl/aix.em: And here.
3069 * emultempl/armcoff.em: And here.
3070 * emultempl/armelf.em: And here.
3071 * emultempl/armelf_oabi.em: And here.
3072 * emultempl/beos.em: And here.
3073 * emultempl/elf32.em: And here.
3074 * emultempl/hppaelf.em: And here.
3075 * emultempl/linux.em: And here.
3076 * emultempl/lnk960.em: And here.
3077 * emultempl/pe.em: And here.
3078 * emultempl/sunos.em: And here.
3079 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
3080 * mpw-idtmips.c: Ditto.
3081 * emultempl/generic.em: Ditto.
3082 * emultempl/gld960.em: Ditto.
3083 * emultempl/gld960c.em: Ditto.
3084 * emultempl/mipsecoff.em: Ditto.
3085 * emultempl/ticoff.em: Ditto.
3086 * emultempl/vanilla.em: Ditto.
3088 * pe-dll.c: Include ldfile.h
3089 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
3091 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
3092 arguments to bfd_elf32_size_dynamic_sections call.
3093 (gldelf32ebmip_place_orphan): Add missing arguments to
3094 lang_leave_output_section_statement call.
3096 2000-07-10 H.J. Lu <hjl@gnu.org>
3098 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
3100 (strhash): Likewise.
3101 (compute_dll_image_base): Likewise.
3102 (pe_undef_found_sym): Likewise.
3103 (pe_undef_cdecl_match): Likewise.
3104 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
3105 argument "arch" with ATTRIBUTE_UNUSED.
3107 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3109 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
3111 From Ryan Bradetich <rbradetich@uswest.net>
3112 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
3114 2000-07-09 Alan Modra <alan@linuxcare.com.au>
3116 Changes to create multiple linker stubs, positioned immediately
3117 before the section where they are required.
3118 * emultempl/hppaelf.em: Include elf32-hppa.h.
3119 (stub_sec, file_chain): Delete.
3120 (hppaelf_create_output_section_statements): Don't make a stub
3122 (hook_stub_info): New struct.
3123 (hook_in_stub): New function.
3124 (hppaelf_add_stub_section): New function.
3125 (hppaelf_finish): Do nothing for relocateable links. Modify the
3126 call to elf32_hppa_size_stubs. Move code for updating section
3128 (hppaelf_layaout_sections_again): ..to here, a new function.
3130 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
3131 broken list handling. Pass in a pointer to the list.
3132 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
3134 (hppaelf_before_parse): Prototype.
3135 (hppaelf_set_output_arch): Prototype.
3136 (hppaelf_create_output_section_statements): Prototype.
3137 (hppaelf_delete_padding_statements): Prototype.
3138 (hppaelf_finish): Prototype.
3141 * emultempl/hppaelf.em: Include ctype.h.
3142 (struct orphan_save): New.
3143 (gld${EMULATION_NAME}_place_orphan): New.
3144 (output_rel_find): New.
3145 (hppaelf_get_script): Update from elf32.em.
3146 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
3147 Change emulation_name field to "${EMULATION_NAME}". Add
3148 gld${EMULATION_NAME}_place_orphan.
3150 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
3151 ehppalinux.o, sort it. Regenerate dependencies.
3152 (ehppalinux.c): Depend on hppaelf.em
3153 * Makefile.in: Regenerate.
3155 * configure.tgt: targ_emul=hppalinux for hppa*linux
3157 * emulparams/hppalinux.sh: New.
3158 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
3160 2000-07-08 Alan Modra <alan@linuxcare.com.au>
3162 * lexsup.c (parse_args): Copy section name.
3164 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
3166 * emultempl/pe.em: institute the following search order for
3167 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
3168 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
3169 static lib (libfoo.a) if none of the above are found.
3171 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
3173 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
3174 (longopts): New --{enable,disable}-auto-image-base options.
3175 (gld_${EMULATION_NAME}_list_options): Document.
3176 (gld_${EMULATION_NAME}_parse): Handle.
3177 (strhash): New static function.
3178 (compute_dll_image_base): New static function.
3179 (gld_${EMULATION_NAME}_set_symbols): Use.
3181 2000-07-05 DJ Delorie <dj@redhat.com>
3185 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
3187 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
3188 * emulparams/elf32btsmip.sh: New file.
3189 * Makefile.am: Add traditional mips target.
3190 * Makefile.in: Rebuild.
3192 2000-07-01 H.J. Lu <hjl@gnu.org>
3194 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
3195 automake to use YLWRAP.
3196 * Makefile.in: Rebuild.
3198 2000-07-01 Alan Modra <alan@linuxcare.com.au>
3200 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
3201 (CLEANFILES): Add DEPA.
3202 * Makefile.in: Regenerate.
3204 2000-06-30 Timothy Wall <twall@ppc>
3206 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
3207 the page in the upper octet of the address.
3209 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
3211 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
3213 2000-06-24 Alan Modra <alan@linuxcare.com.au>
3215 * NEWS: arm-elf does --gc-sections too.
3217 2000-06-22 Alan Modra <alan@linuxcare.com.au>
3219 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
3221 * Makefile.in: Regenerate.
3223 2000-06-21 H.J. Lu <hjl@gnu.org>
3225 * Makefile.am: Rebuild dependency.
3226 * Makefile.in: Rebuild.
3228 2000-06-20 H.J. Lu <hjl@gnu.org>
3230 * Makefile.am: Rebuild dependency.
3231 * Makefile.in: Rebuild.
3233 2000-06-20 Timothy Wall <twall@cygnus.com>
3235 * scripttempl/tic54xcoff.sc: New.
3236 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
3237 * gen-doc.texi: Add flag for TI COFF.
3238 * ld.texinfo: Add documentation for TI COFF handling switches.
3239 * emultempl/ticoff.em: New. TI COFF handling.
3240 * configure.tgt: Add tic54x target.
3241 * Makefile.am: Add tic54x target.
3242 * Makefile.in: Ditto.
3244 2000-06-20 Alan Modra <alan@linuxcare.com.au>
3246 * ldmain.c (set_scripts_dir): Correct pointer comparison when
3247 checking for backslashes.
3249 2000-06-19 Alan Modra <alan@linuxcare.com.au>
3251 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
3253 2000-06-18 Alan Modra <alan@linuxcare.com.au>
3255 * NEWS: Update list of targets supporting --gc-sections.
3257 * scripttempl/elf.sc: KEEP .eh_frame contents.
3258 * scripttempl/elfd30v.sc: Same here.
3260 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
3262 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
3264 * Makefile.in: Rebuild.
3265 * configure.tgt: Recognize m68hc12 and m68hc11.
3266 * scripttempl/elfm68hc12.sc: New file.
3267 * emulparams/m68hc12elfb: New emulation.
3268 * emulparams/m68hc12elf: New emulation.
3269 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
3270 (includes a memory.x script to define the ROM and RAM banks).
3271 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
3272 New configuration files for support of Motorola 68hc11
3274 2000-06-15 Alan Modra <alan@linuxcare.com.au>
3276 * ldmain.c (main): Only change SEC_READONLY for final link.
3278 2000-06-13 H.J. Lu <hjl@gnu.org>
3280 * configure: Regenerate.
3282 2000-06-08 David O'Brien <obrien@FreeBSD.org>
3284 * configure.in (VERSION): Update to show this is the CVS mainline.
3286 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3288 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
3289 input objects to be ECOFF.
3290 (check_sections): einfo takes %B, not %P, to print a BFD name.
3292 2000-06-05 Michael Matz <matz@ifh.de>
3294 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
3297 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
3299 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
3301 * emulparams/avr1200.sh (STACK): Define as 0.
3302 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
3303 * emulparams/avr4433.sh (STACK): Likewise.
3304 * emulparams/avr44x4.sh (STACK): Likewise.
3305 * emulparams/avr85xx.sh (STACK): Likewise.
3306 * emulparams/avrmega103.sh (STACK): Likewise.
3307 * emulparams/avrmega161.sh (STACK): Likewise.
3308 * emulparams/avrmega603.sh (STACK): Likewise.
3309 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
3310 (__stack): Define from ${STACK} for main().
3312 2000-05-26 Alan Modra <alan@linuxcare.com.au>
3314 * Makefile.am: Update dependencies with "make dep-am"
3315 * Makefile.in: Regenerate.
3317 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
3319 * ldmain.c: Include filenames.h.
3320 (set_scripts_dir): Support backslashes in program name.
3322 2000-05-22 Igor Shevlyakov <igor@windriver.com>
3324 * ldmain.c (main): When deciding if ".text" section should be
3325 read-only, don't forget to reset SEC_READONLY because it
3326 could be already set.
3328 2000-05-22 Thomas de Lellis <tdel@windriver.com>
3330 * ld.1: Add documentation for new command line option:
3331 --section-start <sectionname>=<sectionorg>
3332 This is a generic version of -Ttext etc. which accepts
3333 any section name as a parameter instead of just text/data/
3335 * ld.texinfo: More docs.
3337 * lexsup.c: (parse_args): Recognize new command line option.
3338 (ld_options): Add new option.
3340 2000-05-18 H.J. Lu <hjl@gnu.org>
3342 * lexsup.c (parse_args): `i' == `r', not `q'.
3344 2000-05-18 Jeffrey A Law (law@cygnus.com)
3346 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
3348 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
3349 Rick Gorton <gorton@scrugs.lkg.dec.com>
3351 Add support for '-q' == '--emit-relocs' switch.
3352 * ldmain.c (main): Default to false.
3353 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
3354 * NEWS: Describe the emitrelocations switch.
3355 * ld.texinfo: Describe the emitrelocations switch.
3357 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
3359 * emultempl/pe.em (_open_dynamic_archive): New function: Search
3360 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
3361 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
3364 2000-05-15 David O'Brien <obrien@FreeBSD.org>
3366 * lexsup.c (parse_args): Update the year in the copyright notice.
3368 2000-05-13 Alan Modra <alan@linuxcare.com.au>
3370 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
3371 Replace defines with those from intl/libgettext.h to quieten gcc
3374 2000-05-10 H.J. Lu <hjl@gnu.org>
3376 * ldlang.c (open_input_bfds): Don't load the same file within
3377 a group again if the whole archive has been loaded already.
3379 2000-05-03 Alan Modra <alan@linuxcare.com.au>
3381 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
3382 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
3385 2000-05-01 Jim Wilson <wilson@cygnus.com>
3387 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
3389 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3390 host "ia64-*-linux-gnu*".
3392 2000-04-29 Andreas Jaeger <aj@suse.de>
3394 * ld.h: Correctly check GCC version.
3396 2000-04-25 Jeffrey A Law (law@cygnus.com)
3398 * Makefile.am: Add PA64 support. Add missing dependencies for
3400 * Makefile.in: Rebuilt.
3401 * configure.tgt: Add PA64 support (currently disabled).
3403 2000-04-25 Alan Modra <alan@linuxcare.com.au>
3405 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
3406 (output_rel_find): New function.
3407 (hold_section, hold_use): Delete.
3408 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3409 hold_interp): Make local to place_orphan.
3410 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
3411 rather than place_section to find possible previous use of orphan.
3412 Similarly find the place-holder output sections. Use returned
3413 value from lang_enter_output_section_statement rather than calling
3414 lang_output_section_statement_lookup.
3415 * emultempl/armelf.em: Same here.
3416 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
3418 * ldlang.c (lang_enter_output_section_statement): Return output
3420 * ldlang.h (lang_enter_output_section_statement): Change
3423 * ldlang.h (lang_output_section_statement): Export it.
3424 * ldlang.c (lang_output_section_statement): Ditto.
3426 2000-04-24 Nick Clifton <nickc@cygnus.com>
3428 * ld.texinfo (Output Section Data): Add note that section data
3429 commands cannot appear outside of section directives.
3431 2000-04-2 Matthew Green <mrg@cygnus.com>
3433 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
3435 2000-04-21 Richard Henderson <rth@cygnus.com>
3436 David Mosberger <davidm@hpl.hp.com>
3438 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
3439 (eelf64_ia64.c): New rule.
3440 * Makefile.in: Rebuild.
3441 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
3442 * emulparams/elf64_ia64.sh: New file.
3444 2000-04-21 Richard Henderson <rth@cygnus.com>
3446 * scripttempl/elfd30v.sc: Place .gcc_except_table.
3448 2000-04-19 Alan Modra <alan@linuxcare.com.au>
3450 * dep-in.sed: Match space at start of file name, not at end.
3452 2000-04-18 H.J. Lu <hjl@gnu.org>
3454 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
3455 lang_leave_output_section_statement () after calling
3456 lang_enter_output_section_statement ().
3457 * emultempl/armelf.em: Likewise.
3459 2000-04-18 Alan Modra <alan@linuxcare.com.au>
3461 * emultempl/elf32.em (struct orphan_save): Add section field.
3462 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
3463 better order, and place first orphan section as we did before the
3464 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
3465 Don't call make_bfd_section here, let wild_doit do the job for us.
3466 Don't build a statement list when we'll only throw it away.
3467 * emultempl/armelf.em: Ditto.
3468 * emultempl/pe.em: Similarly.
3470 2000-04-14 Geoff Keating <geoffk@cygnus.com>
3472 * scripttempl/elfppc.sc: Remove.
3473 * emulparams/elf32ppc.sh: Use elf.sc.
3474 * emulparams/elf32lppc.sh: Use elf.sc.
3475 * emulparams/elf32ppclinux.sh: Use elf.sc.
3476 * emulparams/elf32ppcsim.sh: New file.
3477 * emulparams/elf32lppcsim.sh: New file.
3478 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
3479 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
3480 * Makefile.in: Regenerate.
3481 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
3483 2000-04-14 Alan Modra <alan@linuxcare.com.au>
3485 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
3486 ~SEC_ALLOC sections too. Init start address of debug sections.
3487 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3488 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3489 Also set all relocateable section start addresses.
3491 2000-04-13 Geoff Keating <geoffk@cygnus.com>
3493 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
3494 Add new BSS_PLT variable for when .plt need not be contained in
3495 the file. Move _etext so that it is also after .fini, and provide
3496 both etext and _etext with a leading underscore. Mark the start
3499 2000-04-12 Alan Modra <alan@linuxcare.com.au>
3501 * emultempl/elf32.em (struct orphan_save): New.
3502 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3503 hold_interp): Make them struct orphan_save.
3504 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
3505 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
3506 the end of the relevant section list. Also add associated section
3507 statements to the end of any previous orphan statements.
3508 * emultempl/armelf.em: Similarly.
3509 * emultempl/pe.em: Similarly.
3511 2000-04-11 Alan Modra <alan@linuxcare.com.au>
3513 * ld.texinfo (Simple Example): Remove extraneous paragraph.
3515 2000-04-07 Andrew Cagney <cagney@b1.cygnus.com>
3517 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
3518 --enable-build-warnings option.
3519 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
3520 * Makefile.in, configure: Re-generate.
3522 2000-04-04 Alan Modra <alan@linuxcare.com.au>
3524 * po/ld.pot: Regenerate.
3526 * lexsup.c (help): Restore translated part of bug string.
3528 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
3529 (DEP): Quote when passing vars to sub-make. Add warning message
3531 (DEP1): Rewrite for "gcc -MM".
3532 (CLEANFILES): Add DEP2.
3533 Update dependencies.
3534 * Makefile.in: Regenerate.
3536 2000-04-03 Alan Modra <alan@linuxcare.com.au>
3538 * ld.h: #include "bin-bugs.h"
3539 * lexsup.c (help): Use REPORT_BUGS_TO.
3541 2000-03-27 Denis Chertykov <denisc@overta.ru>
3543 * configure.tgt (avr-*-*): New target support.
3544 * Makefile.am: Likewise.
3545 * scripttempl/elf32avr.sc: New script file.
3546 * emulparams/avr1200.sh: New file.
3547 * emulparams/avr23xx.sh: New file.
3548 * emulparams/avr4433.sh New file.
3549 * emulparams/avr44x4.sh New file.
3550 * emulparams/avr85xx.sh New file.
3551 * emulparams/avrmega103.sh New file.
3552 * emulparams/avrmega161.sh New file.
3553 * emulparams/avrmega603.sh New file.
3554 * Makefile.in: Regenerate.
3556 2000-03-09 Andreas Jaeger <aj@suse.de>
3558 * Makefile.am (check-DEJAGNU): Also unset LANG.
3559 * Makefile.in: Rebuild.
3561 2000-03-06 Ian Lance Taylor <ian@zembu.com>
3563 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
3566 2000-03-02 H.J. Lu <hjl@gnu.org>
3568 * emulparams/elf32mcore.sh: Include "getopt.h".
3570 2000-03-01 Ian Lance Taylor <ian@zembu.com>
3572 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
3574 2000-03-01 H.J. Lu <hjl@gnu.org>
3576 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
3577 * emulparams/shpe.sh: Likewise.
3579 2000-03-01 Nick Clifton <nickc@cygnus.com>
3581 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
3582 to unused parameters.
3584 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
3585 functions only used by DLL code.
3586 (_place_orphan): Initialise 'dollar'.
3588 2000-03-01 H.J. Lu <hjl@gnu.org>
3590 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
3591 indicate if the undefined symbol is a fatal error or not.
3592 Don't delete the output file if "fatal" is false.
3594 2000-02-29 H.J. Lu <hjl@gnu.org>
3596 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
3597 Set LC_COLLATE and LC_ALL to null and export them. It is for
3598 sort which expects the C locale.
3599 Add $(LIBS) to all $(HOSTING_LIBS).
3600 * Makefile.in: Rebuild.
3602 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
3604 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
3605 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
3606 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
3607 (ld_emulation_xfer_struct): Add missing NULL initialiser for
3608 find_potential_libraries.
3610 2000-02-28 Jim Blandy <jimb@redhat.com>
3612 * ldgram.y (exclude_name_list): Don't require a comma to separate
3613 list entries; the lexer considers commas to be valid part of a
3614 filename, so in something like `foo, bar' the comma is considered
3615 part of the first filename, `foo,'.
3616 * ld.texinfo: Update section on EXCLUDE_FILE lists.
3618 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
3620 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3621 host "i[3456]86-*-freebsdelf*".
3623 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
3625 * scripttempl/i386go32.sc: Move misplaced semicolons.
3627 2000-02-25 Ian Lance Taylor <ian@zembu.com>
3629 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
3630 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
3631 (eelf64hppa.c, ehppaelf.c): Remove targets.
3632 * Makefile.in: Rebuild.
3634 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3636 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
3637 GNU/Linux/sparc, but keep the default as 32.
3639 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
3640 it default if sparcv9 or sparc64.
3642 2000-02-24 Nick Clifton <nickc@cygnus.com>
3644 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
3645 * Makefile.in: Regenerate.
3646 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
3648 * ldemul.h (ld_emulation_xfer_struct): Add new field:
3649 find_potential_libraries.
3650 * ldemul.c (ldemul_find_potential_libraries): New function.
3652 * ldfile.c (ldfile_open_file_search): Allow function to be
3654 (ldfile_open_file): Call ldemul_find_potential_libraries.
3655 * ldfile.h: Add prototype for ldfile_open_file_search.
3657 * pe-dll.c: Add support for ARM, MIPS and SH targets.
3659 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
3660 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
3662 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
3663 (gld_X_find_potential_libraries): New function. Search for
3664 libraries called "*.lib".
3666 * scripttempl/pe.sc: Add .pdata section.
3668 2000-02-23 Richard Henderson <rth@cygnus.com>
3670 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
3671 Add and use memory regions.
3673 2000-02-23 Linas Vepstas (linas@linas.org)
3675 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
3677 * Makefile.am: Add support for Linux/IBM 370.
3678 * configure.tgt: Likewise.
3680 * Makefile.in: Regenerate.
3682 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
3684 * ldlang.c (print_input_section, print_data_statement,
3685 print_reloc_statement, print_padding_statement, insert_pad,
3686 size_input_section, lang_check_section_addresses,
3687 lang_size_sections, lang_do_assignments, lang_set_startof,
3688 lang_one_common): Change `opb' to unsigned.
3689 (lang_do_assignments): Also change `size' to unsigned.
3691 2000-02-16 Richard Henderson <rth@cygnus.com>
3693 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
3695 2000-02-16 Timothy Wall <twall@cygnus.com>
3697 * mri.c (mri_draw_tree): Add default LMA region argument to call
3698 to lang_leave_output_section_statement.
3699 * ldlang.h: Update prototypes with LMA region arguments.
3700 * ldlang.c (lang_size_sections): Encapsulate region bounds
3701 checking in os_check_region call.
3702 (os_check_region): New function.
3703 (lang_output_section_statement_lookup): Initialize lma_region.
3704 (lang_leave_output_section_statement): Add LMA region argument.
3705 (lang_leave_overlay): Ditto.
3706 * ldgram.y: Handle LMA region syntax.
3707 * ld.texinfo (Output Section Description): Describe LMA region usage.
3708 * emultempl/armelf.em (gld$place_orphan): Add default value for
3709 lma region in call to lang_leave_output_section_statement.
3710 * emultempl/elf32.em (gld$place_orphan): Add default value for
3711 lma region in call to lang_leave_output_section_statement.
3712 * emultempl/pe.em (gld$place_orphan): Add default value for
3713 lma region in call to lang_leave_output_section_statement.
3716 2000-02-04 Timothy Wall <twall@redhat.com>
3718 * ldlang.c (lang_check_section_addresses): Use bytes instead of
3719 octets when calculating section end addresses.
3721 2000-02-04 Timothy Wall <twall@redhat.com>
3723 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
3725 2000-02-03 Timothy Wall <twall@redhat.com>
3727 * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
3729 * ldlang.c (print_input_section, print_data_statement,
3730 print_reloc_statement, print_padding_statement): Print target
3731 address values and section sizes as bytes, not octets.
3732 (insert_pad) Calculate padding size in octets, and adjust "dot"
3734 (size_input_section) Always adjust "dot" by bytes, not octets.
3735 (lang_check_section_addresses, lang_do_assignments) Adjust
3736 "dot" by bytes, not octets. Use the larger of the directive size
3737 or octets_per_byte for the number of octets actually allocated in
3739 (lang_set_startof) Make sure STARTOF returns a target address.
3740 (lang_one_common) Record size changes in octets.
3741 (lang_abs_symbol_at_end_of) Section end symbol's value is
3742 recorded in target bytes.
3743 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
3744 to be clear about behavior when an octet is smaller than one byte.
3746 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
3748 * ldcref.c (output_cref): Don't pass message strings to printf
3752 * ldmisc.c (vfinfo): Same here.
3755 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
3757 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
3758 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
3759 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
3760 Add missing NULL initialisers, and comments.
3762 * testsuite/ld-srec/sr3.cc (__rethrow): New.
3764 2000-01-21 Nick Clifton <nickc@cygnus.com>
3766 * ldlang.c (lang_size_sections): Fix typo in comment.
3768 2000-01-18 H.J. Lu <hjl@gnu.org>
3770 * ldlang.c (lang_size_sections): Also update the current
3771 address of a region if the SEC_NEVER_LOAD bit is not set.
3773 2000-01-10 Philip Blundell <pb@futuretv.com>
3775 * configure.tgt (arm*-*-conix*): New target.
3777 2000-01-07 Nick Clifton <nickc@cygnus.com>
3779 * ld.texinfo (Options): Remind users to preceed linker command
3780 line switches with -Wl, (or whatever is appropriate) if it is
3781 being invoked by a comnpiler driver program.
3782 Fix description of the behaviour of the -n command line switch.
3784 2000-01-05 Catherine Moore <clm@cygnus.com>
3786 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
3788 * ld.texinfo (EXCLUDE_FILE): Update documentation.
3789 * ldgram.y (wildcard_spec): Support a list of excluded_files.
3790 (exclude_name_list): New.
3791 ldlang.c (walk_wild_section): Support list of excluded files.
3792 (print_wild_statement): Likewise.
3793 (lang_add_wild): Likewise.
3794 * ldlang.h (lang_wild_statement_type): Likewise.
3795 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
3797 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
3799 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
3800 (process_def_file): Use.
3801 (pe_dll_compat_implib): New variable.
3804 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
3805 pe_dll_compat_implib.
3807 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
3808 compat-implib options.
3809 (gld_${EMULATION_NAME}_list_options): List new options.
3810 (gld_${EMULATION_NAME}_parse_args): Handle.
3812 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
3815 * deffilep.y (opt_name): Allow "." in name.
3817 For older changes see ChangeLog-9899
3823 version-control: never