include/
[binutils.git] / ld / ChangeLog
blob6caf17bd9cf185403a36e6c75b99373db910f366
1 2004-09-17  Alan Modra  <amodra@bigpond.net.au>
3         * ldexp.c (fold_name): Update u.undef.next refs.
4         * emultempl/pe.em: Likewise.
5         * emultempl/sunos.em: Likewise.
7 2004-09-17  Alan Modra  <amodra@bigpond.net.au>
9         * Makefile.am: Run "make dep-am".
10         * Makefile.in: Regenerate.
11         * config.in: Regenerate.
12         * configure: Regenerate.
13         * aclocal.m4: Regenerate.
14         * po/ld.pot: Regenerate.
16 2004-09-16  Tomer Levi  <Tomer.Levi@nsc.com>
18         * scripttempl/elf32crx.sc (.init): Add KEEP for section's *personality*.
19         (.fini): Likewise.
20         (.jcr): Likewise.
22 2004-09-16  Alan Modra  <amodra@bigpond.net.au>
24         * emultempl/armelf_oabi.em (before_allocation): Add extra zero param
25         to bfd_elf32_arm_process_before_allocation call.
27 2004-09-13  Paul Brook  <paul@codesourcery.com>
29         * emulparams/armsymbian.sh: Set TARGET1_IS_REL.
30         * emultempl/armelf.em: Use TARGET1_IS_REL.  Add --target1-{rel,abs}.
32 2004-09-07  H.J. Lu  <hongjiu.lu@intel.com>
34         * configure: Regenerated with autconfig 2.13.
36 2004-09-07  Andreas Schwab  <schwab@suse.de>
38         * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: Apply data segment
39         alignment before adjusting DATA_SEGMENT_RELRO_END.
41 2004-09-06  Mark Mitchell  <mark@codesourcery.com>
43         * emulparams/armsymbian.sh: Use armbpabi script.
44         * scripttempl/armbpabi.sc: New script.
46 2004-09-02  Mark Mitchell  <mark@codesourcery.com>
48         * Makefile.am (ALL_EMULATIONS): Add earmsymbian.o.
49         (earmsymbian.c): New target.
50         * configure.tgt: Use armsymbian emulation for arm*-*-symbianelf*.
51         * Makefile.in: Regenerated.
52         * aclocal.m4: Likewise.
53         * configure: Likewise.
54         * emulparams/armsymbian.sh: New file.
56 2004-09-03  Tomer Levi  <Tomer.Levi@nsc.com>
58         * scripttempl/elf32crx.sc: Edit file with comments.
59         (.init): Add new section.
60         (.fini): Likewise.
61         (.ctor): Control the linkage order.
62         (.dtor): Likewise.
64 2004-08-27  Nick Clifton  <nickc@redhat.com>
66         * emultempl/pe.em (after_open): Do not assume that either bfd is
67         an archive.
69 2004-08-26  Alan Modra  <amodra@bigpond.net.au>
71         * ldlang.c (lang_init): Don't compare with TRUE.
73 2004-08-25  Dmitry Diky  <diwil@spec.ru>
75         * emulparams/msp430all.sh: Fix RAM sizes for all targets.
76         * scripttempl/elf32msp430.sc: Add .profiler section definition.
78 2004-08-24  H.J. Lu  <hongjiu.lu@intel.com>
80         * ldlang.c (wildcardp): Defined as a macro with strpbrk.
82 2004-08-19  Mark Mitchell  <mark@codesourcery.com>
84         * configure.tgt (arm*-*-symbianelf*): New target.
85         (arm*-*-eabi*): Likewise.
87 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
89         * emultempl/ppc64elf.em (non_overlapping_opd): New variable.
90         (ppc_before_allocation): Pass it to ppc64_elf_edit_opd).
91         (OPTION_NON_OVERLAPPING_OPD): Define.
92         (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Add
93         --non-overlapping-opd option.
95 2004-08-18  Alan Modra  <amodra@bigpond.net.au>
97         PR 338
98         * ldexp.c (fold_name): Don't call bfd_link_add_undef if the symbol
99         was already on the undefs list.
101 2004-08-17  Alan Modra  <amodra@bigpond.net.au>
103         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Dot
104         prefix the symbol field too.
106 2004-08-13  Alan Modra  <amodra@bigpond.net.au>
108         * ldmain.c (link_callbacks): Remove "error_handler".
109         * ldmisc.c: Include elf-bfd.h.
110         (vfinfo): Sort comment.  Handle %A.  Use %A instead of
111         bfd_get_section_indent.
112         (error_handler): Delete.
113         * ldmisc.h (error_handler): Delete declaration.
115 2004-08-10  Alan Modra  <amodra@bigpond.net.au>
117         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Call
118         ppc64_elf_restore_symbols.
120 2004-08-09  Alan Modra  <amodra@bigpond.net.au>
122         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Error if
123         .toc is too large on relocatable linking.
125 2004-08-09  Alan Modra  <amodra@bigpond.net.au>
127         * emultempl/ppc64elf.em (ppc_after_open): Delete.
128         (LDEMUL_AFTER_OPEN): Don't define.
130 2004-08-02  Stephane Carrez  <stcarrez@nerim.fr>
132         * ld.texinfo (Top): Document specific options of 68HC11 and 68HC12.
134 2004-08-01  Stephane Carrez  <stcarrez@nerim.fr>
136         * scripttempl/elfm68hc12.sc: Align text, rodata and data section
137         on power of 2.
139 2004-07-27  Jason Thorpe  <thorpej@wasabisystems.com>
141         * emulparams/hppanbsd.sh (OUTPUT_FORMAT): Set to "elf32-hppa-netbsd".
143 2004-07-26  Dmitry Diky  <diwil@spec.ru>
145         * Makefile.am: Add new subtargets: msp430x1610, msp430x1611,
146         msp430x1612, msp430x415, msp430x417, msp430xG437, msp430xG438,
147         msp430xG439.
148         * configure.tgt: Likewise.
149         * emulparams/msp430all.sh: Likewise.
150         * Makefile.in: Regenerate.
152 2004-07-23  Nick Clifton  <nickc@redhat.com>
154         * emultempl/elf32.em (_place_orphan): Use an already existing
155         section name if that section does not have any flags set.
157 2004-07-21  H.J. Lu  <hongjiu.lu@intel.com>
159         * ldlang.c (already_linked_hash_entry): Removed.
160         (already_linked): Likewise.
161         (already_linked_table): Likewise.
162         (section_already_linked): Call bfd_section_already_linked.
163         (lang_process): Replace already_linked_table_init with
164         bfd_section_already_linked_table_init and check return. Replace
165         already_linked_table_free with bfd_section_already_linked_table_free.
167 2004-07-21  Nick Clifton  <nickc@redhat.com>
169         * ldlang.c (init_os): Make sure that the newly allocated userdata
170         structure is zeroed out.
172 2004-07-19  H.J. Lu  <hongjiu.lu@intel.com>
174         * NEWS: Mention the new --add-needed/--no-add-needed and
175         --as-needed/--no-as-needed options.
177 2004-07-19  H.J. Lu  <hongjiu.lu@intel.com>
179         * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): Also
180         check the add_needed field.
181         (dt_needed): New struct.
182         (gld${EMULATION_NAME}_try_needed): Change the first argument
183         to a pointer to struct dt_needed. Check the DYN_NO_ADD_NEEDED
184         bit in the file where the DT_NEEDED entry comes from.
185         (gld${EMULATION_NAME}_search_needed): Change the second
186         argument to a pointer to struct dt_needed.
187         (gld${EMULATION_NAME}_check_ld_so_conf): Updated.
188         (gld${EMULATION_NAME}_after_open): Likewise.
190         * ld.texinfo: Add --add-needed document.
191         * ldlang.c (new_afile): Set p->add_needed.
192         * ldlang.h (lang_input_statement_type): Add add_needed field.
193         * ldmain.h (add_needed): Declare.
194         * ldmain.c (add_needed): New global var.
195         * lexsup.c (option_values): Add OPTION_ADD_NEEDED and
196         OPTION_NO_ADD_NEEDED.
197         (ld_options): Likewise.
198         (parse_args): Handle them.
200 2004-07-13  Christof Petig  <christof@petig-baender.de>
202         * emultempl/pe.em (make_import_fixup): Use bfd_get_32 to correct
203         for endian-ness of extracted addend.
205 2004-07-13  Danny Smith  <dannysmith@usesr.sourceforge.net>
207         * pe-dll.c (auto_export):  Filter on just the import prefix,
208         "_imp_", not "_imp__".
210 2004-07-09  Nick Clifton  <nickc@redhat.com>
212         * configure.tgt: Change sh-sybmian-elf to sh-*-symbianelf.
214 2004-07-06  Tomer Levi  <Tomer.Levi@nsc.com>
216         * Makefile.am (ALL_EMULATIONS): Add eelf32crx.o.
217         (eelf32crx.c): New target.
218         * Makefile.in: Regenerate.
219         * configure.tgt: Handle crx-*-elf*.
220         * emulparams/elf32crx.sh: New file.
221         * emultempl/crxelf.em: New file.
222         * scripttempl/elf32crx.sc: New file.
223         * NEWS: Mention new target.
225 2004-07-06  Nick Clifton  <nickc@redhat.com>
227         * Makefile.am: Add eshlsymbian.c.
228         * Makefile.in: Regenerate.
229         * configure.tgt: Add sh*-symbian-elf target.
230         * emulparams/shlsymbian.sh: New file.  Configure the
231         sh-symbian-elf linker scripts.
232         * scripttemp/elf32sh-symbian.sc: New file.  Linker script
233         template for the sh-symbian-elf target.
235 2004-07-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
237         * emulparams/hppa64linux.sh: Define PLT_BEFORE_GOT.
238         * emulparams/hppalinux.sh: Likewise.
239         * scripttempl/elf.sc: Place .plt just before .got when .plt is in
240         data segment and PLT_BEFORE_GOT is defined.
242 2004-07-03  Aaron W. LaFramboise  <aaron98wiridge9@aaronwl.com>
244         * ld.texinfo (WIN32): Document PE weak symbols.
246 2004-07-02  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
248         * emulparams/shlelf32_linux.sh (COMMONPAGESIZE): Set to 4KB.
250 2004-07-01  H.J. Lu  <hongjiu.lu@intel.com>
252         * ldmisc.c (vfinfo): Call bfd_get_section_ident to identify
253         the section.
255 2004-06-29  Alan Modra  <amodra@bigpond.net.au>
257         * ldlang.c (lang_reset_memory_regions): Save last relax pass section
258         size in rawsize.
260 2004-06-24  Alan Modra  <amodra@bigpond.net.au>
262         * ldlang.c (print_output_section_statement): Don't print size before
263         relaxation.
264         (IGNORE_SECTION): Remove bfd arg.  Update all callers.
266         * ldexp.c (fold_name): .. See below.
267         * ldlang.c (section_already_linked, print_output_section_statement,
268         print_input_section, insert_pad, size_input_section,
269         lang_check_section_addresses, lang_size_sections_1,
270         lang_size_sections, lang_do_assignments_1, lang_set_startof,
271         lang_one_common, lang_reset_memory_regions, lang_process,
272         lang_abs_symbol_at_end_of, lang_do_version_exports_section): ..
273         * ldwrite.c (build_link_order, clone_section, ds, split_sections): ..
274         * pe-dll.c (process_def_file, generate_reloc): ..
275         * emultempl/elf32.em (gld${EMULATION_NAME}_find_statement_assignment,
276         gld${EMULATION_NAME}_before_allocation): ..
277         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): ..
278         * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation,
279         sh64_elf_${EMULATION_NAME}_after_allocation): ..
280         * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): ..
281         * emultempl/xtensaelf.em (ld_assign_relative_paged_dot,
282         ld_local_file_relocations_fit, ld_xtensa_insert_page_offsets): Use
283         "size" instead of "_raw_size" and "_cooked_size".  Expand
284         bfd_section_size macro invocations.
286 2004-06-22  Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
288         * ld/scripttemp/pe.sc (.CRT): Define ___crt_xc_start__,
289         ___crt_xc_end__, ___crt_xi_start__, ___crt_xi_end__, ___crt_xl_start__,
290         ___crt_xp_start__, ___crt_xp_end__, ___crt_xt_start__ and
291         ___crt_xt_end__.
292         (.tls): Define ___tls_start__ and ___tls_end__.
294 2004-06-21  Alexandre Oliva  <aoliva@redhat.com>
296         * emulparams/elf32frvfd.sh (GENERATE_PIE_SCRIPT): Set to yes.
298 2004-06-18  Adam Nemet  <anemet@lnxw.com>
300         * configure.in: Set EXTRA_SHLIB_EXTENSION to .a for LynxOS.
301         * configure: Regenerate.
303 2004-06-15  Jakub Jelinek  <jakub@redhat.com>
305         * scripttempl/elf.sc: Readd KEEP and .gcc_except_table.* to
306         .gcc_except_table output sections lost accidentally with
307         -z relro patch.
309 2004-06-15  Alan Modra  <amodra@bigpond.net.au>
311         * ldwrite.c (build_link_order): Use bfd_get_section_size
312         instead of bfd_get_section_size_before_reloc or _raw_size.
313         * pe-dll.c (process_def_file): Likewise.
315 2004-06-14  Alan Modra  <amodra@bigpond.net.au>
317         From Richard Wirth <r.wirth@wirthware.de>
318         * ldlang.c (lang_finish): Don't free lang_definedness_table.
320 2004-05-29  Alan Modra  <amodra@bigpond.net.au>
322         * ldlang.c (gc_section_callback): Move SEC_EXCLUDE twiddles..
323         (lang_gc_sections): .. to a LANG_FOR_EACH_INPUT_STATEMENT loop here.
325 2004-05-28  Andrew Stubbs <andrew.stubbs@superh.com>
327         * testsuite/ld-sh/arch/arch.exp: New test script.
328         * testsuite/ld-sh/arch/arch_expected.txt: New file.
329         * testsuite/ld-sh/arch/sh.s: New file.
330         * testsuite/ld-sh/arch/sh2.s: New file.
331         * testsuite/ld-sh/arch/sh-dsp.s: New file.
332         * testsuite/ld-sh/arch/sh2e.s: New file.
333         * testsuite/ld-sh/arch/sh3-nommu.s: New file.
334         * testsuite/ld-sh/arch/sh3.s: New file.
335         * testsuite/ld-sh/arch/sh3-dsp.s: New file.
336         * testsuite/ld-sh/arch/sh3e.s: New file.
337         * testsuite/ld-sh/arch/sh4-nommu-nofpu.s: New file.
338         * testsuite/ld-sh/arch/sh4-nofpu.s: New file.
339         * testsuite/ld-sh/arch/sh4.s: New file.
340         * testsuite/ld-sh/arch/sh4a-nofpu.s: New file.
341         * testsuite/ld-sh/arch/sh4al-dsp.s: New file.
342         * testsuite/ld-sh/arch/sh4a.s: New file.
344 2004-05-28  Alan Modra  <amodra@bigpond.net.au>
346         * ldlang.c: Formatting.  Wrap long lines, expand bfd_get_section_flags
347         throughout file.
348         * lexsup.c: Formatting.  Wrap long lines.
349         * ldwrite.c: Update copyright date.
351         * ldlang.c (lang_add_section): Don't twidlle SEC_EXCLUDE here.
352         (output_section_callback): Nor SEC_KEEP here.
353         (gc_section_callback): Twiddle SEC_EXCLUDE here.
354         (lang_gc_wild): Delete.  Fold into..
355         (lang_gc_sections_1): ..here.  Only call bfd_gc_sections when garbage
356         collecting.
357         (lang_process): Always call lang_gc_sections.
358         (lang_place_orphans): Handle SEC_EXCLUDE sections.
359         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Remove
360         SEC_EXCLUDE code.
362 2004-05-26  H.J. Lu  <hongjiu.lu@intel.com>
364         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Clear
365         SEC_EXCLUDE on non-SEC_DEBUGGING sections for relocatable link.
366         * ldlang.c (lang_add_section): Likewise.
368 2004-05-26  Alan Modra  <amodra@bigpond.net.au>
370         * ldlang.c (lang_add_section): Set SEC_EXCLUDE for SEC_GROUP
371         sections when doing a final link.  Clear SEC_EXCLUDE when doing
372         a relocable link, except for SEC_DEBUGGING sections.
373         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Use the
374         same condition here to drop SEC_EXCLUDE orphan sections.
376 2004-05-25  Alan Modra  <amodra@bigpond.net.au>
378         * ldlang.c (lang_process): Call bfd_merge_sections later, and
379         only when not a relocatable link.
380         (print_input_section): Handle SEC_EXCLUDE sections.
381         (size_input_section): Don't update dot on SEC_EXCLUDE sections.
382         (lang_do_assignments_1): Likewise.
383         * ldwrite.c (build_link_order): Ignore SEC_EXCLUDE input sections.
384         * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Likewise.
385         * emultempl/hppaelf.em (build_section_lists): Likewise.
386         * emultempl/ppc64elf.em (build_toc_list): Likewise.
387         (build_section_lists): Likewise.
389 2004-05-23  Andreas Schwab  <schwab@suse.de>
391         * ld.texinfo (Options): Fix typo in last change.
393 2004-05-21  Andy Chittenden  <achittenden@bluearc.com>
395         * ld.h (ld_config_type): Add new field: hash_table_size.
396         * ldmain.c: Initialise the new field to zero.  If it is non-zero
397         after parsing the linker's command line call
398         bfd_hash_set_default_size.
399         * lexsup.c (option_values): Add OPTION_HASH_SIZE.
400         (ld_options): Add hash-size.
401         (parse_args): Parse --hash-size option.  Allow
402         --reduce-memory-overheads to set the default hash table size as
403         well.
404         * ld.texinfo: Document the new switch.  Also mention that
405         --reduce-memory-overheads can affect the hash table size.
406         * NEWS: Mention the new feature.
408 2004-05-19  J"orn Rennecke <joern.rennecke@superh.com>
410         * NEWS: Mention new linker map file generation and the
411         --reduce-memory-overheads option.
412         * ld.texinfo: Document --reduce-memory-overheads option.
413         * ld.h (map_symbol_def): New struct.
414         (struct user_section_struct, section_userdata_type): Rename to:
415         (struct lean_user_section_struct, lean_section_userdata_type).
416         (struct fat_user_section_struct, fat_section_userdata_type): New.
417         (SECTION_USERDATA_SIZE): Define.
418         (args_type): New member reduce_memory_overheads.
419         * ldlang.c (map_obstack): New static variable.
420         (init_map_userdata, print_all_symbols, sort_def_symbol): New functions.
421         (lang_map): Unless command_line.reduce_memory_overheads is set,
422         initialize lists of defined symbols for each section.
423         (print_input_section): Unless command_line.reduce_memory_overheads
424         is set, use print_all_symbols.
425         (init_os): Use lean_section_userdata_type / SECTION_USERDATA_SIZE.
426         * ldmain.c (main): Initialize command_line.reduce_memory_overheads.
427         * lexsup.c (enum option_values): Add OPTION_REDUCE_MEMORY_OVERHEADS.
428         (ld_options): Add entry for --reduce-memory-overheads.
429         (parse_args): Handle OPTION_REDUCE_MEMORY_OVERHEADS.
431 2004-05-19  Jakub Jelinek  <jakub@redhat.com>
433         * ldgram.y (sect_constraint): New.
434         (ONLY_IF_RO, ONLY_IF_RW): New tokens.
435         (section): Add sect_constraint.  Pass additional argument
436         to lang_enter_output_section_statement.
437         * mri.c (mri_draw_tree): Pass additional argument to
438         lang_enter_output_section_statement.
439         * emultempl/pe.em (place_orphan): Likewise.
440         (output_prev_sec_find): Disregard output section statements with
441         constraint == -1.
442         * emultempl/mmo.em (output_prev_sec_find): Likewise.
443         (mmo_place_orphan): Pass additional argument to
444         lang_enter_output_section_statement.
445         * emultempl/elf32.em (output_prev_sec_find): Disregard output section
446         statements with constraint == -1.
447         (place_orphan): Pass additional argument to
448         lang_enter_output_section_statement.
449         * ldlang.c (lang_enter_overlay_section): Likewise.
450         (lang_output_section_find_1): New.
451         (lang_output_section_find): Use it.
452         (lang_output_section_statement_lookup_1): New.
453         (lang_output_section_statement_lookup): Use it.
454         (check_section_callback, check_input_sections): New.
455         (map_input_to_output_sections): Check if all input sections
456         are readonly if ONLY_IF_RO or ONLY_IF_RW was seen.
457         (strip_excluded_output_sections): Disregard output section statements
458         with constraint == -1.
459         (lang_record_phdrs): Likewise.
460         (lang_enter_output_section_statement): Add constraint argument.
461         Use lang_output_section_statement_lookup_1.
462         * ldlang.h (lang_output_section_statement_type): Add constraint
463         and all_input_readonly fields.
464         (lang_enter_output_section_statement): Adjust prototype.
465         * ldlex.l (ONLY_IF_RO, ONLY_IF_RW): New tokens.
466         * scripttempl/elf.sc (.eh_frame, .gcc_except_table): Move into text
467         segment if all input sections are readonly.
469 2004-05-19  Adam Nemet  <anemet@lnxw.com>
471         * scripttempl/i386lynx.sc: Remove file.
473 2004-05-17  Bob Wilson  <bob.wilson@acm.org>
475         * ld.texinfo (Output Section Address): Correct subsection name.
477 2004-05-17  Adam Nemet  <anemet@lnxw.com>
479         * configure.tgt (powerpc-*-lynxos* case): New case.
480         * configure.host (i[3-7]86-*-lynxos* case): Remove case.
481         * emulparams/ppclynx.sh: New file.
482         * emulparams/i386lynx.sh (SCRIPT_NAME): Update to LynxOS 4.0.
483         * Makefile.am (ALL_EMULATIONS): Add eppclynx.o
484         (ei386lynx.c): Update rule to LynxOS 4.0 ELF.
485         (eppclynx.c): New rule.
486         * Makefile.in: Regenerate.
488 2004-05-13  Joel Sherrill <joel@oarcorp.com>
490         * configure.tgt (or32-*-rtems*): Switch to elf and
491         support versioned targets.
493 2004-05-13  Nick Clifton  <nickc@redhat.com>
495         * po/fr.po: Updated French translation.
497 2004-05-11  Jakub Jelinek  <jakub@redhat.com>
499         * genscripts.sh: Generate -z combreloc -z now -z relro scripts
500         for binaries, -shared and -pie.
501         * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set.
502         * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set.
503         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to...
504         (OTHER_RELRO_SECTIONS): ... this.
505         * ldlex.l (DATA_SEGMENT_RELRO_END): Add.
506         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
507         -z relro and -z norelro.
508         (gld${EMULATION_NAME}_list_options): Add it to usage.
509         (gld${EMULATION_NAME}_get_script): Return -z combreloc -z now
510         -z relro scripts when appropriate.
511         * scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set.
512         Create separate .got.plt section if SEPARATE_GOTPLT.
513         Move sections which are only written during relocation handling
514         to the beginning of RW segment.  If NO_SMALL_DATA, move .got
515         before .data.  Add DATA_SEGMENT_RELRO_END directive.
516         Include OTHER_RELRO_SECTIONS.
517         * ldgram.y (DATA_SEGMENT_RELRO_END): Add.
518         * ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END.
519         (fold_unary): Likewise.
520         (fold_binary): Handle -z relro.
521         * ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and
522         exp_dataseg_relro_adjust phases.  Add relro_end field.
523         * ldmain.c (main): Initialize link_info.relro to FALSE.
524         * ldlang.c (lang_size_sections): Handle -z relro.
526 2004-05-08  Marek Michalkiewicz  <marekm@amelek.gda.pl>
528         * scripttempl/avr.sc: Do not set LMA for "eeprom" section.
530 2004-05-07  J"orn Rennecke <joern.rennecke@superh.com>
532         * ldlang.c (print_padding_statement): Cast size_t to bfd_vma
533         before printing it with %W.
535 2004-05-07  Brian Ford  <ford@vss.fsi.com>
536             DJ Delorie  <dj@redhat.com>
538         * emultempl/pe.em (real_flags): New static.
539         (OPTION_LARGE_ADDRESS_AWARE): New define.
540         (gld${EMULATION_NAME}_add_options): Add --large-address-aware option.
541         (gld_${EMULATION_NAME}_list_options): Likewise.
542         (gld${EMULATION_NAME}_handle_option): Likewise.
543         (gld_${EMULATION_NAME}_after_open): Pass real_flags to PE private data.
544         * ld.texinfo: Document it.
545         * NEWS: Mention it.
547 2004-05-07  Brian Ford  <ford@vss.fsi.com>
549         * NEWS: Mention DWARF 2 support for i386pe.
551 2004-05-05  Alexandre Oliva  <aoliva@redhat.com>
553         * emulparams/elf32frvfd.sh (OUTPUT_FORMAT): Switch to new
554         elf32-frvfdpic.
556 2004-04-30  Alan Modra  <amodra@bigpond.net.au>
558         * ldlang.c (unique_section_p): Pass section parm, return true on
559         group sections.
560         (output_section_callback): Adjust.
561         * ldlang.h (unique_section_p): Update prototype.
562         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust.
564 2004-04-30  Eric Botcazou  <ebotcazou@act-europe.fr>
566         * ld.texinfo (--gc-sections): Remove restriction for
567         dynamic linking.
569 2004-04-29  Brian Ford  <ford@vss.fsi.com>
571         * scripttempl/pe.sc: Handle .debug* and .gnu.linkonce.wi.* sections
572         for DWARF 2/3.  Update stab section's syntax.
574 2004-04-29  Alan Modra  <amodra@bigpond.net.au>
576         * pe-dll.c: Revert changes accidentally committed 2004-03-08.
577         (fill_edata): Correct pointer arithmetic.
579 2004-04-21  Chris Demetriou  <cgd@broadcom.com>
581         * ld.texinfo: Remove MIPS --embedded-relocs documentation.
582         * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Remove definition.
583         * emulparams/mipsidt.sh (TEMPLATE_NAME): Use generic.em.
584         (EXTRA_EM_FILE): Use mipsecoff.em
585         * emulparams/mipsidtl.sh (TEMPLATE_NAME): Use generic.em.
586         (EXTRA_EM_FILE): Use mipsecoff.em
587         * emultempl/mipsecoff.em: Restructure to be included as an
588         extra emulation file.
589         (check_sections, gld${EMULATION_NAME}_after_open)
590         (gld${EMULATION_NAME}_after_allocation)
591         (gld${EMULATION_NAME}_get_script)
592         (ld_${EMULATION_NAME}_emulation): Remove
593         (gld${EMULATION_NAME}_before_parse): Rename to...
594         (mipsecoff_before_parse): This.
595         (LDEMUL_BEFORE_PARSE): Define.
596         * emultempl/mipself.em: Remove file.
597         * scripttempl/mips.sc (.rel.sdata): Do not include in output.
598         (__runtime_reloc_start, __runtime_reloc_stop): Stop providing
599         these symbols.
600         * Makefile.am: Remove dependencies on emultempl/mipself.em.
601         * Makefile.in: Regenerate.
603 2004-04-21      Anil Paranjpe   <anilp1@kpitcummins.com>
605         * ld.texinfo (synthesizing on H8/300): Information about linker
606         relaxation support for bit manipulation instructions and system
607         control instructions is added.
609 2004-04-21  Hans-Peter Nilsson  <hp@axis.com>
611         * NEWS: Mention change in DEFINED semantics.
613 2004-04-21  Eric Botcazou  <ebotcazou@act-europe.fr>
615         * scripttempl/elf.sc (.text): Add KEEP for .text.*personality*.
616         (.data): Add KEEP for .gnu.linkonce.d.*personality*.
617         (.gcc_except_table): Add KEEP for self and accept .gcc_except_table.*.
619 2004-04-21  Ben Elliston  <bje@au.ibm.com>
621         * ld.texinfo (Simple Example): Add missing punctuation.
623 2004-04-20  Chris Demetriou  <cgd@broadcom.com>
625         * NEWS: Note that MIPS --embedded-relocs option is deprecated.
627 2004-04-19  Jakub Jelinek  <jakub@redhat.com>
629         * ldlang.c (lang_do_assignments_1): Handle .tbss output section
630         specially.
632 2004-04-18  Danny Smith  <dannysmith@users.sourceforge.net>
634         * scriptempl/pe.sc:  Put numbered .ctors.* after .ctors
635         with default priority. Likewise for dtors.
637 2004-04-11  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
639         * configure.host: Remove mips*-dec-bsd* target.
640         * configure.tgt: Likewise.
642 2004-04-08  Richard Sandiford  <rsandifo@redhat.com>
644         * emulparams/elf32bsmip.sh (EXTRA_EM_FILE): Define to irix.
645         * emulparams/elf64bmip.sh (EXTRA_EM_FILE): Likewise.
646         * emulparams/elf32bmipn32.sh (EXTRA_EM_FILE): Likewise.
647         * emultempl/irix.em: New file.
648         * Makefile.am (eelf32bsmip.c, eelf32bmipn32.c, eelf64bmip.c): Update
649         dependencies.
650         * Makefile.in: Regenerate.
652 2004-04-01  Paul Brook  <paul@codesourcery.com>
654         * emultempl/armelf.em (byteswap_code): Add.
655         (arm_elf_before_allocation): Pass extra parameter.
656         (PARSE_AND_LIST_PROLOGUE): Add OPTION_BE8.
657         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add be8.
658         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_BE8.
659         * emultempl/armelf_oabi.em: Pass extra parameter.
660         * ld.texinfo: Document --be8.
662 2004-03-30  Stan Shebs  <shebs@apple.com>
664         Remove long-obsolete MPW support.
665         * mpw-config.in, mpw-make.sed, mac-ld.r: Remove files.
666         * Makefile.am (mpw): Remove file-presynthesizing actions.
667         * Makefile.in: Likewise.
668         * ldfile.c (slash): Remove MPW case.
669         * ldlex.l [MPW]: Remove unused definition.
671 2004-03-30  Galit Heller  <Galit.Heller@nsc.com>
673         * Makefile.am (ALL_EMULATIONS): Add eelf32cr16c.o.
674         (eelf32cr16c.c): New target.
675         * Makefile.in: Regenerate.
676         * configure.tgt: Handle cr16c-*-elf*.
677         * emulparams/elf32cr16c.sh: New file.
678         * scripttempl/elfcr16c.sc: Likewise
679         * NEWS: Mention support for new target.
681 2004-03-30  Nick Clifton  <nickc@redhat.com>
683         * po/sv.po: Updated Swedish translation.
685 2004-03-27  Alan Modra  <amodra@bigpond.net.au>
687         * emultempl/elf32.em: Update new bfd_elf_discard_info name.
688         * emultempl/hppaelf.em: Likewise.
689         * emultempl/ppc64elf.em: Likewise.
690         * emultempl/sh64elf.em: Likewise.
692 2004-03-25  Alan Modra  <amodra@bigpond.net.au>
694         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Update
695         size_dynamic_sections call.
697 2004-03-23  Alan Modra  <amodra@bigpond.net.au>
699         PR 51.
700         * emultempl/ppc64elf.em (ppc_create_output_section_statements): Set
701         link_info.wrap_char.
703 2004-03-20  H.J. Lu  <hongjiu.lu@intel.com>
705         * lexsup.c (parse_args): Don't set unresolved_syms_in_objects
706         or unresolved_syms_in_shared_libs for -Bdynamic and -Bstatic.
708 2004-03-20  Alexandre Oliva  <aoliva@redhat.com>
710         * emulparams/elf32frvfd.sh (MAXPAGESIZE): Change to 16Kb.
712 2004-03-19  Alan Modra  <amodra@bigpond.net.au>
714         * config.in: Regenerate.
715         * po/ld.pot: Regenerate.
717 2004-03-18  Alan Modra  <amodra@bigpond.net.au>
719         * ld.texinfo: Add --as-needed doco.
720         * ldmain.c (as_needed): New global var.
721         * ldmain.h (as_needed): Declare.
722         * lexsup.c (option_values): Add OPTION_AS_NEEDED and
723         OPTION_NO_AS_NEEDED.
724         (ld_options): Likewise.
725         (parse_args): Handle them.
726         * ldlang.h (lang_input_statement_type): Add as_needed field.
727         * ldlang.c (new_afile): Set p->as_needed.
728         * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): New function.
729         (gld${EMULATION_NAME}_try_needed): Use bfd_elf_set_dyn_lib_class.
730         (ld_${EMULATION_NAME}_emulation): Set LDEMUL_RECOGNIZED_FILE entry.
732         * ldlang.c (open_input_bfds): Remove useless cast.
733         (lang_do_assignments_1): Likewise.
734         (lang_for_each_input_section): Delete.
736 2004-03-17  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
738         * configure.tgt: Switch sh-*-rtems* to ELF.  Add sh-*-rtemscoff*.
740 2004-03-08  Danny Smith  <dannysmith@users.sourceforge.net>
742         * pe-dll.c (pe_dll_generate_implib): Skip sections marked as
743         private when building implib.
745 2004-03-05  Nathan Sidwell  <nathan@codesourcery.com>
747         * ldlang.c (lang_add_section): Don't force SEC_LOAD on
748         SEC_THREAD_LOCAL.
749         (IGNORE_SECTION): Ignore .tbss sections too.
750         (lang_size_sections_1): .tbss sections do not advance dot.
752 2004-03-01  Andreas Schwab  <schwab@suse.de>
754         * ld.texinfo (Options): Fix example for --wrap.
756 2004-02-25  Danny Smith  <dannysmith@users.sourceforge.net>
758         * pe-dll.c (fill_edata): Check that exported_symbol_sections is
759         not NULL.
761 2004-02-23  Ian Lance Taylor  <ian@wasabisystems.com>
763         * ldlang.c (lang_check): Use %P, not %E, in error message.
765 2004-02-23  Nathan Sidwell  <nathan@codesourcery.com>
767         * ldlang.h (struct lang_output_section_state): Change processed
768         field's type.
769         * ldexp.c (check, invalid): Remove.
770         (fold_name): Move valid_p assignments. Create undefined symbol
771         when needed. Directly exampine section's processd flag.
772         * ldlang.c (lang_output_section_statement_lookup): Adjust
773         processed field init.
774         (lang_size_sections_1): Allow LOADADDR when determining section's
775         VMA. Adjust error message. Fold data statement's expr.
776         (lang_size_sections): Correctly increment lang_statement_iteration.
778 2004-02-23  Alan Modra <amodra@bigpond.net.au>
780         * ldexp.c (fold_tree): Follow indirect symbols.
782 2004-02-20  Nathan Sidwell  <nathan@codesourcery.com>
784         * ldgram.y (exp): Add two operand ALIGN.
785         * ldexp.c (fold_binary): Add ALIGN_K case.
786         * ld.texinfo (ALIGN): Document two operand version.
788 2004-02-19  Nathan Sidwell  <nathan@codesourcery.com>
790         * ldlang.c (map_input_to_output_sections): Initialize sections
791         mentioned in a data statement expression.
792         (lang_do_assignments_1): Add data statement's expression's
793         section's vma.
795 2004-02-18  Nathan Sidwell  <nathan@codesourcery.com>
797         * ldgram.y (statement_anywhere): Add assert rule.
798         * ldlang.c (exp_init_os): Add assert case.
800 2004-02-14  Andrew Cagney  <cagney@redhat.com>
802         * ldmain.c (remove_output): Call bfd_cache_close.
804 2004-02-14  Richard Sandiford  <rsandifo@redhat.com>
806         * emulparams/elf32bmipn32-defs.sh (OTHER_SECTIONS): Discard
807         .MIPS.content* and .MIPS.events* sections.
809 2004-02-09  Daniel Jacobowitz  <drow@mvista.com>
811         * emulparams/armelf.sh, emulparams/armelf_linux.sh: Move
812         .note.gnu.arm.ident to after allocated sections.  Mark its
813         address as 0.
815 2004-02-09  Daniel Jacobowitz  <drow@mvista.com>
817         * emulparams/armelf_linux.sh (COMMONPAGESIZE): Set to 4KB.
818         * emulparams/elf32bmip.sh (COMMONPAGESIZE): Likewise.
819         * emulparams/elf32bmipn32.sh (COMMONPAGESIZE): Likewise.
820         * emulparams/elf32btsmipn32.sh (COMMONPAGESIZE): Likewise.
821         * emulparams/shlelf_linux.sh (COMMONPAGESIZE): Likewise.
823 2004-02-05  Nick Clifton  <nickc@redhat.com>
825         * emultempl/pe.em (_after_open): Fix typo in previous delta.
827 2004-02-04  Danny Smith  <dannysmith@users.sourceforge.net>
829         * emultempl/pe.em (_after_open): Fix thinko in 2003-12-18 patch.
831 2004-01-28  Alan Modra  <amodra@bigpond.net.au>
833         * genscripts.sh: Fix typo.
835         * genscripts.sh: Apply $LIBPATH_SUFFIX to $tool_lib and $libdir too.
837 2004-01-24  Jakub Jelinek  <jakub@redhat.com>
839         * emulparams/elf64_ia64.sh: Put .rela.opd into
840         OTHER_GOT_RELOC_SECTIONS instead of OTHER_PLT_RELOC_SECTIONS.
842 2004-01-20  Danny Smith  <dannysmith@users.sourceforge.net>
844         * pe-dll.c (pe_create_import_fixup): Clear WP_TEXT flag.
845         * ld.texinfo (--omagic): Note that writable text section
846         does not conform to published PE-COFF specs.
847         (--enable-auto-import): Likewise.
849 2004-01-15  Alan Modra  <amodra@bigpond.net.au>
851         * emulparams/elf32ppc.sh (COMMONPAGESIZE): Define.
853 2004-01-13  Nick Clifton  <nickc@redhat.com>
855         * ldlang.c (lang_get_regions): Add extra parameter 'have_vma'
856         which if true will prevent the LMA region being used as a
857         replacement for a default VMA region.
858         (lang_leave_output_section_statement): Pass extra parameter.
859         (lang_leave_overlay): Likewise.
860         * ld.texinfo (Output Section LMA): Document that the LMA
861         region can be set to the VMA region if no VMA has been set.
862         * ldlang.h (struct lang_output_section_phdr_list): Create a
863         typedef for this type.  Minor formatting fixes.
865 2004-01-13  Nick Clifton  <nickc@redhat.com>
867         * ldlang.c (lang_size_sections_1): If dot is advanced, then
868         assume that the section should be allocated.
870 2004-01-13  Alan Modra  <amodra@bigpond.net.au>
872         * ldlang.c (IGNORE_SECTION): Don't ignore SEC_ALLOC && !SEC_LOAD
873         sections.  Do ignore SEC_NEVER_LOAD sections.
874         (lang_size_sections_1): Remove test made redundant with the above.
876 2004-01-09  Alan Modra  <amodra@bigpond.net.au>
878         * emultempl/ppc64elf.em (ppc_before_allocation): Clear cached
879         program_header_size.
881 2004-01-06  Alexandre Oliva  <aoliva@redhat.com>
883         2003-11-28  Alexandre Oliva  <aoliva@redhat.com>
884         * emulparams/elf32frvfd.sh (EMBEDDED): Clear.
885         2003-11-05  Alexandre Oliva  <aoliva@redhat.com>
886         * emulparams/elf32frvfd.sh (STACK_ADDR): Unset.
887         (MAXPAGESIZE): Set to 64Kb.
888         (OTHER_READONLY_SECTIONS): Define __ROFIXUP_LIST__ and
889         __ROFIXUP_END__.  Don't map .rofixup.got any more.
890         * emulparams/elf32frv.sh (NOP): Set.
891         2003-10-31  Alexandre Oliva  <aoliva@redhat.com>
892         * configure.tgt: Add frv-*-*linux*.
893         2003-09-30  Alexandre Oliva  <aoliva@redhat.com>
894         * Makefile.am (ALL_EMULATIONS): Added eelf32frvfd.o.
895         (eelf32frvfd.c): New.
896         * configure.tgt <frv-*-*>: Added it to targ_extra_emuls.
897         * emulparams/elf32frv.sh: Reverted previous two patches.
898         * emulparams/elf32frvfd.sh: New.
899         * Makefile.in: Rebuilt.
900         2003-09-18  Alexandre Oliva  <aoliva@redhat.com>
901         * emulparams/elf32frv.sh (OTHER_READONLY_SECTIONS): Added
902         .rofixup.got to .rofixup.
903         2003-09-15  Alexandre Oliva  <aoliva@redhat.com>
904         * emulparams/elf32frv.sh (MAXPAGESIZE): Make it 256KiB, not 256B.
905         (TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT): Set.
907 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
909         * emulparams/elf_s390.sh (NO_SMALL_DATA): Set to yes.
910         * emulparams/elf64_s390.sh (NO_SMALL_DATA): Set to yes.
912 2004-01-03  Alan Modra  <amodra@bigpond.net.au>
914         * ldexp.c (align_n): Make static.
915         * ldexp.h (align_n): Delete declaration.
916         * ldlang.h (lang_enter_output_section_statement): Remove
917         block_value param.
918         * ldlang.c (lang_enter_output_section_statement): Likewise.
919         (TO_ADDR, TO_SIZE): Define.
920         (opb_shift): New var.
921         (init_opb): New function.
922         (print_input_section): Call init_opb and use TO_ADDR.
923         (print_data_statement, print_reloc_statement): Likewise.
924         (print_padding_statement): Likewise.
925         (size_input_section): Use TO_SIZE and TO_ADDR, and global opb_shift.
926         (lang_check_section_addresses): Likewise.
927         (lang_size_sections_1): Likewise.
928         (lang_do_assignments_1): Likewise.
929         (lang_set_startof): Likewise.
930         (lang_one_common): Likewise.  Combine power_of_two and opb_shift align.
931         (lang_process): Call init_opb.
932         (lang_abs_symbol_at_end_of): Use TO_ADDR and global opb_shift.
933         (lang_enter_overlay_section): Adjust
934         lang_enter_output_section_statement call.
935         * ldgram.y: Likewise.
936         * mri.c (mri_draw_tree): Likewise.
937         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
938         * emultempl/mmo.em (mmo_place_orphan): Likewise.
939         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Likewise.
941         * ldfile.c (ldfile_set_output_arch): Add defarch param.
942         * ldfile.h (ldfile_set_output_arch): Ditto.
943         * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Use
944         ldfile_set_output_arch.
945         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Ditto.
946         * emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Ditto.
947         * emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Ditto.
948         * emultempl/mipsecoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
949         * emultempl/pe.em (gld${EMULATION_NAME}_before_parse): Ditto.
950         * emultempl/sunos.em (gld${EMULATION_NAME}_before_parse): Ditto.
951         * ldgram.y: Adjust ldfile_set_output_arch call.
952         * emultempl/armcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
953         * emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Ditto.
954         * emultempl/armelf_oabi.em (gld${EMULATION_NAME}_before_parse): Ditto.
955         * emultempl/generic.em (gld${EMULATION_NAME}_before_parse): Ditto.
956         * emultempl/gld960c.em (gld960_set_output_arch): Ditto.
957         * emultempl/m68kcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
958         * emultempl/ticoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
960 2004-01-02  Bernardo Innocenti  <bernie@develer.com>
962         * configure.tgt: Add m68k-uClinux target.
964 For older changes see ChangeLog-0203
966 Local Variables:
967 mode: change-log
968 left-margin: 8
969 fill-column: 74
970 version-control: never
971 End: