1 2002-02-15 Richard Henderson <rth@redhat.com>
3 * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
4 definition. Emit a unop+nop pair.
6 2002-02-15 Hans-Peter Nilsson <hp@bitrange.com>
8 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
9 for presence of .MMIX.reg_contents.linker_allocated before early
12 * NEWS: Mention support for MMIX.
14 2002-02-15 Alan Modra <amodra@bigpond.net.au>
16 Support arbitrary length fill patterns.
17 * ld.texinfo (Output Section Fill): Describe fill expressions.
18 (FILL): Refer to the above.
19 * ldexp.h (etree_value_type): Add "str" field.
20 (union etree_union): Add "str" to "value" struct.
21 (exp_bigintop): Declare.
22 (exp_get_fill): Declare.
23 * ldexp.c: Include "safe-ctype.h".
24 (exp_intop): Set value.str to NULL.
25 (exp_bigintop): New function.
26 (new_rel): Pass in "str", and set new.str from it.
27 (new_rel_from_section): Set new.str to NULL.
28 (fold_name): Adjust calls to new_rel.
29 (exp_fold_tree): Likewise.
30 (exp_get_fill): New function.
31 * ldgram.y (struct big_int bigint, fill_type *fill): New.
32 (INT): Returns a "bigint". Adjust all code handling INTs.
33 (fill_opt): Returns a "fill".
34 (fill_exp): Split out of fill_opt, use for FILL.
35 * ldlang.h (struct _fill_type): New.
36 (fill_type): Move typedef to ldexp.h.
37 (lang_output_section_statement_type): "fill" is now a pointer.
38 (lang_fill_statement_type): Likewise.
39 (lang_padding_statement_type): Likewise.
40 (lang_add_fill): Now takes a "fill_type *" param.
41 (lang_leave_output_section_statement): Likewise.
42 (lang_do_assignments): Likewise.
43 (lang_size_sections): Likewise.
44 (lang_leave_overlay_section): Likewise.
45 (lang_leave_overlay): Likewise.
46 * ldlang.c: Include ldgram.h after ldexp.h.
47 (lang_output_section_statement_lookup): Adjust for fill_type change.
48 (print_fill_statement): Likewise.
49 (print_padding_statement): Likewise.
50 (insert_pad): Now takes a "fill_type *" arg.
51 (size_input_section): Likewise.
52 (lang_size_sections_1): Likewise.
53 (lang_size_sections): Likewise.
54 (lang_do_assignments): Likewise.
55 (lang_add_fill): Likewise.
56 (lang_leave_output_section_statement): Likewise.
57 (lang_leave_overlay_section): Likewise.
58 (lang_leave_overlay): Likewise.
59 Adjust all callers of the above function.
60 * ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers
61 starting with "0X" as well as "0x". Return bigint.str for hex
62 numbers starting with "0x" or "0X", zero bigint.str otherwise.
63 Always use base 16 for numbers starting with "$".
64 * ldmain.c: Include ldgram.h after ldexp.h.
65 * ldwrite.c (build_link_order): Use bfd_data_link_order in place
66 of bfd_fill_link_order.
67 * pe-dll.c: Adjust lang_do_assignments calls.
68 * emultempl/elf32.em: Likewise.
69 * emultempl/hppaelf.em: Likewise.
70 * emultempl/ppc64elf.em: Likewise.
71 * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
72 lang_add_assignment call.
73 * emultempl/pe.em: Likewise.
75 2002-02-14 Phil Edwards <pme@gcc.gnu.org>
77 * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
78 * ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
79 the pattern in question is not a regexp.
82 * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
84 2002-02-12 Jakub Jelinek <jakub@redhat.com>
86 * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
87 * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
88 (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
89 * ldexp.c (exp_data_seg): New variable.
90 (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
91 (fold_binary): Handle DATA_SEGMENT_ALIGN.
92 (exp_fold_tree): Handle DATA_SEGMENT_END.
93 Pass allocation_done when recursing instead of hardcoding
94 lang_allocating_phase_enum.
95 * ldexp.h (exp_data_seg): New.
96 * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
97 (lang_size_sections): New.
98 * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
99 * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
100 if COMMONPAGESIZE is defined.
101 * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
102 * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
103 * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
104 * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
105 * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
108 2002-02-11 Alan Modra <amodra@bigpond.net.au>
110 * Makefile.in: Regenerate.
112 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
114 * lexsup.c: Remove strtoul declaration.
116 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
118 * ldmain.c: Add prototype for main ().
119 * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
120 * emultempl/lnk960.em (lnk960_choose_target): Function should
123 2002-02-10 Alan Modra <amodra@bigpond.net.au>
125 * ldlang.c (entry_section): New initialised variable.
126 (lang_finish): Use it.
127 * ldlang.h (entry_section): Declare.
128 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
129 entry_section to ".opd".
131 2002-02-09 Chris Demetriou <cgd@broadcom.com>
133 * ld.texinfo (Options): Add back in -nostdlib documentation,
134 which had been inadvertently removed.
136 2002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
138 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
139 register section vma to a sane value after emitting error. Make
140 fatal conditions cause program exit when emitting message.
142 2002-02-08 Ivan Guzvinec <ivang@opencores.org>
144 * configure.tgt: Add or32-*-rtems target.
146 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
149 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
150 * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
151 in OTHER_RELOCATABLE_SECTIONS.
152 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
153 * emulparams/shelf32.sh (STACK_ADDR): Define.
154 (OTHER_RELOCATABLE_SECTIONS): Renamed to...
155 (OTHER_SECTIONS): this. Removed stack settings.
156 * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
157 (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
158 2001-03-12 DJ Delorie <dj@redhat.com>
159 * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
160 relaxing if any shmedia or mixed sections are found.
161 2001-03-07 DJ Delorie <dj@redhat.com>
162 * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
163 einfo. Gracefully decline to output to non-elf formats.
164 2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
165 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
166 Default to _end aligned to next multiple of 0x40000, plus 0x40000.
167 * emulparams/shelf32.sh: Ditto.
168 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
169 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
171 2001-01-10 Ben Elliston <bje@redhat.com>
172 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
173 non-portable shell constructs. From Hans-Peter Nilsson.
174 2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
175 * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
176 * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
177 dependencies to the shell script include chain.
178 * Makefile.in: Regenerate.
179 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
180 * emultempl/sh64elf.em: Update and tweak comments.
181 (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
182 make a .cranges section SEC_IN_MEMORY.
183 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
184 * emultempl/sh64elf.em
185 (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
186 .cranges section found to be necessary; continue and set stored
187 section contents flags for sections with non-mixed contents.
188 Use a struct sh64_section_data container and sh64_elf_section_data
189 to store contents-type flags.
190 Remove unused update of "isec".
191 (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
192 sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
193 access contents-type flags. Assert that the associated container
194 is initialized. Use that container, not elf_gp_size, to hold size
195 of linker-generated cranges contents.
196 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
197 * emultempl/sh64elf.em
198 (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
199 there's already a .cranges section. When section flag difference
200 is found, don't NULL-check cranges a second time. Tweak comments.
201 (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
202 merging, not max size, as size of ld-generated .cranges contents.
203 Don't set ELF section flags in output section. When checking for
204 needed .cranges descriptors, don't use a variable; compare
205 incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
207 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
208 * emultempl/sh64elf.em: New file.
209 * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
210 * Makefile.in: Regenerate.
211 * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
212 (OTHER_RELOCATING_SECTIONS): Ditto.
213 (EXTRA_EM_FILE): New, set to sh64elf if not set.
214 * emulparams/shlelf32.sh: Stub out all settings except
215 OUTPUT_FORMAT. Source shelf32.sh.
216 * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
217 OTHER_RELOCATING_SECTIONS.
218 (OTHER_RELOCATING_SECTIONS): Remove .cranges.
219 * emulparams/shlelf64.sh: Stub out all settings except
220 OUTPUT_FORMAT. Source shelf64.sh.
221 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
222 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
224 (DATA_START_SYMBOLS): Define, provide ___data.
225 (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
226 for consecutive .data section.
227 (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
228 section after .data section.
229 * emulparams/shlelf64.sh: Ditto.
230 * emulparams/shelf32.sh: Ditto.
231 (ALIGNMENT): Define to 8.
232 * emulparams/shelf32.sh: Ditto.
233 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
234 * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
235 built-in linker scripts.
236 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
237 * emulparams/shlelf64.sh: New.
238 * emulparams/shelf64.sh: New.
239 * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
241 * Makefile.am: Add support for shlelf64 and shelf64.
242 * Makefile.in: Regenerate.
243 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
244 * configure.tgt (sh64-*-elf*): Add shelf as default.
245 Add shlelf to targ_extra_emuls.
246 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
247 * emulparams/shelf32.sh: New file.
248 * emulparams/shlelf32.sh: New file.
249 * Makefile.am: Add support for shlelf32 and shelf32.
250 * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
251 * Makefile.in: Regenerate.
253 2002-02-05 Hans-Peter Nilsson <hp@axis.com>
255 * ldlang.c (lang_reset_memory_regions): Rename from
256 reset_memory_regions. Change all callers. Make public.
257 * ldlang.h (lang_reset_memory_regions): Prototype.
258 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
259 lang_reset_memory_regions before lang_size_sections.
260 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
261 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
263 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
265 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
266 arithmetic when checking for too many global registers.
268 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
270 * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
271 (ehppanbsd.c): New rule.
272 * Makefile.in: Regenerate.
273 * configure.tgt (hppa*-*-netbsd*): New target.
274 * emulparams/hppalinux.sh: Add comment to check other files
275 that source this file it is modified, and list which
277 * emulparams/hppanbsd.sh: New file.
279 2002-02-01 Geoffrey Keating <geoffk@redhat.com>
281 * scripttempl/xstormy16.sc: Don't allocate extra space for the
284 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
286 Support on-demand global register allocation from
287 R_MMIX_BASE_PLUS_OFFSET relocs.
288 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
289 mmix_set_reg_section_vma. Call
290 _bfd_mmix_finalize_linker_allocated_gregs.
291 (mmix_before_allocation): New function.
292 (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
293 (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
294 * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
295 (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
296 before .MMIX.reg_contents.
297 * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
298 (mmo_after_open): New function.
299 (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
300 * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting. Add
301 .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
303 2002-01-31 Ivan Guzvinec <ivang@opencores.org>
305 * emulparams/or32.sh: New file.
306 * emulparams/or32elf.sh: New file.
307 * scripttempl/or32.sc: New file.
308 * configure.tgt : Add support for or32.
309 * configure: Regenerate
310 * Makefile.am: Add support for or32.
311 * Makefile.in: Regenerate.
312 * NEWS: Mention support for or32.
313 * po/ld.pot: Regenerate.
315 2002-01-29 Chris Demetriou <cgd@broadcom.com>
316 Mitch Lichtenberg <mpl@broadcom.com>
318 * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
319 * emultempl/mipself.em: New file to handle MIPS ELF embedded
320 reloc creation (ld --embedded-relocs).
322 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
324 * configure: Regenerated.
326 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
328 * Makefile.am (install): Depend on install-info.
329 * Makefile.in: Regenerate.
331 2002-01-26 Christian Rose <menthos@menthos.com>
333 * ldmain.c (main): Use full sentences to ease translation.
335 2002-01-26 Nick Clifton <nickc@cambridge.redhat.com>
337 * po/fr.po: Updated version.
339 2002-01-25 Nick Clifton <nickc@cambridge.redhat.com>
341 * po/es.po: Updated version.
343 2002-01-25 Andreas Jaeger <aj@suse.de>
345 * ldlex.l (yy_input): Correct error check.
347 2002-01-25 Alan Modra <amodra@bigpond.net.au>
349 * ldmisc.c (demangle): Put back dots when string not demangled.
351 2002-01-22 Richard Henderson <rth@redhat.com>
353 * emulparams/elf64alpha.sh (NOP): Use unop.
355 2002-01-21 Andreas Jaeger <aj@suse.de>
357 * ldlex.l: Use fread instead of read.
359 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
361 * configure.tgt (ia64-*-netbsd*): New target.
363 2002-01-21 H.J. Lu <hjl@gnu.org>
365 * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
367 * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
369 2002-01-18 Andreas Jaeger <aj@suse.de>
371 * ldver.c (ldversion): Update year.
373 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
375 * po/ld.pot: Regenerate.
377 2002-01-16 Alan Modra <amodra@bigpond.net.au>
379 * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
380 * Makefile.in: Regenerate.
381 * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
382 * emultempl/ppc64elf.em: New file.
384 2002-01-15 DJ Delorie <dj@redhat.com>
386 * scripttempl/pe.sc: Add support for constructor priorities.
388 2002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
390 * emulparams/avr1200.sh (DATA_START): Define as 0x60.
391 * emulparams/avr23xx.sh: Likewise.
392 * emulparams/avr4433.sh: Likewise.
393 * emulparams/avr44x4.sh: Likewise.
394 * emulparams/avr85xx.sh: Likewise.
395 * emulparams/avrmega103.sh: Likewise.
396 * emulparams/avrmega161.sh: Likewise.
397 * emulparams/avrmega603.sh: Likewise.
398 * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
400 2002-01-08 Alexandre Oliva <aoliva@redhat.com>
402 * ldlang.c (walk_wild_section): Exclude object file if enclosing
405 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
407 * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
408 (eshelf_nbsd.c): New rule.
409 (eshlelf_nbsd.c): New rule.
410 * Makefile.in: Regenerate.
411 * configure.tgt (sh*le-*-netbsdelf*): New target.
412 (sh*-*-netbsdelf*): New target.
413 * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
414 * ld/emulparams/shelf_nbsd.sh: New emulation.
415 * ld/emulparams/shlelf_nbsd.sh: New emulation.
417 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
419 * po/es.po: New file: Spanish translation.
420 * configure.in (ALL_LINGUAS): Add es.
421 * configure: Regenerate.
423 2002-01-06 John Marshall <jmarshall@acm.org>
425 * ld.texinfo: Note that --emit-relocs is currently only
428 2002-01-05 Alan Modra <amodra@bigpond.net.au>
430 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
431 of bfd_section_list_remove and bfd_section_list_insert macros.
432 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
433 * emultempl/mmo.em (mmo_place_orphan): Likewise.
435 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
437 * configure.tgt (x86_64-*-netbsd*): New target.
439 2001-12-21 Tom Rix <trix@redhat.com>
441 (gld*_create_output_section_statements): New function.
442 For -binitfini support.
443 * emultempl/aix.em (gld*_before_parse): Fix comment.
444 * emultempl/aix.em (gld*_parse_args): Fix comment.
446 2001-12-20 Jason Thorpe <thorpej@wasabisystems.com>
448 * configure.tgt (mips*-dec-netbsd*): Delete alias for
450 (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
452 * configure.tgt (arm-*-netbsdelf*): Add target.
453 (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
454 * emulparams/armelf_nbsd.sh: Added.
455 * Makefile.am: Add rules for earmelf_nbsd.
456 * Makefile.in: Regenerate.
458 2001-12-19 Andreas Jaeger <aj@suse.de>,
459 Susanne Oberhauser <froh@suse.de>
461 * configure.host: Add rules for x86_64-*linux-gnu. Change
462 s390x-linux entry to use gcc to report configuration, replace gcc
463 with $CC in s390-linux
465 2001-12-19 Andreas Jaeger <aj@suse.de>
467 * ld.texinfo (VERSION): Fix markup.
469 2001-12-18 matthew green <mrg@eterna.com.au>
471 * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
472 (m68kelfnbsd.c): New rule.
473 * Makefile.in: Regenerate.
474 * configure.tgt (m68*-hp-netbsd*): Renamed to ..
475 (m68*-*-netbsd*4k*): .. this.
476 (m68*-*-netbsdelf*): New target.
477 (m68*-*-netbsd*): Also include ELF support.
478 (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
479 * emulparams/m68kelfnbsd.sh: New emulation.
481 2001-12-18 Jakub Jelinek <jakub@redhat.com>
483 * ldgram.y (vers_node): Support anonymous version tags.
484 * ldlang.c (lang_register_vers_node): Ensure anonymous version
485 tag is not defined together with non-anonymous versions.
486 * ld.texinfo: Document it.
488 2001-12-18 Nick Clifton <nickc@cambridge.redhat.com>
490 * po/tr.po: New file: Turkish translation.
491 * configure.in (ALL_LINGUAS): Add tr.
492 * configure: Regenerate.
494 2001-12-17 Jason Thorpe <thorpej@wasabisystems.com>
496 * Makefile.am: Add rules for eelf64alpha_nbsd.
497 * Makefile.in: Regenerate.
498 * configure.tgt (alpha*-*-netbsd*): Set
499 targ_emul to elf64alpha_nbsd.
500 * emulparams/elf64alpha_nbsd.sh: Added.
502 2001-12-17 Alan Modra <amodra@bigpond.net.au>
504 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
505 section_tail when fiddling with section list.
506 (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
507 broken into separate strings to make translation easier.
508 * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
509 fiddling with section list.
510 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
512 2001-12-16 Hans-Peter Nilsson <hp@bitrange.com>
514 * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
516 2001-12-15 Alan Modra <amodra@bigpond.net.au>
518 * ldmain.c (main): Initialise link_info.eh_frame_hdr.
520 2001-12-13 Jakub Jelinek <jakub@redhat.com>
522 * emultempl/elf32.em (finish): Supply output_bfd
523 to bfd_elf*_discard_info.
524 (OPTION_EH_FRAME_HDR): Define.
525 (longopts): Add --eh-frame-hdr.
526 (parse_args): Handle it.
527 (list_options): Add --eh-frame-hdr to help.
528 * emultempl/hppaelf.em (finish): Supply output_bfd
529 to bfd_elf*_discard_info.
530 * scripttempl/elf.sc (.eh_frame_hdr): Add.
532 2001-12-13 Alan Modra <amodra@bigpond.net.au>
534 * lexsup.c (parse_args): Don't pass shortopts to second call to
535 getopt functions. Restore optind rather than decrementing before
536 second call. Remove errind as it now duplicates last_optind.
538 2001-12-11 Christopher Faylor <cgf@redhat.com>
540 * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
542 2001-12-07 Geoffrey Keating <geoffk@redhat.com>
543 Richard Henderson <rth@redhat.com>
545 * Makefile.am: Add support for xstormy16.
546 * configure.tgt: Add support for xstormy16.
547 * Makefile.in: Regenerate.
548 * emulparams/elf32xstormy16.sh: New file.
549 * scripttempl/xstormy16.sc: New file.
551 2001-10-01 Christopher Faylor <cgf@cygnus.com>
553 * Makefile.in (LIB_PATH): Make configurable.
554 (GENSCRIPTS): Set LIB_PATH in environment.
555 * configure.in: Substitute LIB_PATH.
556 * configure: Regenerate.
557 * configure.tgt (*cygwin): Set LIB_PATH for cross build.
558 * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
560 2001-12-07 Nick Clifton <nickc@cambridge.redhat.com>
562 * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
563 describing the -N option so that it is easier to translate into
566 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com>
568 * emultempl/pe.em (..._list_options): Replace multiple fprintf
569 statements describing a single option with a single, newline
570 escaped fprintf. This allows better translation into other
573 * ldmain.c (add_archive_element): Combine multiple strings
574 into a single string to permit better translation into other
577 2001-12-05 Tom Rix <trix@redhat.com>
579 * Makefile.am: Remove eaixppc64.
580 * Makefile.in: Regenerate.
582 2001-12-04 Tom Rix <trix@redhat.com>
584 * emultempl/aix.em (choose_target): Change default target to
585 OUTPUT_FORMAT for ppcmacos. Add braces to remove compiler
587 (gld*_read_file): Fix typo.
588 (change_symbol_mode): Add prototype.
591 * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
592 * emulparams/aixrs6.sh : Same.
593 * emulparams/ppcmacos.sh : Same.
594 * emulparams/aixppc64.sh : Delete file.
595 * emultempl/aix.em : Formatting changes.
597 2001-12-04 Hans-Peter Nilsson <hp@axis.com>
599 * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
600 (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
602 (OTHER_END_SYMBOLS): Fix formatting.
603 * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
604 (OTHER_END_SYMBOLS): Fix formatting.
606 2001-12-04 Alan Modra <amodra@bigpond.net.au>
608 * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
610 2001-12-02 Tom Rix <trix@redhat.com>
612 * configure.tgt : Remove eaixppc64 emulations.
613 * Makefile.in : Remove eaixppc64.c
614 * ldemul.c (ldemul_choose_target): New parameters argc, argv.
615 (ldemul_default_target): Same.
616 * emultempl/gld960.em (gld960_choose_target): Same.
617 * emultempl/gld960c.em (gld960_choose_target): Same.
618 * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
619 * emultempl/aix.em (is_syscall): syscall_mask now a variable.
620 * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
621 * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
622 * emultempl/aix.em (choose_target): New function. Handle emulation of
625 2001-11-27 H.J. Lu <hjl@gnu.org>
627 * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
628 * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
629 * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
630 * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
631 * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
632 * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
633 * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
634 * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
636 * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
639 (REL_SDATA): Likewise.
640 (REL_SBSS): Likewise.
641 (REL_SDATA2): Likewise.
642 (REL_SBSS2): Likewise.
643 (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
646 2001-11-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
648 * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
650 * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
652 2001-11-22 H.J. Lu <hjl@gnu.org>
654 * Makefile.in: Regenerated with automake based on automake
657 2001-11-22 Alan Modra <amodra@bigpond.net.au>
659 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
660 (config.status): Delete rule.
661 Add extra dependencies to cover sourced emulparams files.
662 * Makefile.in: Regenerate.
664 * scripttempl/elf.sc: Order <section>, <section>.* and
665 corresponding linkonce sections as seen in input files.
666 Formatting fixes. Zero vma of all sections if not relocating.
667 (STACK): Define and insert if STACK_ADDR defined.
668 (OTHER_RELOCATING_SECTIONS): Delete.
669 (OTHER_END_SYMBOLS): Define.
670 (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
671 (OTHER_READWRITE_SECTIONS): Likewise.
672 (OTHER_GOT_SECTIONS): Likewise.
673 (OTHER_SDATA_SECTIONS): Likewise.
674 (OTHER_BSS_SECTIONS): Likewise.
675 * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
676 (OTHER_READWRITE_SECTIONS): Likewise.
677 * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
678 (OTHER_READWRITE_SECTIONS): Likewise
680 * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
681 (STACK_ADDR): Define.
682 * emulparams/armelf_oabi.sh: As for armelf.sh.
683 * emulparams/elf32mcore.sh: As for armelf.sh.
684 * emulparams/h8300elf.sh: As for armelf.sh.
685 * emulparams/mn10200.sh: As for armelf.sh.
686 * emulparams/shelf.sh: As for armelf.sh.
688 * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
689 (OTHER_END_SYMBOLS): Define.
690 * emulparams/m32relf.sh: As for elf32fr30.sh.
691 * emulparams/h8300helf.sh: As for elf32fr30.sh.
692 * emulparams/h8300self.sh: As for elf32fr30.sh.
694 * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
695 defines with RELOCATING test.
696 (OTHER_SDATA_SECTIONS): Likewise.
697 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
698 (OTHER_END_SYMBOLS): ..this.
699 * emulparams/crislinux.sh: As for criself.sh.
701 * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
703 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
704 (OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
705 normal and linkonce sections as seen in input files.
706 * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
707 (TEXT_DYNAMIC): Likewise.
708 (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
709 (OTHER_SDATA_SECTIONS): Likewise.
710 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
711 * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
712 * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
713 * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
714 * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
715 (OTHER_PLT_RELOC_SECTIONS): Likewise.
716 (OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
717 sections as seen in input files.
718 * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
719 * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
721 (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
722 (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
723 * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
724 (OTHER_SECTIONS): Instead, use this..
725 (OTHER_END_SYMBOLS): ..and this.
727 * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
728 * emulparams/elf32bsmip.sh: Likewise.
729 * emulparams/elf32btsmip.sh: Likewise.
730 * emulparams/elf32ebmip.sh: Likewise.
731 * emulparams/elf32lmip.sh: Likewise.
732 * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
733 * emulparams/elf32lsmip.sh: Likewise.
734 * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
735 * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
736 * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
737 * emulparams/elf64btsmip.sh: Likewise.
738 * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
739 * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
740 * emulparams/elf32ppclinux.sh: Likewise.
741 * emulparams/elf32ppcsim.sh: Likewise.
742 * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
743 * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
744 * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
745 * emulparams/h8300self.sh: Likewise.
746 * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
747 * emulparams/sh.sh: Comment.
748 * emulparams/shl.sh: Source sh.sh, remove duplicates.
749 * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
750 * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
752 2001-11-21 David Heine <dlheine@tensilica.com>
753 Alan Modra <amodra@bigpond.net.au>
755 * ldlang.c (map_input_to_output_sections): Replace "break"
756 accidentally removed with 2001-08-03 change.
757 (lang_gc_sections_1): Likewise.
759 2001-11-21 Alan Modra <amodra@bigpond.net.au>
761 * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
763 2001-11-20 Angela Marie Thomas <angela@redhat.com>
765 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
766 of false when calling lang_size_sections.
767 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
769 2001-11-15 Alan Modra <amodra@bigpond.net.au>
771 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
772 function when LDEMUL_FINISH isn't set to the same name. Don't
773 call ${LDEMUL_FINISH}.
774 (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
775 * emultempl/armelf.em (arm_elf_finish): Call
776 gld${EMULATION_NAME}_finish.
777 * emultempl/hppaelf.em (hppaelf_finish): Rename to
778 gld${EMULATION_NAME}_finish. Call bfd_elf32_discard_info and
779 hppaelf_layout_sections_again if necessary.
780 (need_laying_out): New var.
781 (hppaelf_layaout_sections_again): Rename to
782 hppaelf_layout_sections_again. Clear need_laying_out.
783 (PARSE_AND_LIST_OPTIONS): Format text.
785 2001-11-14 H.J. Lu <hjl@gnu.org>
787 * emultempl/armelf.em (arm_elf_finish): Renamed from
788 gld${EMULATION_NAME}_finish.
789 (LDEMUL_FINISH): Set to arm_elf_finish.
791 2001-11-14 Daniel Jacobowitz <drow@mvista.com>
793 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
794 (struct ld_emulation_xfer_struct): Use it.
796 2001-11-13 Ross Alexander <ross.alexander@uk.neceur.com>
798 * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
799 additional symbols referenced by newer crt0.o files from HP.
801 2001-11-12 Anthony Green <green@redhat.com>
803 * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
805 2001-11-12 Alfred M. Szmidt <ams@kemisten.nu>
807 * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
808 * Makefile.in: Regenerate.
810 2001-11-02 Stephane Carrez <Stephane.Carrez@worldnet.fr>
812 * ld.texinfo: Use @command for commands, @option for options.
813 * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
815 * Makefile.in: Rebuild.
817 2001-11-04 Chris Demetriou <cgd@broadcom.com>
819 * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
820 Add support for targets.
822 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com>
824 * configure.in (ALL_LINGUAS): Add "fr" and "sv"
825 * configure: Regernate.
826 * po/fr.po: New file.
827 * po/sv.po: New file.
829 2001-11-01 NIIBE Yutaka <gniibe@m17n.org>
831 * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
832 as little endian default and to support big endian.
834 2001-11-01 Chris Demetriou <cgd@broadcom.com>
836 * ld.texinfo (Options): Document new option, -nostdlib.
837 * lexsup.c (OPTION_NOSTDLIB): New definition.
838 (ld_options): Add entry for "nostdlib".
839 (parse_args): Handle OPTIONS_NOSTDLIB.
840 * ldfile.c (ldfile_add_library_path): Don't add directories
841 to the search path if they weren't specified on the command line
842 and -nostdlib was specified.
843 * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
845 2001-10-31 Nick Clifton <nickc@cambridge.redhat.com>
847 * lexsup.c (parse_args): Prevent infinite parsing loop when
848 "-rpath.a" is specified on the command line.
849 Replace calls to fprintf with calls to einfo.
851 2001-10-31 John Marshall <jmarshall@acm.org>
853 * ld.texinfo: A historical requirement that MEMORY and SECTIONS
854 appear only once across all the linker scripts involved in a link
855 invocation no longer applies. Make the documentation reflect
858 2001-10-31 NIIBE Yutaka <gniibe@m17n.org>
860 * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
862 (sh-*-linux*): Added targ_extra_libpath.
864 2001-10-31 David Heine <dlheine@tensilica.com>
866 * ldlang.c (lang_size_sections): Keep a valid output_offset field
867 for padding statements.
869 2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
871 * configure.tgt (mmix-*-*): New target.
872 * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
873 Add dependencies to match.
874 * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
875 emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
876 scripttempl/mmo.sc: New files.
877 * gen-doc.texi: @set MMIX.
879 [MMIX] Add MMIX node.
880 * Makefile.in: Regenerate.
882 2001-10-29 Kazu Hirata <kazu@hxi.com>
884 * ldlang.c: Fix a comment typo.
886 2001-10-23 Alan Modra <amodra@bigpond.net.au>
888 * configure.host: Move alpha*-*-linux-gnu* entry to generic
889 entries, and match *-*-linux*.
891 2001-10-20 Alan Modra <amodra@bigpond.net.au>
893 * ldgram.y (mri_script_command): Surround processing of INCLUDE
894 with ldlex_script, ldlex_popstate.
895 (ifile_p1): Likewise.
896 * ldlex.l (EOF): Don't BEGIN(SCRIPT). Restore lineno from the
898 (lex_push_file): Save current lineno to lineno_stack. Set lineno
899 to 1. Don't BEGIN(SCRIPT).
900 (lex_redirect): Similarly.
901 * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
903 2001-10-20 Nick Clifton <nickc@cambridge.redhat.com>
905 * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
906 __EH_FRAME_END__ and accept eh frames into data section.
907 Add ctor and dtor sections.
909 2001-10-19 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
911 * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
912 (auto-export): Fix indentation.
914 2001-10-18 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
916 * pe-dll.c (autofilter_objectlist): Add startup objects
918 (auto-export): Constify char * p.
919 Extract file basename and use strcmp rather than ststr
922 2001-10-18 Chris Demetriou <cgd@broadcom.com>
924 * ldmain.c (get_emulation): Improve comment about the handling
927 2001-10-17 Alan Modra <amodra@bigpond.net.au>
929 * po/POTFILES.in: Regenerate.
931 2001-10-16 Vassili Karpov <malc@pulsesoft.com>
933 * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
934 -z nocopyreloc and -z nocombreloc usage strings.
936 2001-10-12 Vassili Karpov <malc@pulsesoft.com>
938 * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
941 2001-10-11 Aleksey Romanov <aromanov@ennovatenetworks.com>
943 * scripttempl/armaout.sc: Place .bss section after end of aligned
944 data section to match behaviour of aout code in constructrion of
947 2001-10-11 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
949 * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
950 startup files for mingw32 dlls to list.
952 2001-10-10 Chris Demetriou <cgd@broadcom.com>
954 * emultempl/elf32.em: Fix shell 'if' usage for portability.
956 2001-10-08 Aldy Hernandez <aldyh@redhat.com>
958 * configure.tgt (targ): Add arm9e-*-elf.
960 2001-10-05 H.J. Lu <hjl@gnu.org>
962 * genscripts.sh: Fix a typo in the last change.
964 2001-10-05 Jakub Jelinek <jakub@redhat.com>
966 * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
967 -z nocombreloc in usage.
969 2001-10-03 Jim Blandy <jimb@redhat.com>
971 * genscripts.sh: Include a comment at the top of each generated
972 script, explaining its purpose.
974 2001-10-03 Vassili Karpov <malc@pulsesoft.com>
976 * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
977 * NEWS: Mention -z nocopyreloc.
978 * ld.texinfo (Options): Describe nocopyreloc.
980 2001-10-03 Alan Modra <amodra@bigpond.net.au>
982 * configure: Regenerate.
984 2001-10-02 Alan Modra <amodra@bigpond.net.au>
986 * ldver.h (ld_program_version): Remove declaration.
987 * lexsup.c (parse_args): Move printing of copyright message..
988 * ldver.c (ldversion): .. to here.
989 Use BFD_VERSION_STRING in place of BFD_VERSION.
990 (ld_program_version): Remove.
991 * Makefile.am (Makefile): Depend on bfd/configure.in.
993 * Makefile.in: Regenerate.
995 2001-09-30 Hans-Peter Nilsson <hp@bitrange.com>
997 * Makefile.am: Update dependencies with "make dep-am".
998 * Makefile.in: Regenerate.
1000 2001-09-29 John Reiser <jreiser@BitWagon.com>
1002 * ldlang.c (lang_common): Conditionally inhibit Common allocation.
1003 * lexsup.c: Add --no-define-common commandline option.
1004 * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
1005 * ldlex.l: Likewise.
1006 * ld.h: Add command_line.inhibit_common_definition.
1007 * ldmain.c (main): Initialize.
1008 * ld.texinfo: Document.
1010 2001-09-26 Alan Modra <amodra@bigpond.net.au>
1012 * ldmisc.c (USE_STDARG): Remove.
1013 (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
1018 * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
1019 declarations. Update copyright.
1021 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1023 * pe-dll.c: Remove obsoleted declaration of
1024 pe_get_data_import_dll_name.
1025 (pe_create_import_fixup): Fix thinko.
1027 * ld.texinfo(enable-auto-import): Clarify the explanation.
1029 2001-09-24 Nick Clifton <nickc@cambridge.redhat.com>
1031 * pe-dll.c (pe_create_import_fixup): Revert previous patch.
1032 * emultemp/pe.em (pe_data_import_dll): Move definition outside of
1033 DLL_SUPPORT controlled code.
1035 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1037 * emultempl/pe.em(pe_data_import_dll): Make static.
1038 (pe_get_data_import_dll_name): New accessor function.
1039 * pe-dll.c(pe_create_import_fixup): call
1040 pe_get_data_import_dll_name() from pe.em, instead of
1041 directly accessing pe_data_import_dll variable from pe.em.
1043 2001-09-18 Bruno Haible <haible@clisp.cons.org>
1045 * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
1046 (def_file_add_directive): Use ISSPACE instead of isspace.
1047 (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
1048 isdigit/isxdigit/isalpha/isalnum.
1049 * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
1050 (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
1051 * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
1052 (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
1054 * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
1055 (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
1057 * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
1058 (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
1059 * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
1060 (ctor_prio): Use ISDIGIT instead of isdigit.
1061 * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
1062 (ldfile_open_file_search): Use ISALPHA instead of isalpha.
1063 (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
1065 * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
1066 (stricpy): Use TOLOWER instead of isupper/tolower.
1067 (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
1068 * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
1069 (lex_warn_invalid): Use ISPRINT instead of isprint.
1070 * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
1071 (main): For gettext, also set the LC_CTYPE locate facet.
1072 (add_keepsyms_file): Use ISSPACE instead of isspace.
1073 * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
1074 (is_num, parse_args): Use ISDIGIT instead of isdigit.
1075 * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
1076 (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
1077 * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
1078 (gldppcmacos_read_file): Use ISSPACE instead of isspace.
1079 * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
1080 (quoteput): Use ISSPACE instead of isspace.
1081 (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
1084 2001-09-18 Alan Modra <amodra@bigpond.net.au>
1086 * deffilep.y (def_stash_module): Constify "name" param.
1088 * pe-dll.c: Replace CONST with const throughout.
1089 (quick_symbol): Constify "n1", "n2", "n3" params.
1090 (make_singleton_name_thunk): Constify "import" param. Make
1091 "buffer_len" a size_t.
1092 (make_import_fixup_entry): Constify "name", "fixup_name",
1093 "dll_symname" params.
1094 (pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
1095 (pe_get32): Likewise.
1096 (pe_implied_import_dll): Likewise.
1098 * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
1099 (sort_by_section_name): Likewise.
1101 * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
1102 (make_import_fixup): Cast printf arg, rel->address to long rather
1104 (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
1106 2001-09-15 Alan Modra <amodra@bigpond.net.au>
1108 * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
1109 defines BufferSize. Increase buffer size by one.
1111 2001-09-14 Ralf Habacker <Ralf.Habacker@freenet.de>
1113 * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
1115 2001-09-14 Kevin Lo <kevlo@openbsd.org>
1117 * configure.tgt: Add arm-openbsd target.
1119 2001-09-12 H.J. Lu <hjl@gnu.org>
1121 * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
1123 (ALL_64_EMULATIONS): Here.
1124 * Makefile.in: Regenerated.
1126 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1128 * emultempl/pe.em(make_import_fixup): change signature to
1129 take asection as well as arelec; we need this for proper
1130 error reporting. Only call pe_create_import_fixup() if
1131 there is no attempt to add a constant addend to the reloc;
1132 otherwise, report error condition.
1133 * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
1134 since final argument is a pointer to make_import_fixup().
1135 Change call to cb() to match make_import_fixup() signature.
1136 (make_import_fixup_mark): make buffer_len unsigned.
1137 * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
1139 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu>
1141 * ld.texinfo: add verbose documentation for auto-import
1142 direct-addressing workaround, to compliment the terse
1145 2001-09-12 Andrew MacLeod <amacleod@redhat.com>
1147 * scripttempl/v850.sc: Add gcc_except_table sections.
1149 2001-09-11 Jeffrey A Law (law@cygnus.com)
1151 * emulparams/h8300helf.sh: Move stack to a much higher memory address.
1152 * emulparams/h8300self.sh: Similarly.
1154 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
1156 * ld.texinfo (Options, --stack): Correct default value for stack
1159 2001-09-05 Tom Rix <trix@redhat.com>
1161 * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
1163 2001-09-03 Andreas Jaeger <aj@suse.de>
1165 * emultempl/beos.em: Declare prototypes for comparions functions,
1168 2001-09-02 Andreas Jaeger <aj@suse.de>
1170 * emultempl/aix.em: Add missing prototype.
1171 * emultempl/lnk960.em: Likewise.
1172 * emultempl/vanilla.em: Likewise.
1173 * emultempl/armcoff.em: Likewise.
1174 * emultempl/armelf_oabi.em: Likewise.
1175 * emultempl/beos.em: Likewise.
1176 * emultempl/gld960c.em: Likewise.
1177 * emultempl/gld960.em: Likewise.
1179 * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
1180 for prototype declaration.
1182 2001-08-31 Eric Christopher <echristo@redhat.com>
1183 Jason Eckhardt <jle@redhat.com>
1185 * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
1187 2001-08-31 Andreas Jaeger <aj@suse.de>
1189 * emultempl/pe.em: Add missing prototypes.
1190 (gld_${EMULATION_NAME}_after_open): Remove extra args to
1191 pe_find_data_imports.
1192 (pr_sym): Add unused attribute.
1194 2001-08-29 Joel Sherrill <joel@OARcorp.com>
1196 * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
1197 default from coff to elf.
1199 2001-08-29 Jeff Law <law@redhat.com>
1201 * emulparams/h8300helf.sh: Resync with h8300elf.sh. Update
1203 * emulparams/h8300self.sh: Similarly.
1205 2001-08-28 J"orn Rennecke <amylaar@redhat.com>
1207 * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
1209 (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
1210 * configure.tgt (h8300-*-elf*): New case.
1211 * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
1212 * emulparams/h8300self.sh: New file.
1213 * Makefile.in: Regenerated.
1215 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
1217 * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
1220 2001-08-27 Linus Nordberg <linus@swox.com>
1221 Alan Modra <amodra@bigpond.net.au>
1223 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
1224 (eelf64ppc.c, eelf64lppc.c): Add make targets.
1226 * Makefile.in: Regenerate.
1227 * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj
1228 entries to correct alphabetical position.
1229 * emulparams/elf64ppc.sh: New.
1230 * emulparams/elf64lppc.sh: New.
1232 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
1234 * ldmain.c (main): Declare BSIZE as static.
1236 2001-08-23 Jakub Jelinek <jakub@redhat.com>
1238 * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
1239 into .rel.dyn resp. .rela.dyn if combreloc.
1240 (get_script): If .x linker script is equal to .xn, only put it
1241 once into the binary.
1242 Add .xc and .xsc scripts.
1243 (parse_args): Handle -z combreloc and -z nocombreloc.
1244 * scripttempl/elf.sc (.rela.sbss): Fix a typo.
1245 For .xc and .xsc scripts put all .rel* or .rela* input sections
1246 but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
1247 * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
1249 Strip trailing whitespace from script.
1250 Generate .xc and .xsc scripts if requested.
1251 * ldmain.c (main): Initialize link_info.combreloc and
1252 link_info.spare_dynamic_tags.
1253 * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
1254 (ld_options): Add --spare-dynamic-tags option.
1255 (parse_args): Likewise.
1256 * ld.texinfo: Document -z combreloc and -z nocombreloc.
1257 * ldint.texinfo: Document .xc and .xsc linker scripts.
1258 * NEWS: Add notes about -z combreloc and SHF_MERGE.
1260 2001-08-22 H.J. Lu <hjl@gnu.org>
1262 * emulparams/elf32fr30.sh: Add a newline.
1264 2001-08-21 Andreas Jaeger <aj@suse.de>
1266 * deffilep.y: Add missing prototypes.
1267 * pe-dll.c: Likewise.
1269 2001-08-20 Alan Modra <amodra@bigpond.net.au>
1271 * ldlang.c (insert_pad): Fix typos in last patch.
1273 * ldlang.c: When traversing lang_statement_union_type lists,
1274 consistently use "header.next" rather than "next".
1275 * mpw-eppcmac.c: Likewise.
1276 * emultempl/beos.em: Likewise.
1277 * emultempl/hppaelf.em: Likewise.
1278 * emultempl/pe.em: Likewise.
1279 * ldlang.h (union lang_statement_union): Remove "next" field.
1281 * ldlang.c (insert_pad): Use offsetof macro.
1282 (lang_size_sections): Always neuter padding statements.
1283 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
1285 * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
1286 passed to lang_size_sections.
1287 (pe_exe_fill_sections): Likewise.
1288 * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
1289 (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
1291 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1293 * emultempl/aix.em: Formatting fixes.
1295 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1297 * ldlang.c (insert_pad): Make use of an existing pad statement if
1298 available. Move code calculating alignment, adjusting section
1299 alignment power, and adjusting dot to ..
1300 (size_input_section): .. here. Remove unused relax param.
1301 (lang_size_sections): Change boolean `relax' param to boolean *.
1302 Adjust call to size_input_section. Make use of insert_pad to
1303 place pad after the assignment statement. If relaxing, zap
1305 (reset_memory_regions): Reset output_bfd section sizes too.
1306 (relax_again): Move to..
1307 (lang_process): ..here. Adjust call to lang_size_sections, and
1308 remove duplicated code.
1309 * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
1311 2001-08-17 Alan Modra <amodra@bigpond.net.au>
1313 * ld.texinfo: Document that fill values now use the four least
1315 * emulparams/elf32fr30.sh (NOP): Update.
1316 * emulparams/elf32mcore.sh: Likewise.
1317 * emulparams/elf64_s390.sh: Likewise.
1318 * emulparams/elf_i386.sh: Likewise.
1319 * emulparams/elf_i386_be.sh: Likewise.
1320 * emulparams/elf_i386_chaos.sh: Likewise.
1321 * emulparams/elf_i386_ldso.sh: Likewise.
1322 * emulparams/elf_s390.sh: Likewise.
1323 * emulparams/elf_x86_64.sh: Likewise.
1324 * emulparams/i386moss.sh: Likewise.
1325 * emulparams/i386nw.sh: Likewise.
1326 * emulparams/m68kelf.sh: Likewise.
1327 * scripttempl/elf.sc: Update NOP comment.
1328 * scripttempl/elfi370.sc: Likewise.
1329 * scripttempl/elfm68hc11.sc: Likewise.
1330 * scripttempl/elfm68hc12.sc: Likewise.
1331 * scripttempl/nw.sc: Likewise.
1333 2001-08-15 Tom Rix <trix@redhat.com>
1335 * ldgram.y (saved_script_handle): Initialize to NULL.
1336 * ldmain.c (main): Change check on saved_script_handle.
1338 2001-08-14 Alan Modra <amodra@bigpond.net.au>
1340 * emultempl/elf32.em: Formatting fixes.
1341 (output_prev_sec_find): Test for bfd_ind_section too; do so by
1342 looking at sec->owner.
1343 (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
1344 (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove
1345 unused code, and reorganize orphan section placement code.
1347 * ldlang.c (wild_doit): Rename to lang_add_section.
1348 * ldlang.h: Here too.
1349 * mpw-elfmips.c: And here.
1350 * emultempl/beos.em: And here.
1351 * emultempl/elf32.em: And here.
1352 * emultempl/hppaelf.em: And here.
1353 * emultempl/pe.em: And here.
1355 2001-08-13 Richard Henderson <rth@redhat.com>
1357 * emultempl/needrelax.em: New file.
1358 * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
1359 * Makefile.am (eelf64_ia64.c): Depend on it.
1360 * Makefile.in: Rebuild.
1362 2001-08-13 Alan Modra <amodra@bigpond.net.au>
1364 * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
1365 output_section is set non-NULL.
1367 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
1368 `true' for SEC_EXCLUDE sections so that the generic code doesn't
1369 needlessly create an output_section_statement. Treat a correctly
1370 named output_section_statement with NULL bfd_section as compatible.
1372 2001-08-13 Hans-Peter Nilsson <hp@bitrange.com>
1374 * emultempl/generic.em: Support EXTRA_EM_FILE.
1375 (ld_${EMULATION_NAME}_emulation): Support emulation parameters
1376 LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
1377 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
1378 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
1379 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
1380 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
1381 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
1382 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
1383 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
1384 LDEMUL_FIND_POTENTIAL_LIBRARIES.
1386 2001-08-12 Richard Henderson <rth@redhat.com>
1388 * scripttempl/elf.sc, scripttempl/elfd30v.sc,
1389 scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
1390 scripttempl/v850.sc: Keep .jcr data.
1392 2001-08-12 H.J. Lu <hjl@gnu.org>
1393 Andrew Haley <aph@cambridge.redhat.com>
1394 Nick Clifton <nickc@redhat.com>
1396 * ldgram.y (had_script): Change name to saved_script_handle.
1397 Change type to file handle.
1398 * ld.h (had_script): Rename and retype.
1399 * ldfile.c (ldfile_open_command_file): Save the file handle
1400 used in saved_script_handle.
1401 * lexsup.c (parse_args): Do not allow -c option to alter
1402 saved_script_handle.
1403 * ldmain.c (main): Print out the linker script used if
1404 --verbose is given. Check saved_script_handle to obtain the
1405 external linker script used, or if NULL, dump the builtin
1407 * ld.texinfo: Document that --verbose now dumps the linker
1408 script used, regardless of whether it was an internal or an
1411 2001-08-10 Andreas Jaeger <aj@suse.de>
1413 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
1415 * configure: Regenerate.
1417 2001-08-09 Alan Modra <amodra@bigpond.net.au>
1419 * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
1421 * scripttempl/elf.sc: Move non-text .dynamic section before
1422 .plt/.got/.sdata* group.
1423 (OTHER_GOT_SECTIONS): Move to immediately after .got.
1424 (OTHER_SDATA_SECTIONS): Add.
1425 * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
1427 * emulparams/crislinux.sh: Likewise.
1428 * emulparams/elf32b4300.sh: Likewise.
1429 * emulparams/elf32bmip.sh: Likewise.
1430 * emulparams/elf32bmipn32.sh: Likewise.
1431 * emulparams/elf32bsmip.sh: Likewise.
1432 * emulparams/elf32btsmip.sh: Likewise.
1433 * emulparams/elf32ebmip.sh: Likewise.
1434 * emulparams/elf32elmip.sh: Likewise.
1435 * emulparams/elf32l4300.sh: Likewise.
1436 * emulparams/elf32lmip.sh: Likewise.
1437 * emulparams/elf32lsmip.sh: Likewise.
1438 * emulparams/elf32ltsmip.sh: Likewise.
1439 * emulparams/elf64bmip.sh: Likewise.
1440 * emulparams/elf64btsmip.sh: Likewise.
1441 * emulparams/elf64ltsmip.sh: Likewise.
1443 2001-08-08 Alan Modra <amodra@bigpond.net.au>
1445 * genscripts.sh: Source the emulparams script before each output
1446 script is generated so that variables like `RELOCATING' may affect
1447 variables defined in the emulparams script.
1449 2001-08-04 Alan Modra <amodra@bigpond.net.au>
1451 * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
1454 * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
1455 ie. iterate over wild_statement.section_list.
1456 (gld${EMULATION_NAME}_place_orphan): Likewise.
1458 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1460 * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
1461 .fini[0-4] sections used by _exit
1462 (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
1463 (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
1464 * scripttempl/elfm68hc11.sc: Likewise.
1466 2001-08-03 H.J. Lu <hjl@gnu.org>
1468 * emultempl/beos.em (init): Add the missing initialization.
1470 2001-08-03 Alan Modra <amodra@bigpond.net.au>
1472 * ld.texinfo (Input Section Basics): Clarify ordering of output
1474 * ldlang.c (callback_t): Add wildcard_list param.
1475 (walk_wild_section): Remove "section" param. Rewrite for
1476 lang_wild_statement_type change. Remove unique_section_p test.
1477 (walk_wild_file): Remove "section" param.
1478 (walk_wild): Remove "section" and "file" params.
1479 (lang_gc_wild): Likewise.
1480 (wild): Likewise. Modify for lang_wild_statement_type change.
1481 (wild_sort): Likewise. Add "sec" param.
1482 (gc_section_callback): Likewise.
1483 (output_section_callback): Likewise. Do unique_section_p test.
1484 (map_input_to_output_sections): Modify call to wild.
1485 (lang_gc_sections_1): Likewise.
1486 (print_wild_statement): Modify for lang_wild_statement_type
1488 (lang_add_wild): Replace filename, filenames_sorted param with
1489 filespec. Replace section_name, sections_sorted,
1490 exclude_filename_list with section_list.
1491 * ldlang.h (lang_add_wild): Here too.
1492 (lang_wild_statement_type): Replace section_name, sections_sorted,
1493 and exclude_filename_list with section_list.
1494 * ldgram.y (current_file): Delete.
1495 (%union): Add wildcard_list.
1496 (file_NAME_list): Set type to wildcard_list. Build a linked list
1497 rather than calling lang_add_wild for each entry.
1498 (input_section_spec_no_keep): Call lang_add_wild here instead.
1499 * ld.h (struct wildcard_list): Declare.
1500 * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
1502 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
1504 * ldmain.c (main): initialize link_info.pei386_auto_import
1505 * pe-dll.c: new tables for auto-export filtering
1506 (auto_export): change API, pass abfd for contextual filtering.
1507 Loop thru tables of excluded symbols instead of comparing
1510 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
1512 * pe-dll.c: new variable pe_dll_enable_extra_debug. New
1513 static variable current_sec (static struct sec *). Add
1514 forward declaration for add_bfd_to_link.
1515 (process_def_file): Don't export undefined symbols. Do not
1516 export symbols starting with "_imp__". Call auto_export()
1518 (pe_walk_relocs_of_symbol): New function.
1519 (generate_reloc): add optional extra debugging
1520 (pe_dll_generate_def_file): eliminate extraneous initial blank
1522 (make_one): enlarge symtab to make room for __nm__ symbols
1523 (DATA auto-import support).
1524 (make_singleton_name_thunk): New function.
1525 (make_import_fixup_mark): New function.
1526 (make_import_fixup_entry): New function.
1527 (pe_create_import_fixup): New function.
1528 (add_bfd_to_link): Specify that 'name' argument is a CONST
1530 * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
1531 declare new functions pe_walk_relocs_of_symbol and
1532 pe_create_import_fixup.
1533 * emultempl/pe.em: add new options --enable-auto-import,
1534 --disable-auto-import, and --enable-extra-pe-debug.
1535 (make_import_fixup): New function.
1536 (pe_find_data_imports): New function.
1537 (pr_sym): New function.
1538 (gld_${EMULATION_NAME}_after_open): Add optional extra pe
1539 debugging. Call pe_find_data_imports. Mark .idata as DATA, not
1542 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
1544 * ld.texinfo: add additional documentation for
1545 --export-all-symbols. Document --out-implib,
1546 --enable-auto-image-base, --disable-auto-image-base,
1547 --dll-search-prefix, --enable-auto-import, and
1548 --disable-auto-import.
1549 * ldint.texinfo: Add detailed documentation on auto-import
1552 2001-07-30 Nick Clifton <nickc@cambridge.redhat.com>
1554 * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
1557 2001-07-24 Alan Modra <amodra@bigpond.net.au>
1559 * Makefile.am: Update dependencies with "make dep-am".
1560 * Makefile.in: Regenerate
1562 2001-07-23 Alan Modra <amodra@bigpond.net.au>
1564 * ldcref.c (check_section_sym_xref): New function.
1565 (check_nocrossrefs): Call it.
1566 (check_nocrossref): Interate over h->refs here instead of..
1567 (check_refs): ..here. Pass in the symbol name, section, and bfd
1568 rather than hash_entry pointers.
1569 (struct check_refs_info): Keep symbol name rather than hash entry.
1571 (check_reloc_refs): Tweak for above changes in check_refs_info.
1572 Only report references to section syms when symname is NULL to
1573 prevent duplicate messages for the same reloc.
1575 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com>
1577 * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
1578 available. Do not print NULL trees.
1579 (exp_print_token): Print unknown tokens with values > 126 as
1580 decimal values not ASCII characters.
1582 * ldlang.c (lang_leave_overlay): If a region is specified assign
1583 it to all sections inside the overlay unless they have been
1584 assigned to the own, non-default, memory region.
1586 * README: Add header for consistency with other README files.
1588 2001-07-14 H.J. Lu <hjl@gnu.org>
1590 * emultempl/elf32.em (output_prev_sec_find): Never return
1591 bfd_abs_section_ptr, bfd_com_section_ptr nor
1592 bfd_und_section_ptr.
1594 2001-07-14 Nick Clifton <nickc@cambridge.redhat.com>
1596 * Makefile.am (em32relf.c): Change dependency from generic.em to
1598 * Makefile.in: Regenerate.
1600 2001-07-14 matthew green <mrg@eterna.com.au>
1602 * configure.tgt (i386-*-netbsdelf*): New target.
1603 (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
1605 2001-07-13 Jakub Jelinek <jakub@redhat.com>
1607 * emultempl/elf32.em (output_prev_sec_find): New.
1608 (place_orphan): Use it.
1610 2001-07-11 H.J. Lu <hjl@gnu.org>
1612 * ldmain.c (main): Fix typos in the last change.
1614 2001-07-11 Jakub Jelinek <jakub@redhat.com>
1616 * ldmain.c (main): Disallow -F and -f without -shared.
1618 2001-07-11 Nick Clifton <nickc@cambridge.redhat.com>
1620 * emultempl/pe.em (after_open): Check for the output_bfd not
1621 having any coff_data structure allocated to it.
1623 2001-07-09 David O'Brien <obrien@FreeBSD.org>
1625 * emultempl/elf32.em: Do not assuming that contents of the buffer
1626 returned from basename function will remain unchanged accross other
1629 2001-07-03 H.J. Lu <hjl@gnu.org>
1631 * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
1632 2001-07-03. It creates dynamic entries even for static binaries.
1634 2001-07-03 Jakub Jelinek <jakub@redhat.com>
1636 * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
1637 (DYNAMIC): Use it to reserve few dynamic entries for
1640 2001-06-27 Alan Modra <amodra@bigpond.net.au>
1642 * emulparams/hppa64linux.sh: New file.
1643 * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
1644 * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
1645 (ehppa64linux.c): Add rule to make it.
1647 * Makefile.in: Regenerate.
1649 2001-06-21 Hans-Peter Nilsson <hp@axis.com>
1651 * ld.texinfo (Options, -r): Mention restrictions when using
1652 different object formats.
1654 2001-06-19 Hans-Peter Nilsson <hp@axis.com>
1656 * ldlang.c (lang_check): Emit fatal error if relocatable link
1657 between different object flavours with relocations in input.
1659 2001-06-19 H.J. Lu <hjl@gnu.org>
1661 * ld.texinfo (-E, --export-dynamic): Mention --version-script.
1662 (--version-script): Mention the language support.
1664 2001-06-19 H.J. Lu <hjl@gnu.org>
1666 * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
1668 2001-06-18 H.J. Lu <hjl@gnu.org>
1670 * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
1671 (diststuff): Add $(MANS).
1672 * Makefile.in: Regenerated.
1676 2001-06-18 Hans-Peter Nilsson <hp@axis.com>
1678 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1679 Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
1680 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
1681 * ld.h (args_type): Remove member export_dynamic. All users
1682 changed to use struct bfd_link_info member.
1684 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
1685 $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
1686 * Makefile.in: Regenerate.
1688 2001-06-18 H.J. Lu <hjl@gnu.org>
1690 * ldlang.c (init_os): Add the newline to the einfo call.
1691 (lang_check): Likewise.
1692 (lang_do_version_exports_section): Likewise.
1694 2001-06-15 H.J. Lu <hjl@gnu.org>
1696 * lexsup.c (parse_args); Save optind to report unrecognized
1699 2001-06-15 Hans-Peter Nilsson <hp@axis.com>
1701 * ldlang.c (lang_check): Emit fatal error if relocatable link
1702 between different object flavours.
1704 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
1705 Set new link_info member export_dynamic.
1706 * ldmain.c (main): Initialize new link_info member export_dynamic.
1708 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
1710 * ldlang.c (walk_wild): Only call walk_wild_file if
1711 lookup_name returns something.
1712 (lookup_name): If load_symbols fails, return NULL.
1713 (load_symbols): Change to a boolean function.
1714 (open_input_bfds): If load_symbols fails then do not make the
1717 2001-06-08 Alan Modra <amodra@bigpond.net.au>
1719 * ldlang.c (record_bfd_errors): Remove.
1721 * emultempl/aix.em: Fix copyright dates.
1723 2001-06-07 Andreas Jaeger <aj@suse.de>
1725 * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
1726 (TEXT_START_ADDR): Likewise.
1728 2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
1730 * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
1732 2001-06-05 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1734 * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
1736 2001-05-31 H.J. Lu <hjl@gnu.org>
1738 * ldlang.c (open_input_bfds): Don't change the bfd error
1739 handler whilst loading symbols.
1741 2001-05-28 Nick Clifton <nickc@cambridge.redhat.com>
1743 * configure.tgt: Remove i370-mvs architecture, it is not currently
1746 2001-05-25 H.J. Lu <hjl@gnu.org>
1748 * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1749 like emulparams/aixppc.sh.
1751 2001-05-25 H.J. Lu <hjl@gnu.org>
1753 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
1754 setting of output_filename after bfd_scan_arch.
1755 * emultempl/pe.em: Likewise.
1757 2001-05-25 H.J. Lu <hjl@gnu.org>
1759 * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1760 like emulparams/aixppc.sh.
1762 * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
1763 instead of ${srcdir}/emultempl/stringify.sed.
1765 2001-05-25 Timothy Wall <twall@oculustech.com>
1767 * emulparams/elf64_aix.sh: Change settings to match IBM linker
1770 2001-05-25 Alan Modra <amodra@one.net.au>
1772 * configure.host: Replace linuxoldld with linux*oldld.
1773 * configure.tgt: Likewise.
1775 2001-05-24 H.J. Lu <hjl@gnu.org>
1777 * emultempl/stringify.sed: Removed again.
1779 2001-05-24 H.J. Lu <hjl@gnu.org>
1781 * emultempl/aix.em (OUTPUT_ARCH): Defined.
1782 (gld${EMULATION_NAME}_before_parse): Initialize
1783 ldfile_output_architecture, ldfile_output_machine and
1784 ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
1785 * emultempl/beos.em: Likewise.
1786 * emultempl/elf32.em: Likewise.
1787 * emultempl/linux.em: Likewise.
1788 * emultempl/mipsecoff.em: Likewise.
1789 * emultempl/pe.em: Likewise.
1790 * emultempl/sunos.em: Likewise.
1792 2001-05-24 Tom Rix <trix@redhat.com>
1794 * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
1795 udate import file format.
1796 (change_symbol_mode) New, same
1797 (is_syscall) New, same
1798 * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
1799 * emulparams/aixppc64.sh : same
1800 * emulparams/aixrs6.sh : same
1801 * emulparams/ppcmacos.sh : same
1802 * emultempl/aix.em : use strtoull to parse options
1803 * Makefile.am : add eaixppc64 emulation for xcoff64
1804 * Makefile.in : same
1805 * configure.tgt : same
1807 * scripttempl/aix.sc : default text section offset to 0x10000000
1808 default data section offset to 0x20000000
1809 add .sv3264 and .sv64 pseudo sections
1810 loader and debug sections use the currect section offset.
1812 * emultempl/aix.em : Add xcoff64 support
1813 Add -binitfini support
1814 (gld${EMULATION_NAME}_before_parse) -binitfini
1815 (gld${EMULATION_NAME}_parse_args) same
1816 (gld${EMULATION_NAME}_before_allocation) format change for special
1819 * emulparams/aixppc64.sh : New file for xcoff64 support
1821 2001-05-23 Alexandre Oliva <aoliva@redhat.com>
1823 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
1824 variable to avoid non-portable shell construct.
1826 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1828 * ldmain.c (get_emulation): Add -mips5 command line argument.
1830 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
1832 * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
1833 (ELF_INTERPRETER_NAME): Define it.
1834 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
1836 * configure.tgt (targ_emul, targ_extra_emuls)
1837 [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
1838 as primary, elf_i386 as extra.
1839 * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
1840 (eelf_i386_ldso.c): New rule.
1841 * Makefile.in: Rebuilt.
1843 2001-05-22 Nick Clifton <nickc@redhat.com>
1845 * lexsup.c (ld_options): Allow -I to be an alias for
1846 --dynamic-linker. This is for Solaris compatability.
1847 * ld.texinfo: Document that -I can be used.
1850 2001-05-16 Alan Modra <amodra@one.net.au>
1852 * ldlang.c (wild_doit): Use linker_has_input to reliably determine
1853 whether an input section is the first one assigned to an output
1855 Assorted formatting fixes.
1857 2001-05-14 DJ Delorie <dj@delorie.com>
1859 * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
1860 * Makefile.in: Ditto.
1862 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1864 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
1865 .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
1867 * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
1869 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1871 * ldlang.c (lang_process): Call bfd_merge_sections.
1873 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1875 * ldgram.y: Fix typo.
1877 2001-05-03 H.J. Lu <hjl@gnu.org>
1879 * emultempl/elf32.em: Include "libiberty.h".
1880 (gld${EMULATION_NAME}_vercheck): Call basename () to get the
1881 basename of the bfd filename.
1882 (gld${EMULATION_NAME}_stat_needed): Likewise.
1883 (gld${EMULATION_NAME}_try_needed): Likewise.
1884 (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
1886 2001-05-02 H.J. Lu <hjl@gnu.org>
1888 * emultempl/pe.em: Include <ctype.h>.
1890 2001-05-02 Johan Rydberg <jrydberg@opencores.org>
1892 * emulparams/elf32openrisc.sh: New file.
1894 * Makefile.am: Add OpenRISC target.
1895 * Makefile.in: Regenerated.
1897 * configure.tgt: Add openrisc-*-* mapping.
1899 2001-05-02 Nick Clifton <nickc@redhat.com>
1901 * emultempl/aix.em: Replace buystring with xstrdup.
1902 * emultempl/beos.em: Replace buystring with xstrdup.
1904 2001-05-02 H.J. Lu <hjl@gnu.org>
1906 * ldfile.c: Include "libiberty.h".
1907 * ldlex.l: Likewise.
1909 * ldmisc.c (buystring): Removed.
1910 * ldmisc.h: Likewise.
1912 * ldfile.c: Replace buystring with xstrdup.
1913 * ldlang.c: Likewise.
1914 * ldlex.l: Likewise.
1915 * ldmain.c: Likewise.
1916 * ldmisc.c: Likewise.
1917 * lexsup.c: Likewise.
1918 * mpw-eppcmac.c: Likewise.
1920 2001-04-30 Andreas Jaeger <aj@suse.de>
1922 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
1924 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1926 * ldlang.c (load_symbols): Give emulation a chance
1927 to process unrecognized file before fatal error is
1928 reported, not after.
1930 2001-04-27 Sean McNeil <sean@mcneil.com>
1932 * configure.tgt: Add arm-vxworks target.
1933 * scripttempl/armcoff.sc: Support .text or .data as a section name
1937 2001-04-13 J.T. Conklin <jtc@redback.com>
1939 * ld.texinfo: Document --fatal-warnings.
1942 * ldmisc.c (vfinfo): Set flag to inhibit making executable if
1943 warnings have been turned into errors.
1944 * lexsup.c (OPTION_WARN_FATAL): Define.
1945 (ld_options): Entry for --fatal-warnings.
1946 (parse_args): Handle OPTION_WARN_FATAL.
1947 * ld.h (ld_config_type): Add fatal_warnings field.
1949 2001-04-13 Jakub Jelinek <jakub@redhat.com>
1951 * ldmain.c (main): Default to discard_sec_merge.
1952 * lexsup.c (OPTION_DISCARD_NONE): Define.
1953 (ld_options): Add --discard-none.
1954 (parse_args): Handle OPTION_DISCARD_NONE.
1955 * ldlang.c (wild_doit): SEC_MERGE should be set in the output
1956 section only if SEC_MERGE and SEC_STRINGS flags and entsize of
1957 all its input sections match.
1959 2001-04-05 Steven J. Hill <sjhill@cotw.com>
1961 * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
1962 (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
1963 (eelf32ltsmip.c): New target.
1964 (eelf64btsmip.c): Likewise.
1965 (eelf64ltsmip.c): Likewise.
1966 * Makefile.in: Regenerated.
1968 * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
1970 (mips*-*-linux-gnu*): Likewise.
1972 * emulparams/elf32ltsmip.sh: New. Traditional little endian
1974 * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
1976 * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
1979 2001-04-05 Hans-Peter Nilsson <hp@axis.com>
1981 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
1982 correct value of __Stext here.
1983 (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
1986 * emulparams/crislinux.sh: Remove FIXME.
1988 2001-04-02 Alan Modra <alan@linuxcare.com.au>
1990 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
1991 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
1993 2001-03-27 Hans-Peter Nilsson <hp@axis.com>
1995 * configure.tgt (cris-*-*): Change default emulation to criself.
1996 (cris-*-*aout*): New rule.
1998 2001-03-27 Matthew Wilcox <willy@ldl.fc.hp.com>
2000 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
2001 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
2003 2001-03-26 Andreas Jaeger <aj@suse.de>
2005 * ld.texinfo (Overview): Fix syntax in texi code.
2007 2001-03-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2009 * ld.texinfo: Put @c man indications to generate the ld man page.
2010 When generating man, define all the variables. Define SEEALSO
2011 and SYNOPSIS. Re-organize some lines to avoid the cross references.
2012 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
2013 (ld.1): Generate from ld.texinfo.
2014 * Makefile.in: Regenerate.
2016 2001-03-23 Mark Elbrecht <snowball3@bigfoot.com>
2018 * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
2019 and '-fdata-sections'. Set the VMA of STABS sections to zero.
2021 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2023 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
2024 is an absolute path look only for this file and not along the path.
2026 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2028 * emultempl/elf32.em (OPTION_GROUP): New macro.
2029 Add new option Bgroup to longopts.
2030 (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
2031 (gld*_list_options): Add -Bgroup and -z defs.
2032 * ld.1: Document -Bgroup and -z defs.
2033 * ld.texinfo: Likewise.
2035 2001-03-07 Michael Meissner <meissner@redhat.com>
2037 * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
2038 with sections created by -fdata-sections.
2039 (.dynbss,.bss): Ditto.
2041 2001-03-05 Alan Modra <alan@linuxcare.com.au>
2043 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
2044 after_allocation_default, not gld..._before_allocation.
2046 2001-02-27 Alan Modra <alan@linuxcare.com.au>
2048 * configure.in (BFD_VERSION): New.
2049 (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
2050 * configure: Regenerate.
2051 * Makefile.am: Run "make dep-am"
2052 * Makefile.in: Regenerate.
2054 2001-02-26 Timothy Wall <twall@cygnus.com>
2056 * emulparams/elf64_aix.sh: Add additional read-only sections;
2057 uncomment lines which are now required.
2059 2001-02-26 H.J. Lu <hjl@gnu.org>
2061 * ldlang.c (open_input_bfds): Set the bfd error handler so
2062 that problems can be caught whilst loading symbols.
2063 (record_bfd_errors): New function: Report BFD errors and mark
2064 the executable output as being invalid.
2066 2001-02-22 Timothy Wall <twall@cygnus.com>
2068 * configure.host: Add configuration for ia64-*-aix*.
2069 * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
2070 Add dependencies for eelf64_aix.c.
2071 * Makefile.in: Regenerate.
2072 * configure.tgt: Add ia64-*-aix* mapping.
2073 * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
2074 * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
2077 2001-02-20 H.J. Lu <hjl@gnu.org>
2079 * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
2080 false if we found the file.
2082 2001-02-18 David O'Brien <obrien@FreeBSD.org>
2084 * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
2085 FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
2087 2001-02-18 lars brinkhoff <lars@nocrew.org>
2089 * Makefile.am: Add PDP-11 target.
2090 * configure.tgt: Likewise.
2091 * emulparams/pdp11.sh: New file.
2093 2001-02-17 David O'Brien <obrien@FreeBSD.org>
2095 * configure.host: Add a generic FreeBSD configuration entry such that
2096 all [modern] FreeBSD systems on all platforms will look the same.
2098 2001-02-14 H.J. Lu <hjl@gnu.org>
2100 * configure.tgt: Remove mention of earmelf_linux26.
2102 2001-02-13 Richard Henderson <rth@redhat.com>
2104 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
2106 2001-02-13 H.J. Lu <hjl@gnu.org>
2108 * ldexp.h (node_type): Add etree_provided.
2109 * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
2110 type to etree_provided if defined by PROVIDE. Allow updating
2112 (exp_print_tree): Handle etree_provided.
2113 * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
2116 2001-02-09 David Mosberger <davidm@hpl.hp.com>
2118 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
2119 .IA_64.unwind.* pattern to unwind table section and
2120 .IA_64.unwind_info* pattern to unwind info section.
2122 2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
2124 * Makefile.am: Add linux target for S/390.
2125 * Makefile.in: Likewise.
2126 * configure.host: Likewise.
2127 * configure.tgt: Likewise.
2128 * emulparams/elf64_s390.sh: New file.
2129 * emulparams/elf_s390.sh: New file.
2131 2001-02-09 Jakub Jelinek <jakub@redhat.com>
2133 * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
2135 (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
2137 2001-02-06 Philip Blundell <philb@gnu.org>
2139 * Makefile.am: Remove mention of earmelf_linux26.
2140 * Makefile.in: Regenerate.
2142 2001-02-04 Philip Blundell <philb@gnu.org>
2144 * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
2145 * emulparams/armelf_linux26.sh: Delete.
2146 * configure.tgt: Remove mention of armelf_linux26 emulation.
2148 2001-02-01 Nick Clifton <nickc@redhat.com>
2150 * ld.1: Replace occurances of -oformat with --oformat.
2152 2001-01-25 Jim Driftmyer <jdrift@stny.rr.com>
2154 * ldlang.c (lang_leave_overlay): Don't set lma_region when
2155 load_base is specified.
2157 2001-01-24 Hans-Peter Nilsson <hp@axis.com>
2159 * emultempl/elf32.em: Correct spelling in comments and listed
2162 2001-01-23 Alan Modra <alan@linuxcare.com.au>
2164 * ldlang.c (lang_leave_overlay): Only set lma_region from the
2165 default for the first section of a group of overlay sections.
2167 2001-01-22 Alan Modra <alan@linuxcare.com.au>
2169 * Makefile.am (GENSCRIPTS): Pass exec_prefix.
2170 * Makefile.in: Regenerate.
2171 * genscripts.sh: Use exec_prefix parameter to specify tool lib.
2172 Check for null tool_dir.
2174 2001-01-16 Jim Wilson <wilson@redhat.com>
2176 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
2177 and IA_64.unwind.info.
2179 2001-01-16 H.J. Lu <hjl@gnu.org>
2181 * ldlang.c (lang_check): Merge the private data only if the
2182 input file has contents.
2184 2001-01-14 Alan Modra <alan@linuxcare.com.au>
2186 * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
2188 * emultempl/hppaelf.em (hppaelf_after_parse): New function,
2189 enabling search for libmilli. On a relocatable link, make .text
2191 (LDEMUL_AFTER_PARSE): Define.
2192 (hppaelf_finish): Correct spelling of relocatable in comments.
2194 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2195 rummage through the script for sections on the unique list.
2196 Correct length of strncmp for ".note".
2197 (gld${EMULATION_NAME}_check_needed): Rearrange function.
2199 * ldlang.c (unique_section_list): New var.
2200 (unique_section_p): New function.
2201 (walk_wild_section): Don't match sections on unique_section_list.
2202 (lang_add_unique): New function.
2203 Correct spelling of relocatable in comments.
2205 * ldlang.h (struct unique_sections): Declare.
2206 (unique_section_list): Declare.
2207 (unique_section_p): Declare.
2208 (lang_add_unique): Declare.
2210 * lexsup.c (ld_options): Allow --unique to take an optional arg.
2211 (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
2213 * ld.texinfo (--unique): Update.
2215 2001-01-13 Nick Clifton <nickc@redhat.com>
2217 * lexsup.c (parse_args): Remove spurious white space.
2219 2001-01-12 Nick Clifton <nickc@redhat.com>
2221 * lexsup.c (parse_args): Update copyright date.
2223 2001-01-12 Philip Blundell <pb@futuretv.com>
2225 * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
2227 2001-01-10 Kazu Hirata <kazu@hxi.com>
2229 * scripttempl/h8300.sc: Fix formatting. Fix a comment typo.
2230 * scripttempl/h8300h.sc: Fix formatting.
2231 * scripttempl/h8300s.sc: Likewise.
2232 * scripttempl/h8500.sc: Likewise.
2233 * scripttempl/h8500b.sc: Likewise.
2234 * scripttempl/h8500c.sc: Likewise.
2235 * scripttempl/h8500m.sc: Likewise.
2236 * scripttempl/h8500s.sc: Likewise.
2238 2000-01-07 David O'Brien <obrien@BSDi.com>
2240 * emultempl/elf32.em: Only perform Linux ld hints processing when
2243 2001-01-07 Philip Blundell <philb@gnu.org>
2245 * ld.texinfo (Bug Reporting): Update email address for reports.
2247 2000-12-31 Nick Clifton <nickc@redhat.com>
2249 * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
2250 options by checking for a return value of '?' not -1.
2252 2000-12-28 Nick Clifton <nickc@redhat.com>
2254 * lexsup.c (struct ld_option): Add new enum value:
2256 (ld_options[]): Change -omagic, -output and -oformat options
2257 to be EXACTLY_TWO_DASHES.
2258 (OUTPUT_COUNT): Use ARRAY_SIZE.
2259 (parse_args): Change parameter 'argc' to unsigned.
2260 Place EXACTLY_TWO_DASHES options into new really_longopts
2262 If getopt_long_only fails, try calling getopt_long using the
2263 really_longopts array.
2264 (help): Print a double dash for both EXACTLY_TWO_DASHES and
2267 * ldlex.h: Fix prototype of parse_args.
2269 * ld.texinfo: Document that long options starting with 'o'
2270 must be preceeded by two dashes. Change example of a single
2271 dashed long option from -oformat to -trace-symbol.
2273 2000-12-26 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
2275 * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
2276 (longopts[]): New --no-default-excludes option.
2277 (gld_${EMULATION_NAME}_list_options): Document.
2278 (gld_${EMULATION_NAME}_parse_args): Handle.
2280 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2282 * ldlang.c (new_stat): Revert the last beautification with "innocent"
2283 whitespace, it breaks the K&R C preprocessor.
2285 2000-12-11 DJ Delorie <dj@redhat.com>
2287 * ld.texinfo: Add notes about --whole-archive and gcc.
2289 2000-11-18 Fred Fish <fnf@be.com>
2291 * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
2292 (ld_options): Entry for --allow-shlib-undefined.
2293 (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
2294 * ldmain.c (main): Initialize link_info.allow_shlib_undefined
2296 * ld.texinfo: Document new command line switch.
2298 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
2300 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
2301 .fixup is actually read/write.
2302 * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2303 * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2304 * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2306 2000-12-11 Jan Hubicka <jh@suse.cz>
2308 * NEWS: Add note about x86_64 architecture.
2310 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
2312 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
2313 Set DWARF2 sections to a VMA of zero.
2315 2000-12-01 Joel Sherrill <joel@OARcorp.com>
2317 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
2319 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
2320 (sparc*-*-rtems*): Switched from a.out to ELF.
2322 2000-11-30 Jan Hubicka <jh@suse.cz>
2324 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
2325 (eelf_x86_64.c): New.
2326 * Makefile.in: Regenerate.
2327 * configure.tgt: Add support for x86_64-*-linux-gnu*.
2328 * emulparams/elf_x86_64.sh: New.
2330 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
2332 * emulparams/crislinux.sh (ENTRY): Change back to _start.
2333 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
2335 * scripttempl/crisaout.sc: Change all RELOCATING not related to
2336 merging non-a.out sections into CONSTRUCTING.
2338 2000-11-28 Nick Clifton <nickc@redhat.com>
2340 * ld.1 (COPYING): Mention that the GNU Free Documentation
2341 License is present in the sources, but not the output, and
2342 also available from the GNU website.
2343 (GNU Free Documentation License): Comment out this section.
2345 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
2347 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
2350 2000-11-25 David O'Brien <obrien@FreeBSD.org>
2352 * ld.1: Remove old date so it does not give the impression the manpage
2355 2000-11-24 Nick Clifton <nickc@redhat.com>
2357 * configure.tgt (xscale-coff): Add target.
2358 (xscale-elf): Add target.
2360 2000-11-24 Fred Fish <fnf@be.com>
2362 * ldmain.c (main): Remove redundant init of config.make_executable
2365 2000-11-15 Richard Henderson <rth@redhat.com>
2367 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
2369 2000-11-14 Kazu Hirata <kazu@hxi.com>
2371 * scripttempl/h8300.sc: Fix formatting.
2372 * scripttempl/h8300h.sc: Likewise.
2373 * scripttempl/h8300s.sc: Likewise.
2375 2000-11-14 Denis Chertykov <denisc@overta.ru>
2377 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
2379 2000-11-09 Philip Blundell <pb@futuretv.com>
2381 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
2382 around orphan sections whose names can be represented in C.
2384 2000-11-07 Jim Wilson <wilson@redhat.com>
2386 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
2387 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
2389 2000-11-06 Nick Clifton <nickc@redhat.com>
2391 * ld.texinfo: Add GNU Free Documentation License.
2392 * ldint.texinfo: Add GNU Free Documentation License.
2393 * ld.1: Add GNU Free Documentation License.
2395 2000-11-05 Alan Modra <alan@linuxcare.com.au>
2397 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
2398 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
2400 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
2401 Move 2000-11-02 Makefile.in changes to this file.
2402 * Makefile.in: Regenerate.
2404 2000-11-03 Nick Clifton <nickc@redhat.com>
2406 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
2407 constructors and destructors.
2408 * scripttempl/h8300h.sc: Ditto.
2409 * scripttempl/h8300s.sc: Ditto.
2410 * scripttempl/h8500.sc: Ditto.
2411 * scripttempl/h8500b.sc: Ditto.
2412 * scripttempl/h8500c.sc: Ditto.
2413 * scripttempl/h8500m.sc: Ditto.
2414 * scripttempl/h8500s.sc: Ditto.
2415 * scripttempl/v850.sc: Ditto.
2416 * scripttempl/w65.sc: Ditto.
2417 * scripttempl/z8000.sc: Ditto.
2419 2000-11-02 Per Lundberg <plundis@chaosdev.org>
2421 * Makefile.in (e_i386_chaos.c): New rule.
2422 (ALL_EMULATIONS): Added e_i386_chaos.o.
2423 * emulparams/elf_i386_chaos.sh: New file.
2424 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
2426 2000-10-20 Jakub Jelinek <jakub@redhat.com>
2428 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
2429 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
2430 Fix sed invocation, so that it coped with '/' in Solaris 64bit
2431 library path suffix.
2432 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
2434 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
2436 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
2437 for consecutive sections.
2439 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
2441 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
2443 * ld.texinfo: Added notes about this new option.
2445 2000-10-16 Nick Clifton <nickc@redhat.com>
2447 * emultempl/pe.em (_after_open): Add tests of return values from
2448 bfd functions. Emit appropriate error messages if necessary.
2450 2000-10-13 Nick Clifton <nickc@redhat.com>
2452 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
2453 local variables - they are not used, but leave in the call to
2454 bfd_canonicalize_symtab.
2455 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
2456 pe_dll_search_prefix.
2458 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
2460 * emultempl/pe.em (pe_dll_search_prefix): New variable,
2461 (longopts): New --dll-search-prefix option.
2462 (gld_${EMULATION_NAME}_list_options): Document.
2463 (gld_${EMULATION_NAME}_parse_args): Handle.
2464 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
2465 dynamically, search for a dll named '<prefix><basename>.dll'
2466 in preference to 'lib<basename>.dll' if --dll-search-prefix
2469 2000-10-12 Alan Modra <alan@linuxcare.com.au>
2471 * ldlang.c (section_already_linked): Set kept_section instead of
2474 2000-10-10 Kazu Hirata <kazu@hxi.com>
2476 * deffile.h: Fix formatting.
2477 * lexsup.c: Likewise.
2480 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2482 * pe-dll.c (make_one): Do not generate code thunk for DATA
2484 (process_def_file): deduce DATA flag for auto-export sumbols.
2486 2000-10-09 Kazu Hirata <kazu@hxi.com>
2488 * ld.h: Fix formatting.
2489 * ldcref.c: Likewise.
2490 * ldctor.h: Likewise.
2491 * ldemul.c: Likewise.
2492 * ldemul.h: Likewise.
2493 * ldexp.c: Likewise.
2494 * ldexp.h: Likewise.
2495 * ldfile.c: Likewise.
2496 * ldfile.h: Likewise.
2497 * ldlang.c: Likewise.
2498 * ldlang.h: Likewise.
2499 * ldmain.c: Likewise.
2500 * pe-dll.c: Likewise.
2502 * pe-dll.c: Revert some formatting fixes.
2504 2000-10-08 Kazu Hirata <kazu@hxi.com>
2506 * pe-dll.c: Fix formatting.
2508 2000-10-05 Kazu Hirata <kazu@hxi.com>
2510 * ldlang.c: Fix formatting.
2512 2000-10-03 DJ Delorie <dj@redhat.com>
2514 * pe-dll.c (fill_edata): initialize entire block
2515 (make_one): fill in correct section.
2517 2000-10-03 Kazu Hirata <kazu@hxi.com>
2519 * ldexp.c: Fix formatting.
2521 2000-10-02 DJ Delorie <dj@redhat.com>
2523 * emultempl/pe.em (gld_*_after_open): detect case where there two
2524 import libraries for same dll; rename one to ensure proper link
2527 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
2529 (generate_edata): fix typo
2531 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
2533 * scripttempl/crisaout.sc (ENTRY): Now __start.
2534 (.text): Add default setting for __start.
2535 Remove CONSTRUCTORS handling.
2536 (/DISCARD/): Add .gnu.warning.*.
2537 * emulparams/crislinux.sh (ENTRY): Now __start.
2538 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
2539 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
2540 (ENTRY): Now __start.
2541 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
2542 (EXECUTABLE_SYMBOLS): Add default setting for __start.
2544 2000-09-29 Kazu Hirata <kazu@hxi.com>
2546 * deffile.h: Fix formatting.
2548 * ldcref.c: Likewise.
2549 * ldctor.c: Likewise.
2550 * ldctor.h: Likewise.
2551 * ldemul.c: Likewise.
2552 * ldemul.h: Likewise.
2553 * ldexp.c: Likewise.
2554 * ldexp.h: Likewise.
2555 * ldfile.c: Likewise.
2556 * ldfile.h: Likewise.
2557 * ldlang.c: Likewise.
2558 * ldlang.h: Likewise.
2559 * lexsup.c: Likewise.
2561 * pe-dll.c: Likewise.
2563 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2565 * pe-dll.c (process_def_file): Uninitialized data wasn't
2566 exported with --export-all-symbols switch.
2568 2000-09-28 DJ Delorie <dj@redhat.com>
2570 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
2571 noname work properly.
2573 2000-09-28 Alan Modra <alan@linuxcare.com.au>
2575 * ld.texinfo (HPPA ELF32): New section.
2577 * emultempl/hppaelf.em (group_size): New.
2578 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
2579 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
2580 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
2581 options to prevent abbreviations matching.
2582 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
2583 (PARSE_AND_LIST_ARGS_CASES): Handle it.
2585 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2587 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
2588 on the m68*-*-elf target. Make it support COFF input objects.
2590 2000-09-21 Kazu Hirata <kazu@hxi.com>
2592 * ldmain.c: Fix formatting.
2593 * ldmisc.c: Likewise.
2594 * ldver.c: Likewise.
2595 * ldwrite.c: Likewise.
2597 2000-09-21 Alan Modra <alan@linuxcare.com.au>
2599 * ldwrite.c (clone_section): Silence gcc warnings.
2601 2000-09-20 Alan Modra <alan@linuxcare.com.au>
2603 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
2604 out of memory failure.
2606 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
2607 (clone_section): Handle out of memory failures. Rename var to
2608 avoid c++ reserved word.
2610 2000-09-18 Alan Modra <alan@linuxcare.com.au>
2612 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
2613 stub_name param to stub_sec_name.
2614 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
2616 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2618 * emultempl/m68kelf.em: New file.
2619 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
2620 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
2621 * Makefile.in: Regenerate.
2623 2000-09-15 Alan Modra <alan@linuxcare.com.au>
2625 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
2628 2000-09-13 Nick Clifton <nickc@redhat.com>
2630 * ldmain.c (multiple_definition): Disable relaxation if
2631 multiple symbol definitions are encountered - otherwise the
2632 linker could abort with an assertion failure.
2634 2000-09-10 Nick Clifton <nickc@redhat.com>
2636 * mri.c: Fix formatting.
2638 2000-09-07 H.J. Lu <hjl@gnu.org>
2640 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
2641 * configure: Rebuild.
2643 2000-09-07 H.J. Lu <hjl@gnu.org>
2645 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
2646 * Makefile.in: Rebuild.
2648 2000-09-07 Alan Modra <alan@linuxcare.com.au>
2650 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
2651 broken list handling. Create __start_SECNAME and __stop_SECNAME
2652 when no place-holder. Add some comments. Test both SEC_CODE and
2653 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
2654 Handle case where no output section statement created.
2656 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
2658 * configure.tgt (sh-*-linux*): Added.
2659 * Makefile.am: Added eshelf_linux and eshlelf_linux.
2660 * Makefile.in: Rebuilt.
2661 * emulparams/shelf_linux.sh: New file.
2662 * emulparams/shlelf_linux.sh: New file.
2664 2000-09-06 Alan Modra <alan@linuxcare.com.au>
2666 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2667 try shuffling sections when the orphan happens to be the place
2668 holder. Keep count of unique section names generated so we speed
2669 the search for a new name.
2671 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
2673 * configure: Rebuilt with new libtool.m4.
2675 2000-09-05 Nick Clifton <nickc@redhat.com>
2677 * Makefile.in: Regenerate.
2678 * aclocal.m4: Regenerate.
2679 * configure: Regenerate.
2680 * config.in: Regenerate.
2681 * po/ld.pot: Regenerate.
2683 * ldint.texinfo: Remove CVS revision marker - it foils local
2686 * emultempl/ticoff.em: Remove extraneous comma.
2688 2000-09-05 Alan Modra <alan@linuxcare.com.au>
2690 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
2691 to stub section flags.
2692 (hppa_for_each_input_file_wrapper): New.
2693 (hppa_lang_for_each_input_file): New.
2694 (lang_for_each_input_file): Define to call above.
2695 (multi_subspace): New.
2696 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
2697 (PARSE_AND_LIST_PROLOGUE): Define.
2698 (PARSE_AND_LIST_LONGOPTS): Define.
2699 (PARSE_AND_LIST_OPTIONS): Define.
2700 (PARSE_AND_LIST_ARGS_CASES): Define.
2701 (hppaelf_finish): Call elf32_hppa_set_gp.
2702 (hppaelf_set_output_arch): Remove.
2703 (LDEMUL_SET_OUTPUT_ARCH): Remove.
2705 * emulparams/hppalinux.sh (ELFSIZE): Define.
2707 (OTHER_READONLY_SECTIONS): Define.
2709 (GENERATE_SHLIB_SCRIPT): Define.
2711 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
2712 to const throughout. Change `void *' to `PTR' throughout.
2713 (lang_memory_default): Function is local to file, add `static'.
2715 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
2716 (ehppalinux.c): Likewise.
2717 (earmelf.c): Likewise.
2718 (earmelf_linux.c): Likewise.
2719 (earmelf_linux26.c): Likewise.
2720 * Makefile.in: Regenerate.
2722 * ld.h (ld_config_type): Add unique_orphan_sections.
2723 * lexsup.c (OPTION_UNIQUE): Define.
2724 (ld_options): Add "--unique".
2725 (parse_args): Handle it.
2726 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2727 search for an existing output section if unique_orphan_sections is
2728 set. Make use of bfd_get_unique_section_name rather than
2729 duplicating code here.
2730 * ld.texinfo: Describe --unique.
2732 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
2733 optional arg to split-by-file.
2734 (parse_args): Handle them.
2735 * ld.texinfo: Update description of these options.
2736 * ldwrite.c (clone_section): Pass in the section name. Replace
2737 local code with bfd_get_unique_section_name.
2738 (split_sections): Tidy code and comments. Use a list traversal
2739 more appropriate to the list construction. Handle cooked section
2740 sizes. Split when split_by_reloc reached rather than exceeded.
2741 Track section size and split when split_by_file reached. Fix
2742 link_order_tail (even though it's not used).
2743 (ldwrite): Modify condition for calling split_sections to suit
2744 changed split_by_reloc and split_by_file.
2745 * ldmain.c (main): Init config.split_by_reloc and
2746 config.split_by_file to -1.
2747 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
2748 Change split_by_file to bfd_size_type.
2750 2000-09-02 Nick Clifton <nickc@redhat.com>
2752 * configure.in: Increase version number to 2.10.91.
2753 * NEWS: Mention new ability to support removal of duplicate DWARF2
2755 * configure: Regenerate.
2756 * aclocal.m4: Regenerate.
2757 * config.in: Regenerate.
2759 2000-09-02 Daniel Berlin <dberlin@redhat.com>
2761 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
2763 * scripttempl/elf32avr.sc: Ditto.
2764 * scripttempl/elfd10v.sc: Ditto.
2765 * scripttempl/elfd30v.sc: Ditto.
2766 * scripttempl/elfi370.sc: Ditto.
2767 * scripttempl/elfm68hc11.sc: Ditto.
2768 * scripttempl/elfm68hc12.sc: Ditto.
2769 * scripttempl/elfi386beos.sc: Ditto.
2770 * scripttempl/v850.sc: Ditto.
2772 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
2774 * acinclude.m4: Include libtool and gettext macros from the
2776 * aclocal.m4, configure: Rebuilt.
2778 2000-08-25 Nick Clifton <nickc@redhat.com>
2780 * ldlang.c (open_output): When choosing the target for a
2781 particular endianness, do nothing if the target is not
2784 2000-08-25 H.J. Lu <hjl@gnu.org>
2786 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
2787 check -rpath nor LD_RUN_PATH for cross link.
2788 * ld.texinfo: Document the change.
2790 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
2792 * NEWS: Mention support for CRIS.
2794 2000-08-23 H.J. Lu <hjl@gnu.org>
2796 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
2797 the current runpath list from bfd_elf_get_runpath_list ()
2800 2000-08-22 H.J. Lu <hjl@gnu.org>
2802 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
2803 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
2804 LD_LIBRARY_PATH for native linker. Display the needed DSO if
2805 trace_file_tries is non-zero.
2806 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
2807 if trace_file_tries is non-zero.
2809 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
2812 2000-08-14 Jason Eckhardt <jle@cygnus.com>
2814 * NEWS: Mention i860 support.
2816 2000-08-14 Andreas Schwab <schwab@suse.de>
2818 * scripttempl/elf.sc: Fix last change to use correct comment
2821 2000-08-10 Geoff Keating <geoffk@cygnus.com>
2823 * scripttempl/elf.sc: Add a comment giving the correspondence
2824 between sections, per-datum sections, and linkonce sections. Make
2825 the comment true even for .bss, .sdata, .sdata2, .sbss, and
2828 2000-08-10 Jason Eckhardt <jle@cygnus.com>
2830 * emulparams/elf32_i860.sh: New file.
2831 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
2832 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
2833 (eelf32_i860.c): New rule.
2834 * Makefile.in: Regenerate.
2836 2000-08-10 Nick Clifton <nickc@cygnus.com>
2838 * emulparams/mipspe.sh (ENTRY): Add definition.
2840 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
2842 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
2845 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2847 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
2848 the final size of .bss section.
2849 * scripttempl/elfm68hc12.sc: Likewise.
2851 2000-08-04 Alan Modra <alan@linuxcare.com.au>
2853 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
2854 gld${EMULATION_NAME}_parse_args for consistency. Combine
2855 lastoptind and prevoptind vars, and keep track of last optind.
2856 (gld_${EMULATION_NAME}_list_options): Rename to
2857 gld${EMULATION_NAME}_list_options.
2859 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
2861 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
2862 (i586-sco-sysv5uw7.1.0).
2864 2000-07-27 H.J. Lu <hjl@gnu.org>
2866 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
2867 (PARSE_AND_LIST_PROLOGUE): New.
2868 (PARSE_AND_LIST_LONGOPTS): Likewise.
2869 (PARSE_AND_LIST_OPTIONS): Likewise.
2870 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2871 (PARSE_AND_LIST_EPILOGUE): Likewise.
2873 2000-07-28 Alan Modra <alan@linuxcare.com.au>
2875 * emultempl/armelf.em: Elide functions common to elf32.em,
2876 ie. most of the file.
2877 (arm_elf_after_open): New. Do arm specific things then call
2878 gld${EMULATION_NAME}_after_open.
2879 (arm_elf_before_allocation): New. Call
2880 gld${EMULATION_NAME}_before_allocation then do arm specifics.
2881 (PARSE_AND_LIST_PROLOGUE): Define.
2882 (PARSE_AND_LIST_SHORTOPTS): Define.
2883 (PARSE_AND_LIST_LONGOPTS): Define.
2884 (PARSE_AND_LIST_OPTIONS): Define.
2885 (PARSE_AND_LIST_ARGS_CASES): Define.
2886 (LDEMUL_AFTER_OPEN): Define.
2887 (LDEMUL_BEFORE_ALLOCATION): Define.
2888 (LDEMUL_BEFORE_PARSE): Define.
2889 (LDEMUL_FINISH): Define.
2891 * emultempl/hppaelf.em: Similarly zap most of this file.
2892 (hppaelf_add_stub_section): Prototype.
2893 (hppaelf_layaout_sections_again): Prototype.
2894 (hook_in_stub): Prototype.
2895 (LDEMUL_SET_OUTPUT_ARCH): Define.
2896 (LDEMUL_FINISH): Define.
2897 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2899 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
2900 (EXTRA_EM_FILE): New.
2901 * emulparams/armelf_linux.sh: Likewise.
2902 * emulparams/armelf_linux26.sh: Likewise.
2903 * emulparams/hppalinux.sh: Likewise.
2904 * emulparams/hppaelf.sh: Likewise.
2907 * emultempl/elf32.em: Fix formatting.
2908 (EXTRA_EM_FILE): Source it.
2909 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
2910 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
2911 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
2912 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
2913 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
2914 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
2915 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
2916 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
2917 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
2918 allow functions in this file to be overridden.
2919 (PARSE_AND_LIST_SHORTOPTS): Handle it.
2921 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
2923 * emultempl/elf32.em: Reorganize file.
2925 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
2927 * emulparams/elf64alpha.sh: Implement "-taso" emulation
2928 specific option to fit 64-bit executable in the lower
2929 31-bit address range. This is done by changing start
2930 address of .interp (the very first section of executable)
2931 and then setting EF_ALPHA_32BIT elf header flag.
2933 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2935 * emultempl/m68kcoff.em: New file.
2936 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
2937 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
2939 * Makefile.in: Regenerate.
2941 2000-07-20 H.J. Lu <hjl@gnu.org>
2943 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
2944 and "disable-new-dtags" to stop getopt from treating -d/-e as
2945 abbreviations for these options.
2947 2000-07-20 H.J. Lu <hjl@gnu.org>
2949 * ld.texinfo: Add documentation for --disable-new-dtags and
2952 * ldmain.c (main): Initialize link_info.new_dtags to false.
2954 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
2955 --disable-new-dtags and --enable-new-dtags.
2956 (gld_${EMULATION_NAME}_list_options): Likewise.
2958 2000-07-05 Kenneth Block <krblock@computer.org>
2960 * lexsup.c: Add optional style to demangle switch
2961 * ld.texinfo: Document optional style to demangle switch.
2963 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
2965 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
2967 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
2968 Regenerate dependencies.
2969 * Makefile.in: Rebuild.
2970 * configure.tgt (cris-*-*): New target.
2971 * emulparams/crisaout.sh, emulparams/criself.sh,
2972 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
2973 * po/POTFILES.in, po/ld.pot: Regenerate.
2975 2000-07-20 H.J. Lu <hjl@gnu.org>
2977 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
2978 Print out ignored -z options.
2980 2000-07-19 H.J. Lu <hjl@gnu.org>
2982 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
2983 (PARSE_AND_LIST_PROLOGUE): New.
2984 (PARSE_AND_LIST_LONGOPTS): Likewise.
2985 (PARSE_AND_LIST_OPTIONS): Likewise.
2986 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2988 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
2990 * lexsup.c (ld_options): Comment out 'z'.
2991 (parse_args): Likewise.
2993 * emultempl/elf32.em: Include "elf/common.h".
2994 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
2996 (gld_${EMULATION_NAME}_list_options): Likewise.
2998 * ld.texinfo: Add documentation for the recognized -z options.
3000 2000-07-19 H.J. Lu <hjl@gnu.org>
3002 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
3003 bfd_elf_set_dt_needed_soname ().
3005 2000-07-18 DJ Delorie <dj@cygnus.com>
3007 * pe-dll.c (pe_dll_id_target): check object target name also
3009 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
3011 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
3012 ${INIT_END} if relocating.
3013 (.fini): Likewise ${FINI_START} and ${FINI_END}.
3015 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
3017 * emultempl/pe.em (gld_*_open_dynamic_archive): New search
3018 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
3019 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
3020 errors introduced by the old dynamic lib search order.
3022 2000-07-17 DJ Delorie <dj@cygnus.com>
3024 * pe-dll.c (process_def_file): auto-export data items also
3025 (pe_process_import_defs): also see if _imp_ form needed
3027 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
3029 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
3030 for dll import libraries
3032 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
3034 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
3035 gcc 2.95.2 and later.
3037 2000-07-11 Kazu Hirata <kazu@hxi.com>
3039 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
3042 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3044 * ldemul.h (struct lang_input_statement_struct): Remove forward
3046 (struct search_dirs): Likewise.
3047 * ldfile.h (struct lang_input_statement_struct): Likewise.
3048 Protect file from multiple inclusion.
3049 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
3050 declaration from macro to file scope.
3052 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
3053 * ldgram.y: Likewise here.
3054 * ldlang.c: And here.
3055 * ldmain.c: And here.
3056 * mpw-elfmips.c: And here.
3057 * mpw-eppcmac.c: And here.
3058 * emultempl/aix.em: And here.
3059 * emultempl/armcoff.em: And here.
3060 * emultempl/armelf.em: And here.
3061 * emultempl/armelf_oabi.em: And here.
3062 * emultempl/beos.em: And here.
3063 * emultempl/elf32.em: And here.
3064 * emultempl/hppaelf.em: And here.
3065 * emultempl/linux.em: And here.
3066 * emultempl/lnk960.em: And here.
3067 * emultempl/pe.em: And here.
3068 * emultempl/sunos.em: And here.
3069 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
3070 * mpw-idtmips.c: Ditto.
3071 * emultempl/generic.em: Ditto.
3072 * emultempl/gld960.em: Ditto.
3073 * emultempl/gld960c.em: Ditto.
3074 * emultempl/mipsecoff.em: Ditto.
3075 * emultempl/ticoff.em: Ditto.
3076 * emultempl/vanilla.em: Ditto.
3078 * pe-dll.c: Include ldfile.h
3079 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
3081 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
3082 arguments to bfd_elf32_size_dynamic_sections call.
3083 (gldelf32ebmip_place_orphan): Add missing arguments to
3084 lang_leave_output_section_statement call.
3086 2000-07-10 H.J. Lu <hjl@gnu.org>
3088 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
3090 (strhash): Likewise.
3091 (compute_dll_image_base): Likewise.
3092 (pe_undef_found_sym): Likewise.
3093 (pe_undef_cdecl_match): Likewise.
3094 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
3095 argument "arch" with ATTRIBUTE_UNUSED.
3097 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3099 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
3101 From Ryan Bradetich <rbradetich@uswest.net>
3102 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
3104 2000-07-09 Alan Modra <alan@linuxcare.com.au>
3106 Changes to create multiple linker stubs, positioned immediately
3107 before the section where they are required.
3108 * emultempl/hppaelf.em: Include elf32-hppa.h.
3109 (stub_sec, file_chain): Delete.
3110 (hppaelf_create_output_section_statements): Don't make a stub
3112 (hook_stub_info): New struct.
3113 (hook_in_stub): New function.
3114 (hppaelf_add_stub_section): New function.
3115 (hppaelf_finish): Do nothing for relocateable links. Modify the
3116 call to elf32_hppa_size_stubs. Move code for updating section
3118 (hppaelf_layaout_sections_again): ..to here, a new function.
3120 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
3121 broken list handling. Pass in a pointer to the list.
3122 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
3124 (hppaelf_before_parse): Prototype.
3125 (hppaelf_set_output_arch): Prototype.
3126 (hppaelf_create_output_section_statements): Prototype.
3127 (hppaelf_delete_padding_statements): Prototype.
3128 (hppaelf_finish): Prototype.
3131 * emultempl/hppaelf.em: Include ctype.h.
3132 (struct orphan_save): New.
3133 (gld${EMULATION_NAME}_place_orphan): New.
3134 (output_rel_find): New.
3135 (hppaelf_get_script): Update from elf32.em.
3136 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
3137 Change emulation_name field to "${EMULATION_NAME}". Add
3138 gld${EMULATION_NAME}_place_orphan.
3140 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
3141 ehppalinux.o, sort it. Regenerate dependencies.
3142 (ehppalinux.c): Depend on hppaelf.em
3143 * Makefile.in: Regenerate.
3145 * configure.tgt: targ_emul=hppalinux for hppa*linux
3147 * emulparams/hppalinux.sh: New.
3148 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
3150 2000-07-08 Alan Modra <alan@linuxcare.com.au>
3152 * lexsup.c (parse_args): Copy section name.
3154 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
3156 * emultempl/pe.em: institute the following search order for
3157 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
3158 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
3159 static lib (libfoo.a) if none of the above are found.
3161 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
3163 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
3164 (longopts): New --{enable,disable}-auto-image-base options.
3165 (gld_${EMULATION_NAME}_list_options): Document.
3166 (gld_${EMULATION_NAME}_parse): Handle.
3167 (strhash): New static function.
3168 (compute_dll_image_base): New static function.
3169 (gld_${EMULATION_NAME}_set_symbols): Use.
3171 2000-07-05 DJ Delorie <dj@redhat.com>
3175 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
3177 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
3178 * emulparams/elf32btsmip.sh: New file.
3179 * Makefile.am: Add traditional mips target.
3180 * Makefile.in: Rebuild.
3182 2000-07-01 H.J. Lu <hjl@gnu.org>
3184 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
3185 automake to use YLWRAP.
3186 * Makefile.in: Rebuild.
3188 2000-07-01 Alan Modra <alan@linuxcare.com.au>
3190 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
3191 (CLEANFILES): Add DEPA.
3192 * Makefile.in: Regenerate.
3194 2000-06-30 Timothy Wall <twall@ppc>
3196 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
3197 the page in the upper octet of the address.
3199 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
3201 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
3203 2000-06-24 Alan Modra <alan@linuxcare.com.au>
3205 * NEWS: arm-elf does --gc-sections too.
3207 2000-06-22 Alan Modra <alan@linuxcare.com.au>
3209 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
3211 * Makefile.in: Regenerate.
3213 2000-06-21 H.J. Lu <hjl@gnu.org>
3215 * Makefile.am: Rebuild dependency.
3216 * Makefile.in: Rebuild.
3218 2000-06-20 H.J. Lu <hjl@gnu.org>
3220 * Makefile.am: Rebuild dependency.
3221 * Makefile.in: Rebuild.
3223 2000-06-20 Timothy Wall <twall@cygnus.com>
3225 * scripttempl/tic54xcoff.sc: New.
3226 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
3227 * gen-doc.texi: Add flag for TI COFF.
3228 * ld.texinfo: Add documentation for TI COFF handling switches.
3229 * emultempl/ticoff.em: New. TI COFF handling.
3230 * configure.tgt: Add tic54x target.
3231 * Makefile.am: Add tic54x target.
3232 * Makefile.in: Ditto.
3234 2000-06-20 Alan Modra <alan@linuxcare.com.au>
3236 * ldmain.c (set_scripts_dir): Correct pointer comparison when
3237 checking for backslashes.
3239 2000-06-19 Alan Modra <alan@linuxcare.com.au>
3241 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
3243 2000-06-18 Alan Modra <alan@linuxcare.com.au>
3245 * NEWS: Update list of targets supporting --gc-sections.
3247 * scripttempl/elf.sc: KEEP .eh_frame contents.
3248 * scripttempl/elfd30v.sc: Same here.
3250 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
3252 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
3254 * Makefile.in: Rebuild.
3255 * configure.tgt: Recognize m68hc12 and m68hc11.
3256 * scripttempl/elfm68hc12.sc: New file.
3257 * emulparams/m68hc12elfb: New emulation.
3258 * emulparams/m68hc12elf: New emulation.
3259 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
3260 (includes a memory.x script to define the ROM and RAM banks).
3261 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
3262 New configuration files for support of Motorola 68hc11
3264 2000-06-15 Alan Modra <alan@linuxcare.com.au>
3266 * ldmain.c (main): Only change SEC_READONLY for final link.
3268 2000-06-13 H.J. Lu <hjl@gnu.org>
3270 * configure: Regenerate.
3272 2000-06-08 David O'Brien <obrien@FreeBSD.org>
3274 * configure.in (VERSION): Update to show this is the CVS mainline.
3276 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3278 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
3279 input objects to be ECOFF.
3280 (check_sections): einfo takes %B, not %P, to print a BFD name.
3282 2000-06-05 Michael Matz <matz@ifh.de>
3284 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
3287 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
3289 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
3291 * emulparams/avr1200.sh (STACK): Define as 0.
3292 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
3293 * emulparams/avr4433.sh (STACK): Likewise.
3294 * emulparams/avr44x4.sh (STACK): Likewise.
3295 * emulparams/avr85xx.sh (STACK): Likewise.
3296 * emulparams/avrmega103.sh (STACK): Likewise.
3297 * emulparams/avrmega161.sh (STACK): Likewise.
3298 * emulparams/avrmega603.sh (STACK): Likewise.
3299 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
3300 (__stack): Define from ${STACK} for main().
3302 2000-05-26 Alan Modra <alan@linuxcare.com.au>
3304 * Makefile.am: Update dependencies with "make dep-am"
3305 * Makefile.in: Regenerate.
3307 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
3309 * ldmain.c: Include filenames.h.
3310 (set_scripts_dir): Support backslashes in program name.
3312 2000-05-22 Igor Shevlyakov <igor@windriver.com>
3314 * ldmain.c (main): When deciding if ".text" section should be
3315 read-only, don't forget to reset SEC_READONLY because it
3316 could be already set.
3318 2000-05-22 Thomas de Lellis <tdel@windriver.com>
3320 * ld.1: Add documentation for new command line option:
3321 --section-start <sectionname>=<sectionorg>
3322 This is a generic version of -Ttext etc. which accepts
3323 any section name as a parameter instead of just text/data/
3325 * ld.texinfo: More docs.
3327 * lexsup.c: (parse_args): Recognize new command line option.
3328 (ld_options): Add new option.
3330 2000-05-18 H.J. Lu <hjl@gnu.org>
3332 * lexsup.c (parse_args): `i' == `r', not `q'.
3334 2000-05-18 Jeffrey A Law (law@cygnus.com)
3336 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
3338 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
3339 Rick Gorton <gorton@scrugs.lkg.dec.com>
3341 Add support for '-q' == '--emit-relocs' switch.
3342 * ldmain.c (main): Default to false.
3343 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
3344 * NEWS: Describe the emitrelocations switch.
3345 * ld.texinfo: Describe the emitrelocations switch.
3347 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
3349 * emultempl/pe.em (_open_dynamic_archive): New function: Search
3350 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
3351 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
3354 2000-05-15 David O'Brien <obrien@FreeBSD.org>
3356 * lexsup.c (parse_args): Update the year in the copyright notice.
3358 2000-05-13 Alan Modra <alan@linuxcare.com.au>
3360 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
3361 Replace defines with those from intl/libgettext.h to quieten gcc
3364 2000-05-10 H.J. Lu <hjl@gnu.org>
3366 * ldlang.c (open_input_bfds): Don't load the same file within
3367 a group again if the whole archive has been loaded already.
3369 2000-05-03 Alan Modra <alan@linuxcare.com.au>
3371 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
3372 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
3375 2000-05-01 Jim Wilson <wilson@cygnus.com>
3377 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
3379 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3380 host "ia64-*-linux-gnu*".
3382 2000-04-29 Andreas Jaeger <aj@suse.de>
3384 * ld.h: Correctly check GCC version.
3386 2000-04-25 Jeffrey A Law (law@cygnus.com)
3388 * Makefile.am: Add PA64 support. Add missing dependencies for
3390 * Makefile.in: Rebuilt.
3391 * configure.tgt: Add PA64 support (currently disabled).
3393 2000-04-25 Alan Modra <alan@linuxcare.com.au>
3395 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
3396 (output_rel_find): New function.
3397 (hold_section, hold_use): Delete.
3398 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3399 hold_interp): Make local to place_orphan.
3400 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
3401 rather than place_section to find possible previous use of orphan.
3402 Similarly find the place-holder output sections. Use returned
3403 value from lang_enter_output_section_statement rather than calling
3404 lang_output_section_statement_lookup.
3405 * emultempl/armelf.em: Same here.
3406 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
3408 * ldlang.c (lang_enter_output_section_statement): Return output
3410 * ldlang.h (lang_enter_output_section_statement): Change
3413 * ldlang.h (lang_output_section_statement): Export it.
3414 * ldlang.c (lang_output_section_statement): Ditto.
3416 2000-04-24 Nick Clifton <nickc@cygnus.com>
3418 * ld.texinfo (Output Section Data): Add note that section data
3419 commands cannot appear outside of section directives.
3421 2000-04-2 Matthew Green <mrg@cygnus.com>
3423 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
3425 2000-04-21 Richard Henderson <rth@cygnus.com>
3426 David Mosberger <davidm@hpl.hp.com>
3428 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
3429 (eelf64_ia64.c): New rule.
3430 * Makefile.in: Rebuild.
3431 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
3432 * emulparams/elf64_ia64.sh: New file.
3434 2000-04-21 Richard Henderson <rth@cygnus.com>
3436 * scripttempl/elfd30v.sc: Place .gcc_except_table.
3438 2000-04-19 Alan Modra <alan@linuxcare.com.au>
3440 * dep-in.sed: Match space at start of file name, not at end.
3442 2000-04-18 H.J. Lu <hjl@gnu.org>
3444 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
3445 lang_leave_output_section_statement () after calling
3446 lang_enter_output_section_statement ().
3447 * emultempl/armelf.em: Likewise.
3449 2000-04-18 Alan Modra <alan@linuxcare.com.au>
3451 * emultempl/elf32.em (struct orphan_save): Add section field.
3452 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
3453 better order, and place first orphan section as we did before the
3454 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
3455 Don't call make_bfd_section here, let wild_doit do the job for us.
3456 Don't build a statement list when we'll only throw it away.
3457 * emultempl/armelf.em: Ditto.
3458 * emultempl/pe.em: Similarly.
3460 2000-04-14 Geoff Keating <geoffk@cygnus.com>
3462 * scripttempl/elfppc.sc: Remove.
3463 * emulparams/elf32ppc.sh: Use elf.sc.
3464 * emulparams/elf32lppc.sh: Use elf.sc.
3465 * emulparams/elf32ppclinux.sh: Use elf.sc.
3466 * emulparams/elf32ppcsim.sh: New file.
3467 * emulparams/elf32lppcsim.sh: New file.
3468 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
3469 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
3470 * Makefile.in: Regenerate.
3471 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
3473 2000-04-14 Alan Modra <alan@linuxcare.com.au>
3475 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
3476 ~SEC_ALLOC sections too. Init start address of debug sections.
3477 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3478 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3479 Also set all relocateable section start addresses.
3481 2000-04-13 Geoff Keating <geoffk@cygnus.com>
3483 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
3484 Add new BSS_PLT variable for when .plt need not be contained in
3485 the file. Move _etext so that it is also after .fini, and provide
3486 both etext and _etext with a leading underscore. Mark the start
3489 2000-04-12 Alan Modra <alan@linuxcare.com.au>
3491 * emultempl/elf32.em (struct orphan_save): New.
3492 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3493 hold_interp): Make them struct orphan_save.
3494 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
3495 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
3496 the end of the relevant section list. Also add associated section
3497 statements to the end of any previous orphan statements.
3498 * emultempl/armelf.em: Similarly.
3499 * emultempl/pe.em: Similarly.
3501 2000-04-11 Alan Modra <alan@linuxcare.com.au>
3503 * ld.texinfo (Simple Example): Remove extraneous paragraph.
3505 2000-04-07 Andrew Cagney <cagney@b1.cygnus.com>
3507 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
3508 --enable-build-warnings option.
3509 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
3510 * Makefile.in, configure: Re-generate.
3512 2000-04-04 Alan Modra <alan@linuxcare.com.au>
3514 * po/ld.pot: Regenerate.
3516 * lexsup.c (help): Restore translated part of bug string.
3518 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
3519 (DEP): Quote when passing vars to sub-make. Add warning message
3521 (DEP1): Rewrite for "gcc -MM".
3522 (CLEANFILES): Add DEP2.
3523 Update dependencies.
3524 * Makefile.in: Regenerate.
3526 2000-04-03 Alan Modra <alan@linuxcare.com.au>
3528 * ld.h: #include "bin-bugs.h"
3529 * lexsup.c (help): Use REPORT_BUGS_TO.
3531 2000-03-27 Denis Chertykov <denisc@overta.ru>
3533 * configure.tgt (avr-*-*): New target support.
3534 * Makefile.am: Likewise.
3535 * scripttempl/elf32avr.sc: New script file.
3536 * emulparams/avr1200.sh: New file.
3537 * emulparams/avr23xx.sh: New file.
3538 * emulparams/avr4433.sh New file.
3539 * emulparams/avr44x4.sh New file.
3540 * emulparams/avr85xx.sh New file.
3541 * emulparams/avrmega103.sh New file.
3542 * emulparams/avrmega161.sh New file.
3543 * emulparams/avrmega603.sh New file.
3544 * Makefile.in: Regenerate.
3546 2000-03-09 Andreas Jaeger <aj@suse.de>
3548 * Makefile.am (check-DEJAGNU): Also unset LANG.
3549 * Makefile.in: Rebuild.
3551 2000-03-06 Ian Lance Taylor <ian@zembu.com>
3553 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
3556 2000-03-02 H.J. Lu <hjl@gnu.org>
3558 * emulparams/elf32mcore.sh: Include "getopt.h".
3560 2000-03-01 Ian Lance Taylor <ian@zembu.com>
3562 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
3564 2000-03-01 H.J. Lu <hjl@gnu.org>
3566 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
3567 * emulparams/shpe.sh: Likewise.
3569 2000-03-01 Nick Clifton <nickc@cygnus.com>
3571 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
3572 to unused parameters.
3574 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
3575 functions only used by DLL code.
3576 (_place_orphan): Initialise 'dollar'.
3578 2000-03-01 H.J. Lu <hjl@gnu.org>
3580 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
3581 indicate if the undefined symbol is a fatal error or not.
3582 Don't delete the output file if "fatal" is false.
3584 2000-02-29 H.J. Lu <hjl@gnu.org>
3586 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
3587 Set LC_COLLATE and LC_ALL to null and export them. It is for
3588 sort which expects the C locale.
3589 Add $(LIBS) to all $(HOSTING_LIBS).
3590 * Makefile.in: Rebuild.
3592 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
3594 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
3595 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
3596 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
3597 (ld_emulation_xfer_struct): Add missing NULL initialiser for
3598 find_potential_libraries.
3600 2000-02-28 Jim Blandy <jimb@redhat.com>
3602 * ldgram.y (exclude_name_list): Don't require a comma to separate
3603 list entries; the lexer considers commas to be valid part of a
3604 filename, so in something like `foo, bar' the comma is considered
3605 part of the first filename, `foo,'.
3606 * ld.texinfo: Update section on EXCLUDE_FILE lists.
3608 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
3610 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3611 host "i[3456]86-*-freebsdelf*".
3613 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
3615 * scripttempl/i386go32.sc: Move misplaced semicolons.
3617 2000-02-25 Ian Lance Taylor <ian@zembu.com>
3619 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
3620 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
3621 (eelf64hppa.c, ehppaelf.c): Remove targets.
3622 * Makefile.in: Rebuild.
3624 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3626 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
3627 GNU/Linux/sparc, but keep the default as 32.
3629 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
3630 it default if sparcv9 or sparc64.
3632 2000-02-24 Nick Clifton <nickc@cygnus.com>
3634 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
3635 * Makefile.in: Regenerate.
3636 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
3638 * ldemul.h (ld_emulation_xfer_struct): Add new field:
3639 find_potential_libraries.
3640 * ldemul.c (ldemul_find_potential_libraries): New function.
3642 * ldfile.c (ldfile_open_file_search): Allow function to be
3644 (ldfile_open_file): Call ldemul_find_potential_libraries.
3645 * ldfile.h: Add prototype for ldfile_open_file_search.
3647 * pe-dll.c: Add support for ARM, MIPS and SH targets.
3649 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
3650 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
3652 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
3653 (gld_X_find_potential_libraries): New function. Search for
3654 libraries called "*.lib".
3656 * scripttempl/pe.sc: Add .pdata section.
3658 2000-02-23 Richard Henderson <rth@cygnus.com>
3660 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
3661 Add and use memory regions.
3663 2000-02-23 Linas Vepstas (linas@linas.org)
3665 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
3667 * Makefile.am: Add support for Linux/IBM 370.
3668 * configure.tgt: Likewise.
3670 * Makefile.in: Regenerate.
3672 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
3674 * ldlang.c (print_input_section, print_data_statement,
3675 print_reloc_statement, print_padding_statement, insert_pad,
3676 size_input_section, lang_check_section_addresses,
3677 lang_size_sections, lang_do_assignments, lang_set_startof,
3678 lang_one_common): Change `opb' to unsigned.
3679 (lang_do_assignments): Also change `size' to unsigned.
3681 2000-02-16 Richard Henderson <rth@cygnus.com>
3683 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
3685 2000-02-16 Timothy Wall <twall@cygnus.com>
3687 * mri.c (mri_draw_tree): Add default LMA region argument to call
3688 to lang_leave_output_section_statement.
3689 * ldlang.h: Update prototypes with LMA region arguments.
3690 * ldlang.c (lang_size_sections): Encapsulate region bounds
3691 checking in os_check_region call.
3692 (os_check_region): New function.
3693 (lang_output_section_statement_lookup): Initialize lma_region.
3694 (lang_leave_output_section_statement): Add LMA region argument.
3695 (lang_leave_overlay): Ditto.
3696 * ldgram.y: Handle LMA region syntax.
3697 * ld.texinfo (Output Section Description): Describe LMA region usage.
3698 * emultempl/armelf.em (gld$place_orphan): Add default value for
3699 lma region in call to lang_leave_output_section_statement.
3700 * emultempl/elf32.em (gld$place_orphan): Add default value for
3701 lma region in call to lang_leave_output_section_statement.
3702 * emultempl/pe.em (gld$place_orphan): Add default value for
3703 lma region in call to lang_leave_output_section_statement.
3706 2000-02-04 Timothy Wall <twall@redhat.com>
3708 * ldlang.c (lang_check_section_addresses): Use bytes instead of
3709 octets when calculating section end addresses.
3711 2000-02-04 Timothy Wall <twall@redhat.com>
3713 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
3715 2000-02-03 Timothy Wall <twall@redhat.com>
3717 * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
3719 * ldlang.c (print_input_section, print_data_statement,
3720 print_reloc_statement, print_padding_statement): Print target
3721 address values and section sizes as bytes, not octets.
3722 (insert_pad) Calculate padding size in octets, and adjust "dot"
3724 (size_input_section) Always adjust "dot" by bytes, not octets.
3725 (lang_check_section_addresses, lang_do_assignments) Adjust
3726 "dot" by bytes, not octets. Use the larger of the directive size
3727 or octets_per_byte for the number of octets actually allocated in
3729 (lang_set_startof) Make sure STARTOF returns a target address.
3730 (lang_one_common) Record size changes in octets.
3731 (lang_abs_symbol_at_end_of) Section end symbol's value is
3732 recorded in target bytes.
3733 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
3734 to be clear about behavior when an octet is smaller than one byte.
3736 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
3738 * ldcref.c (output_cref): Don't pass message strings to printf
3742 * ldmisc.c (vfinfo): Same here.
3745 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
3747 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
3748 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
3749 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
3750 Add missing NULL initialisers, and comments.
3752 * testsuite/ld-srec/sr3.cc (__rethrow): New.
3754 2000-01-21 Nick Clifton <nickc@cygnus.com>
3756 * ldlang.c (lang_size_sections): Fix typo in comment.
3758 2000-01-18 H.J. Lu <hjl@gnu.org>
3760 * ldlang.c (lang_size_sections): Also update the current
3761 address of a region if the SEC_NEVER_LOAD bit is not set.
3763 2000-01-10 Philip Blundell <pb@futuretv.com>
3765 * configure.tgt (arm*-*-conix*): New target.
3767 2000-01-07 Nick Clifton <nickc@cygnus.com>
3769 * ld.texinfo (Options): Remind users to preceed linker command
3770 line switches with -Wl, (or whatever is appropriate) if it is
3771 being invoked by a comnpiler driver program.
3772 Fix description of the behaviour of the -n command line switch.
3774 2000-01-05 Catherine Moore <clm@cygnus.com>
3776 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
3778 * ld.texinfo (EXCLUDE_FILE): Update documentation.
3779 * ldgram.y (wildcard_spec): Support a list of excluded_files.
3780 (exclude_name_list): New.
3781 ldlang.c (walk_wild_section): Support list of excluded files.
3782 (print_wild_statement): Likewise.
3783 (lang_add_wild): Likewise.
3784 * ldlang.h (lang_wild_statement_type): Likewise.
3785 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
3787 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
3789 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
3790 (process_def_file): Use.
3791 (pe_dll_compat_implib): New variable.
3794 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
3795 pe_dll_compat_implib.
3797 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
3798 compat-implib options.
3799 (gld_${EMULATION_NAME}_list_options): List new options.
3800 (gld_${EMULATION_NAME}_parse_args): Handle.
3802 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
3805 * deffilep.y (opt_name): Allow "." in name.
3807 For older changes see ChangeLog-9899
3813 version-control: never