* ldlang.c (load_symbols): Set whole_archive from entry when
[platform/upstream/binutils.git] / ld / ChangeLog
1 2009-10-14  Ryan Mansfield  <rmansfield@qnx.com>
2
3         * ldlang.c (load_symbols): Set whole_archive from entry when
4         parsing a linker script.
5
6 2009-10-10  Alan Modra  <amodra@bigpond.net.au>
7
8         * scripttempl/elf32cr16.sc: Revert 2009-09-28 changes.
9         * scripttempl/elf32cr16c.sc: Likewise.
10         * scripttempl/elf32crx.sc: Likewise.
11         * scripttempl/tic54xcoff.sc: Likewise.
12         * scripttempl/aix.sc: Likewise.
13         * scripttempl/avr.sc: Likewise.
14         * scripttempl/elf32msp430.sc: Likewise.
15         * scripttempl/elf32msp430_3.sc: Likewise.
16         * scripttempl/elf32sh-symbian.sc: Likewise.
17         * scripttempl/elf_chaos.sc: Likewise.
18         * scripttempl/elfi370.sc: Likewise.
19         * scripttempl/nw.sc: Likewise.
20         * scripttempl/psos.sc: Likewise.
21         * scripttempl/armbpabi.sc: Likewise.
22         * scripttempl/elf.sc: Likewise.
23         * scripttempl/elf64hppa.sc: Likewise.
24         * scripttempl/elfd10v.sc: Likewise.
25         * scripttempl/elfd30v.sc: Likewise.
26         * scripttempl/elfm68hc11.sc: Likewise.
27         * scripttempl/elfm68hc12.sc: Likewise.
28         * scripttempl/elfmicroblaze.sc: Likewise.
29         * scripttempl/elfxtensa.sc: Likewise.
30         * scripttempl/iq2000.sc: Likewise.
31         * scripttempl/mep.sc: Likewise.
32         * scripttempl/xstormy16.sc: Likewise.
33
34 2009-10-09  Alan Modra  <amodra@bigpond.net.au>
35
36         PR ld/10749
37         * ldlang.c (lang_size_sections_1): Zero section vmas only for COFF.
38
39 2009-10-08  Alan Modra  <amodra@bigpond.net.au>
40
41         PR ld/10744
42         * ldlang.c (lang_new_phdr): Allow FILEHDR/PHDRS on more than the
43         first PT_LOAD header.
44         * ld.texinfo: Update.
45
46 2009-10-06  Nathan Sidwell  <nathan@codesourcery.com>
47
48         * ldlang.c (lang_new_phdr): Check PHDRS and FILEHDR in loadable
49         segments do not appear after a different loadable segment.
50         * ld.texinfo (PHDRS): Document order of processing segments.
51         Document where PHDRS and FILEHDR may appear.
52
53 2009-10-03  Alan Modra  <amodra@bigpond.net.au>
54
55         * emultempl/ppc32elf.em (emit_stub_syms): Init to -1.
56         (ppc_after_open): Set emit_stubs_syms by default when shared.
57         (OPTION_NO_STUBSYMS): Define.
58         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
59         PARSE_AND_LIST_ARGS_CASES): Handle --no-emit-stub-syms.
60         * emultempl/ppc64elf.em (emit_stub_syms): Init to -1.
61         (gld${EMULATION_NAME}_finish): Set emit_stubs_syms by default.
62         (OPTION_NO_STUBSYMS): Define.
63         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
64         PARSE_AND_LIST_ARGS_CASES): Handle --no-emit-stub-syms.
65
66 2009-09-29  Joel Sherrill <joel.sherrill@oarcorp.com>
67
68         * emulparams/m68kelf.sh (NOP): Use 0x4e71 (nop) rather than 0x4e75
69         (rts).
70
71 2009-09-29  DJ Delorie  <dj@redhat.com>
72
73         * Makefile.am: Add rules to build RX emulation.
74         * configure.tgt: Likewise.
75         * NEWS: Mention support for RX architecture.
76         * Makefile.in: Regenerate.
77         * emulparams/elf32rx.sh: New file.
78         * emultempl/rxelf.em: New file.
79
80 2009-09-29  Alan Modra  <amodra@bigpond.net.au>
81
82         * ldlang.c (lang_size_sections_1): Allow scripts to specify a
83         non-zero vma even when relocatable.
84
85 2009-09-28  Alan Modra  <amodra@bigpond.net.au>
86
87         * scripttempl/elf32cr16.sc: Emit empty script for ld -r and ld -Ur.
88         * scripttempl/elf32cr16c.sc: Likewise.
89         * scripttempl/elf32crx.sc: Likewise.
90         * scripttempl/tic54xcoff.sc: Likewise.
91         * scripttempl/aix.sc: Delete ${RELOCATING-0}.
92         * scripttempl/avr.sc: Likewise.
93         * scripttempl/elf32msp430.sc: Likewise.
94         * scripttempl/elf32msp430_3.sc: Likewise.
95         * scripttempl/elf32sh-symbian.sc: Likewise.
96         * scripttempl/elf_chaos.sc: Likewise.
97         * scripttempl/elfi370.sc: Likewise.
98         * scripttempl/nw.sc: Likewise.
99         * scripttempl/psos.sc: Likewise.
100         * scripttempl/armbpabi.sc: Delete ${RELOCATING-0} and ${CONSTRUCTING-0}.
101         * scripttempl/elf.sc: Likewise.
102         * scripttempl/elf64hppa.sc: Likewise.
103         * scripttempl/elfd10v.sc: Likewise.
104         * scripttempl/elfd30v.sc: Likewise.
105         * scripttempl/elfm68hc11.sc: Likewise.
106         * scripttempl/elfm68hc12.sc: Likewise.
107         * scripttempl/elfmicroblaze.sc: Likewise.
108         * scripttempl/elfxtensa.sc: Likewise.
109         * scripttempl/iq2000.sc: Likewise.
110         * scripttempl/mep.sc: Likewise.
111         * scripttempl/xstormy16.sc: Likewise.
112
113 2009-09-27  Christopher Faylor  <me+cygwin@cgf.cx>
114
115         PR ld/10634
116         * ldlang.c (lang_size_sections_1): Always force output vma to zero for
117         relocatable sections.
118         (lang_size_sections_1): Revert previous COFF-only accommodation for
119         relocatable sections.
120
121 2009-09-25  Martin Thuresson  <martint@google.com>
122
123         Update sources to make arm targets compile cleanly with
124         -Wc++-compat:
125         * emultempl/armelf.em: Add casts.
126
127 2009-09-23  Matt Rice  <ratmice@gmail.com>
128
129         * emultempl/elf32.em (gld${EMULATION_NAME}_add_options): Add --audit,
130         --depaudit, and -P options.
131         (gld${EULATION_NAME}_handle_options): Ditto.
132         (gld${EULATION_NAME}_list_options): Ditto.
133         (gld${EMULATION_NAME}_append_to_separated_string): New function for
134         handling rpath-like colon separated strings.
135         (gld${EMULATION_NAME}_before_allocation): Pass the audit and depaudit
136         libs to bfd.  Propagate DT_AUDIT from needed libs to depaudit.
137         * ld.texinfo: Document new options.
138
139 2009-09-23  Nick Clifton  <nickc@redhat.com>
140
141         * po/vi.po: Updated Vietnamese translation.
142
143 2009-09-22  Alan Modra  <amodra@bigpond.net.au>
144
145         * scripttempl/a29k.sc: Delete.
146         * scripttempl/ebmon29k.sc: Delete.
147         * scripttempl/m68klynx.sc: Delete.
148         * scripttempl/sa29200.sc: Delete.
149         * scripttempl/sparclynx.sc: Delete.
150
151 2009-09-21  Alan Modra  <amodra@bigpond.net.au>
152
153         * emultempl/ppc32elf.em (no_tls_get_addr_opt): New var.
154         (ppc_before_allocation): Pass to ppc_elf_tls_setup.
155         (OPTION_NO_TLS_GET_ADDR_OPT): Define.  Redefine other options in
156         terms of previous option.
157         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add
158         --no-tls-get-addr-optimize.
159         (PARSE_AND_LIST_ARGS_CASES): Handle it.
160         * emultempl/ppc64elf.em (no_tls_get_addr_opt): New var.
161         (ppc_before_allocation): Pass to ppc64_elf_tls_setup.
162         (OPTION_NO_TLS_GET_ADDR_OPT): Define.
163         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add
164         --no-tls-get-addr-optimize.
165         (PARSE_AND_LIST_ARGS_CASES): Handle it.
166
167 2009-09-18  Nick Clifton  <nickc@redhat.com>
168
169         * po/es.po: Updated Spanish translation.
170
171 2009-09-13  Alan Modra  <amodra@bigpond.net.au>
172
173         PR ld/6766
174         * lexsup.c (parse_args <-e>): Revert 2009-03-18 change.
175         * ldemul.c (after_parse_default): Add entry symbol as undef.
176         * emultempl/alphaelf.em (alpha_after_parse): Call after_parse_default.
177         * emultempl/cr16elf.em (cr16elf_after_parse): Likewise.
178         * emultempl/crxelf.em (crxelf_after_parse): Likewise.
179         * emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
180         * emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Likewise.
181         * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse): Call
182         after_parse_default and delete now duplicate code.
183         * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse): Likewise.
184         * scripttempl/elf32cr16.sc: No need to make entry extern.
185         * scripttempl/elf32cr16c.sc: Likewise.
186         * scripttempl/elf32crx.sc: Likewise.
187         * scripttempl/elf32xc16xs.sc: Only provide ENTRY on final link.
188
189 2009-09-11  Nick Clifton  <nickc@redhat.com>
190
191         * po/ld.pot: Updated by the Translation project.
192         * po/fi.po: Updated Finnish translation.
193
194 2009-09-11  Martin Thuresson  <martint@google.com>
195
196         Updated sources to compile cleanly with -Wc++-compat:
197         * ld.h (enum endian_enum,enum symbolic_enum,enum
198         dynamic_list_enum): Move to top level.
199         * ldcref.c: Add casts.
200         * ldctor.c: Add casts.
201         * ldexp.c
202         * ldexp.h (enum node_tree_enum,enum phase_enum): Move to top level.
203         * ldlang.c: Add casts. (lang_insert_orphan): Use enum name instead
204         of integer.
205         * ldlang.h (enum statement_enum): Move to top level.
206         * ldmain.c: Add casts.
207         * ldwrite.c: Add casts.
208         * lexsup.c: Add casts. (enum control_enum): Move to top level.
209         * mri.c: Add casts. (mri_draw_tree): Use enum name instead of
210         integer.
211
212 2009-09-09  Alan Modra  <amodra@bigpond.net.au>
213
214         * scripttempl/aix.sc: Only provide ENTRY on final link.
215         * scripttempl/alpha.sc: Likewise.
216         * scripttempl/armcoff.sc: Likewise.
217         * scripttempl/crisaout.sc: Likewise.
218         * scripttempl/delta68.sc: Likewise.
219         * scripttempl/ebmon29k.sc: Likewise.
220         * scripttempl/elf32xc16x.sc: Likewise.
221         * scripttempl/elf32xc16xl.sc: Likewise.
222         * scripttempl/elfmicroblaze.sc: Likewise.
223         * scripttempl/epocpe.sc: Likewise.
224         * scripttempl/h8300.sc: Likewise.
225         * scripttempl/h8300h.sc: Likewise.
226         * scripttempl/h8300hn.sc: Likewise.
227         * scripttempl/h8300s.sc: Likewise.
228         * scripttempl/h8300sn.sc: Likewise.
229         * scripttempl/h8300sx.sc: Likewise.
230         * scripttempl/h8300sxn.sc: Likewise.
231         * scripttempl/hppaelf.sc: Likewise.
232         * scripttempl/i386beos.sc: Likewise.
233         * scripttempl/i386coff.sc: Likewise.
234         * scripttempl/i386go32.sc: Likewise.
235         * scripttempl/m68kaux.sc: Likewise.
236         * scripttempl/m68klynx.sc: Likewise.
237         * scripttempl/m88kbcs.sc: Likewise.
238         * scripttempl/maxqcoff.sc: Likewise.
239         * scripttempl/mcorepe.sc: Likewise.
240         * scripttempl/mips.sc: Likewise.
241         * scripttempl/ppcpe.sc: Likewise.
242         * scripttempl/sa29200.sc: Likewise.
243         * scripttempl/sparccoff.sc: Likewise.
244         * scripttempl/sparclynx.sc: Likewise.
245         * scripttempl/tic4xcoff.sc: Likewise.
246         * scripttempl/tic54xcoff.sc: Likewise.
247         * scripttempl/tic80coff.sc: Likewise.
248         * scripttempl/z8000.sc: Likewise.
249
250 2009-09-07  Tristan Gingold  <gingold@adacore.com>
251
252         * po/ld.pot: Regenerate.
253
254 2009-09-05  Martin Thuresson  <martin@mtme.org>
255
256         * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols,
257         gld${EMULATION_NAME}_try_needed): Rename variable class to
258         link_class.
259
260 2009-09-04  Tristan Gingold  <gingold@adacore.com>
261
262         * NEWS: Add marker for 2.20.
263
264 2009-09-04  Alan Modra  <amodra@bigpond.net.au>
265
266         * scripttempl/elf.sc (.text): Add cold text sections.
267
268 2009-09-04  Jie Zhang  <jie.zhang@analog.com>
269
270         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Add .l2.text
271         and .l2.data.
272
273 2009-09-03  Dave Korn  <dave.korn.cygwin@gmail.com>
274
275         * scripttempl/pe.sc (.text): Add "*(.text.*)" in order to catch
276         new GCC hot/cold/unlikely partitions.
277         * scripttempl/pep.sc: Likewise.
278         * scripttempl/epocpe.sc: Likewise.
279         * scripttempl/mcorepe.sc: Likewise.
280         * scripttempl/ppcpe.sc: Likewise.
281
282 2009-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
283
284         * Makefile.am (ldgram.o, ldlex.o, deffilep.o): Supply correct
285         source file name for generated files which may be in $(srcdir).
286         * Makefile.in: Regenerate.
287
288 2009-09-01  H.J. Lu  <hongjiu.lu@intel.com>
289
290         * ldver.c (ldversion): Change to "Copyright 2009".
291
292 2009-09-01  Jie Zhang  <jie.zhang@analog.com>
293
294         * scripttempl/elf.sc: Add ${USER_LABEL_PREFIX} to _start, etext,
295         _stack and __bss_start.
296         * emulparams/bfin.sh (ENTRY): Remove.
297
298 2009-08-30  Alan Modra  <amodra@bigpond.net.au>
299
300         PR ld/10569
301         * ldexp.c (fold_name <MAXPAGESIZE>): Return config.maxpagesize.
302         (fold_name <COMMONPAGESIZE>): Similarly.
303         * ldlang.c (output_target): Make global.
304         * ldlang.h (output_target): Declare.
305         * ldmain.c (main): Set config.maxpagesize from bfd_emul_get_maxpagesize.
306         Similarly for config.commonpagesize.
307         * ldemul.c (set_output_arch_default): Call bfd_emul_set_maxpagesize
308         and bfd_emul_set_commonpagesize.
309         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Don't call
310         bfd_emul_set_maxpagesize or bfd_emul_set_commonpagesize here.
311
312 2009-08-29  Martin Thuresson  <martin@mtme.org>
313
314         * ldexp.c (exp_intop, exp_bigintop, exp_relop, exp_binop)
315         (exp_trinop, exp_unop, exp_nameop, exp_assop): Rename variable new
316         to new_e.
317         * ldfile.c (ldfile_add_library_path): Rename variable new to
318         new_dirs. (ldfile_add_arch): Rename variable new to new_arch.
319         * ldlang.c (new_statement, lang_final, lang_add_wild)
320         (lang_target, lang_add_fill, lang_add_data, lang_add_assignment)
321         (lang_add_insert): Rename variable new to new_stmt. (new_afile):
322         Added missing cast. (lang_memory_region_lookup): Rename variable
323         new to new_region. (init_os): Rename variable new to
324         new_userdata. (lang_add_section): Rename variable new to
325         new_section. (ldlang_add_undef): Rename variable new to
326         new_undef. (realsymbol): Rename variable new to new_name.
327
328 2009-08-26  Nick Clifton  <nickc@redhat.com>
329
330         PR ld/10555
331         * emultempl/elf32.em (_after_open): Do not create a
332         .note.gnu-build-id section if there are no input files.
333
334 2009-08-24  Nick Clifton  <nickc@redhat.com>
335
336         * scripttempl/elfxtensa.sc (DISCARDED): Discard sections with
337         .gnu.lto_ prefix.
338         * scripttempl/armbpabi.sc: Likewise.
339         * scripttempl/elf32sh-symbian.sc: Likewise.
340         * scripttempl/elf64hppa.sc: Likewise.
341         * scripttempl/mep.sc: Likewise.
342
343 2009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
344
345         * Makefile.am (ldmain.o, ldfile.o): Fix typos in non-fastdep
346         rules.
347         (eelf32_spu.o): Add dependency tracking.
348         * Makefile.in: Regenerate.
349
350         * Makefile.am (am__skiplex, am__skipyacc): New.
351         * Makefile.in: Regenerate.
352
353 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
354
355         * Makefile.am (bin_PROGRAMS): Renamed from ...
356         (noinst_PROGRAMS): ... this.
357         (transform): Override, including the renaming of ld-new to ld.
358         (install-exec-local): Installation of ld in $(bindir) not needed
359         here any more.
360         (AM_CPPFLAGS): Renamed from ...
361         (INCLUDES): ... this.
362         (MAINTAINERCLEANFILES): Add ld.1.
363         * Makefile.in: Regenerate.
364
365         * Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus.  Add
366         no-texinfo.tex, no-dist, foreign.
367         (TEXINFO_TEX): New variable.
368         (install-data-local): Removed, not needed any more.
369         (all): Dependencies upon info and ld.1 not needed any more.
370         (MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
371         (mkdep generated section): Removed.
372         (ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
373         use automake dependency tracking mechanism.
374         (EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
375         $(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
376         dependencies are tracked too.
377         (BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
378         are built early.
379         * configure.in: Use AM_MAINTAINER_MODE.
380         * aclocal.m4, configure, Makefile.in: Regenerate.
381
382         * Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
383         (install-pdf-recursive, html__strip_dir, install-html)
384         (install-html-am, install-html-recursive): Remove.
385         * Makefile.in: Regenerate.
386
387         * Makefile.in: Regenerate.
388         * aclocal.m4: Likewise.
389         * config.in: Likewise.
390         * configure: Likewise.
391
392 2009-08-21  Richard Guenther  <rguenther@suse.de>
393
394         * scripttempl/elf.sc: Discard sections with .gnu.lto_ prefix.
395
396 2009-08-12  Tristan Gingold  <gingold@adacore.com>
397
398         * ld.h (fat_user_section_struct): Add map_symbol_def_count field.
399         * ldlang.c (hash_entry_addr_cmp): New function.
400         (print_all_symbols): Sort the symbols by address before printing them.
401
402 2009-08-10  Alan Modra  <amodra@bigpond.net.au>
403
404         PR 10474
405         * ldemul.c (after_allocation_default): Run lang_relax_sections.
406         * ldlang.h (lang_relax_sections): Declare.
407         * ldlang.c (relax_sections): Delete.
408         (lang_relax_sections): New function.
409         (lang_process): Don't relax directly from here.
410         * emultempl/alphaelf.em (alpha_finish): Call finish_default.
411         * emultempl/armelf.em (arm_elf_after_allocation): Delete.  Move body..
412         (gld${EMULATION_NAME}_finish): ..to here.  Move existing code..
413         (gld${EMULATION_NAME}_after_allocation): ..to here.  New function.
414         (LDEMUL_AFTER_ALLOCATION): Update.
415         * emultempl/avrelf.em (avr_elf_finish, LDEMUL_FINISH): Delete.
416         (avr_elf_after_allocation): New function.
417         (LDEMUL_AFTER_ALLOCATION): Define.
418         * emultempl/elf-generic.em (gld${EMULATION_NAME}_map_segments): Call
419         lang_relax_sections.
420         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Delete.  Move..
421         (gld${EMULATION_NAME}_after_allocation): ..code to here.  New function.
422         (LDEMUL_AFTER_ALLOCATION, LDEMUL_FINISH): Update.
423         * emultempl/genelf.em (gld${EMULATION_NAME}_finish): Delete.  Move..
424         (gld${EMULATION_NAME}_after_allocation): ..code to here.  New function.
425         (LDEMUL_FINISH): Delete.
426         (LDEMUL_AFTER_ALLOCATION): Define.
427         * emultempl/hppaelf.em (gld${EMULATION_NAME}_finish): Delete.  Move..
428         (gld${EMULATION_NAME}_after_allocation): ..to here.  New function.
429         (LDEMUL_FINISH): Delete.
430         (LDEMUL_AFTER_ALLOCATION): Define.
431         * emultempl/m68hc1xelf.em (m68hc11elf_finish): Delete.  Move..
432         (m68hc11elf_after_allocation): ..to here.  New function.
433         (LDEMUL_FINISH): Delete.
434         (LDEMUL_AFTER_ALLOCATION): Define.
435         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
436         gld${EMULATION_NAME}_after_allocation.
437         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Call
438         gld${EMULATION_NAME}_after_allocation.
439         * emultempl/mmo.em (mmo_finish): Delete.  Move body..
440         (gld${EMULATION_NAME}_after_allocation): ..to here.  New function.
441         (LDEMUL_FINISH): Define.
442         * emultempl/ppc64elf.em (ppc_layout_sections_again): Set elf_gp.
443         (gld${EMULATION_NAME}_finish): Move code sizing sections..
444         (gld${EMULATION_NAME}_after_allocation): ..to here.
445         * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
446         Call gld${EMULATION_NAME}_after_allocation.
447         * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Delete
448         bfd_elf_discard_info and map_segments call.
449
450 2009-08-06  Michael Eager <eager@eagercon.com>
451
452         * Makefile.am: Add eelf32mb_linux.o, eelf32microblaze.o to
453         ALL_EMULATIONS, targets.
454         * Makefile.in: Regenerate.
455         * configure.tgt: Add microblaze*-linux*, microblaze* targets.
456         * emulparams/elf32mb_linux.sh: New.
457         * emulparams/elf32microblaze.sh. New.
458         * scripttempl/elfmicroblaze.sc: New.
459
460 2009-08-05  Trevor Smigiel  <Trevor_Smigiel@playstation.sony.com>
461
462         * emulparams/elf32_spu.sh (OTHER_READONLY_SECTIONS): Add .fixup
463         section and __fixup_start symbol.
464         * emultempl/spuelf.em (params): Initialize emit_fixups member.
465         (spu_before_allocation): Call spu_elf_size_sections.
466         (OPTION_SPU_EMIT_FIXUPS): Define.
467         (PARSE_AND_LIST_LONGOPTS): Add --emit-fixups.
468         (PARSE_AND_LIST_ARGS_CASES): Handle --emit-fixups.
469         * ld.texinfo (--emit-fixups): Document.
470
471 2009-08-04  Alan Modra  <amodra@bigpond.net.au>
472
473         PR 10474
474         * emultempl/ppc32elf.em (ppc_before_allocation): Test rawsize,
475         not size, after lang_reset_memory_regions.
476
477 2009-07-30  Alan Modra  <amodra@bigpond.net.au>
478
479         * emulparams/elf32ppc.sh (PLT): Don't include ".iplt".
480         * emulparams/elf_i386.sh (IREL_IN_PLT): Define.
481         * emulparams/elf_x86_64.sh (IREL_IN_PLT): Define.
482         * scripttempl/elf.sc: Create separate .iplt and .rela.iplt sections
483         when !IREL_IN_PLT.
484
485 2009-07-29  Hans-Peter Nilsson  <hp@bitrange.com>
486
487         * scripttempl/mmo.sc: For relocateable links, set $OUTPUT_FORMAT to
488         the new $RELOCATEABLE_OUTPUT_FORMAT, if set.
489         (OUTPUT_FORMAT): Use the variable $OUTPUT_FORMAT.
490         (ENTRY): Don't emit for relocateable links.
491         (/DISCARD/): Don't discard .gnu.warning.* for relocateable links.
492         * emulparams/mmo.sh (RELOCATEABLE_OUTPUT_FORMAT): Set, to
493         elf64-mmix.
494         * emulparams/elf64mmix.sh (OTHER_TEXT_SECTIONS): Empty, don't
495         provide "Main" or set "_start.", for relocateable links.
496
497 2009-07-27  Nick Clifton  <nickc@redhat.com>
498
499         * (po/fi.po): Updated Finnish translation.
500
501 2009-07-25  H.J. Lu  <hongjiu.lu@intel.com>
502
503         * configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64
504         is supported.  Add elf_l1om_fbsd if elf_x86_64_fbsd is supported.
505         (targ_extra_emuls): Likewise.
506
507         * Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and
508         eelf_l1om_fbsd.o
509         (eelf_l1om.c): New.
510         (eelf_l1om_fbsd.c): Likewise.
511         * Makefile.in: Regenerated.
512
513         * emulparams/elf_l1om.sh: New.
514         * emulparams/elf_l1om_fbsd.sh: Likewise.
515
516 2009-07-23  Ulrich Drepper  <drepper@redhat.com>
517
518         * NEWS: Mention the linker's support for symbols with a binding of
519         STB_GNU_UNIQUE.
520
521 2009-07-22  H.J. Lu  <hongjiu.lu@intel.com>
522
523         PR ld/10429
524         * ldlang.c (insert_os_after): Tie assignments to non-alloc
525         output sections if there is no-input section.
526
527 2009-07-11  Alan Modra  <amodra@bigpond.net.au>
528
529         * ldlang.c (insert_os_after): Don't tie assignments to non-alloc
530         output sections.
531
532 2009-07-10  Alan Modra  <amodra@bigpond.net.au>
533
534         * emultempl/ppc32elf.em (ppc_before_allocation): Turn on
535         linker relaxation if it might be necessary.
536
537 2009-07-10  Alan Modra  <amodra@bigpond.net.au>
538
539         * emulparams/elf32ppc.sh (GOTPLT, PLT): Handle .iplt.
540
541 2009-07-06  Matthias Klose <doko@ubuntu.com>
542
543         * ld.texinfo: Fix typo.
544
545 2009-07-03  Tristan Gingold  <gingold@adacore.com>
546
547         * scripttempl/pep.sc: Put .eh_frame in its own section.
548         * scripttempl/pe.sc: Ditto.
549
550 2009-06-26  Kai Tietz  <kai.tietz@onevision.com>
551
552         * scripttempl/pe.sc (.debug_pubtypes): Added section rule.
553         * scripttempl/pep.sc: Likewise.
554
555 2009-06-25  Tristan Gingold  <gingold@adacore.com>
556
557         * ldlang.c (print_input_section): Add is_discarded parameter.  Adjust
558         prototype.
559         (lang_map): Print the size of discarded sections.
560         (print_statement): Adjust call to print_input_section.
561
562 2009-06-18  Dave Korn  <dave.korn.cygwin@gmail.com>
563
564         Merge cegcc and mingw32ce target name changes from CeGCC project:
565
566         2008-09-24  Pedro Alves  <pedroalves@users.sourceforge.net>
567
568         * configure.tgt (arm*-*-cegcc*): Set LIB_PATH to
569         ${tooldir}/lib/w32api.
570
571         2007-12-25  Pedro Alves  <pedro_alves@portugalmail.pt>
572
573         * configure.tgt: Add arm*-*-cegcc* target.
574
575         2007-12-17  Pedro Alves  <pedro_alves@portugalmail.pt>
576
577         * configure.tgt: Add arm-*-mingw32ce* target.
578
579 2009-06-10  Philip Blundell  <philb@gnu.org>
580
581         * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Avoid crash
582         if section has no ELF data.
583
584 2009-06-06  H.J. Lu  <hongjiu.lu@intel.com>
585
586         * scripttempl/elf.sc: Add .rel.ifunc and .rela.ifunc.
587
588 2009-06-05  H.J. Lu  <hongjiu.lu@intel.com>
589
590         * scripttempl/elf.sc: Remove .rel.ifunc.dyn and .rela.ifunc.dyn.
591
592 2009-06-04  Alan Modra  <amodra@bigpond.net.au>
593
594         * dep-in.sed: Don't use \n in replacement part of s command.
595         * Makefile.am (DEP1): LC_ALL for uniq.
596         * Makefile.in: Regenerate.
597
598 2009-06-01  H.J. Lu  <hongjiu.lu@intel.com>
599
600         * scripttempl/elf.sc (PLT): Add "*(.iplt)".
601         (GOT): Add "*(.igot.plt)a" and "*(.igot)".
602         (GOTPLT): Add "*(.igot)".
603         (__rel_iplt_start): New.
604         (__rel_iplt_end): Likewise.
605         (__rela_iplt_start): Likewise.
606         (__rela_iplt_end): Likewise.
607
608 2009-05-27  Dave Korn  <dave.korn.cygwin@gmail.com>
609
610         * deffilep.y (%union):  Add new string-type semantic value 'digits'.
611         (%token):  Remove NUMBER as token, add DIGITS.
612         (%type):  Add NUMBER as type.  Add new id types anylang_id, opt_id.
613         (ALIGNCOMM):  Parse an anylang_id instead of a plain ID.
614         (anylang_id):  New production.
615         (opt_digits):  Likewise.
616         (opt_id):  Likewise.
617         (NUMBER):  Likewise.
618         (def_lex):  Return strings of digits in raw string form as DIGITS
619         token, instead of converting to numeric integer type.
620
621 2009-05-26  Nathan Sidwell  <nathan@codesourcery.com>
622
623         * ldmain.c (main): Don't reject --relax -r.
624         * ld.texinfo (PowerPC ELF32): Document behaviour of relaxing
625         partial links.
626
627 2009-05-26  Nick Clifton  <nickc@redhat.com>
628
629         * po/id.po: Updated Indonesian translation.
630         * po/ld.pot: Updated template file.
631
632 2009-05-26  Alan Modra  <amodra@bigpond.net.au>
633
634         * dep-in.sed: Output one filename per line with all lines having
635         continuation backslash.  Prefix first line with "A", following
636         lines with "B".
637         * Makefile.am (DEP): Don't use dep.sed here.
638         (DEP1): Run $MKDEP on single files, use dep.sed here on dependencies,
639         sort and uniq.
640         * Makefile.in: Regenerate.
641
642 2009-05-26  Alan Modra  <amodra@bigpond.net.au>
643
644         * ldlang.c (lang_check_section_addresses): Ignore non-alloc sections.
645
646 2009-05-22  Julian Brown  <julian@codesourcery.com>
647
648         * emultempl/armelf.em (fix_cortex_a8): New.
649         (arm_elf_before_allocation): Call bfd_elf32_arm_set_cortex_a8_fix.
650         (arm_elf_create_output_section_statements): Add fix_cortex_a8 to
651         bfd_elf32_arm_set_target_relocs.
652         (OPTION_FIX_CORTEX_A8, OPTION_NO_FIX_CORTEX_A8): New.
653         (PARSE_AND_LIST_LONGOPTS): Add [no-]fix-cortex-a8 options.
654         (PARSE_AND_LIST_OPTIONS): Add [no-]fix-cortex-a8 options.
655         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_[NO_]FIX_CORTEX_A8.
656         * ld.texinfo (--[no-]fix-cortex-a8): Briefly document new options.
657
658 2009-05-22  Nathan Sidwell  <nathan@codesourcery.com>
659
660         * ldlang.c (lang_check_section_addresses): Ignore non-loadable
661         sections when checking for overlap.  Clarify error message
662         concerns load address.
663
664 2009-05-22  Alan Modra  <amodra@bigpond.net.au>
665
666         * Makefile.am: Run "make dep-am".
667         * Makefile.in: Regenerate.
668
669 2009-05-19  Dave Korn  <dave.korn.cygwin@gmail.com>
670
671         * NEWS:  Mention new feature.
672         * deffile.h (def_file_aligncomm):  Add new struct definition.
673         (def_file):  Add new def_file_aligncomm member.
674         * deffilep.y (%token):  Add new ALIGNCOMM token.
675         (command):  Add production rule for ALIGNCOMM.
676         (def_file_free):  Free any chained def_file_aligncomm structs.
677         (diropts[]):  Add entry for '-aligncomm' .drectve command.
678         (def_aligncomm):  New grammar function.
679         * ld.texinfo:  Document new feature.
680         * pe-dll.c (process_def_file):  Rename from this ...
681         (process_def_file_and_drectve):  ... to this, updating all callers,
682         and process any aligncomms chained to the def file after scanning
683         all .drectve sections.
684         (generate_edata):  Updated to match.
685         (pe_dll_build_sections):  Likewise.
686
687 2009-05-17  Aaron W. LaFramboise  <aaron98wiridge9@aaronwl.com>
688
689         * pe-dll.c (process_def_file): Do not create empty export table.
690
691 2009-05-15  Alan Modra  <amodra@bigpond.net.au>
692
693         * ldlang.c (lang_output_section_statement_lookup): Add function
694         comment.  Make "name" non-const.  Ensure duplicate entries use
695         the same string, allowing simple comparison in hash bucket loop.
696         Tweak constraint check.
697         (next_matching_output_section_statement): New function.
698         * ldlang.h (lang_output_section_statement_lookup): Update.
699         (next_matching_output_section_statement): Declare.
700         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
701         combine orphan sections when input sections flags differ in
702         alloc or load.
703         * emultempl/pe.em: Formatting throughout.
704         (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
705         * emultempl/pep.em: Formatting throughout.
706         (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
707
708 2009-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
709
710         * emultempl/spuelf.em (PARSE_AND_LIST_ARGS_CASES): Always use
711         compact stubs with software i-cache.
712
713 2009-05-14  Alan Modra  <amodra@bigpond.net.au>
714
715         * emultempl/spuelf.em (spu_before_allocation): Call
716         spu_elf_place_overlay_data.
717
718 2009-05-14  Alan Modra  <amodra@bigpond.net.au>
719
720         * ldlang.c (lang_insert_orphan): Add __start_<section> symbol
721         assignment inside output section statement.  Ensure only one
722         set of symbols per output section.
723         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add non-
724         dollar sections before dollar sections.  Correct add_child
725         list insertion.
726         * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
727
728 2009-05-05  Paul Brook  <paul@codesourcery.com>
729
730         * emultempl/armelf.em (compare_output_sec_vma): New function.
731         (gld${EMULATION_NAME}_finish): Add exidx munging code.
732
733 2009-05-05  Anatoly Sokolov  <aesok@post.ru>
734
735         * scripttempl/avr.sc (MEMORY): Use DATA_ORIGIN.
736         * emulparams/avr1.sh (DATA_ORIGIN): Add.
737         * emulparams/avr2.sh (DATA_ORIGIN): Add.
738         * emulparams/avr25.sh (DATA_ORIGIN): Add.
739         * emulparams/avr3.sh (DATA_ORIGIN): Add.
740         * emulparams/avr31.sh (DATA_ORIGIN): Add.
741         * emulparams/avr35.sh (DATA_ORIGIN): Add.
742         * emulparams/avr4.sh (DATA_ORIGIN): Add.
743         * emulparams/avr5.sh (DATA_ORIGIN): Add.
744         * emulparams/avr51.sh (DATA_ORIGIN): Add.
745         (DATA_LENGTH): Update.
746         * emulparams/avr6.sh (DATA_ORIGIN): Add.
747         (DATA_LENGTH): Update.
748
749 2009-05-04  Dave Korn  <dave.korn.cygwin@gmail.com>
750
751         * NEWS:  Mention new feature.
752         * ld.texinfo (--version-script):  Document extent of PE support.
753         (WIN32):  Mention --version-script.  Extend auto-export description.
754         * pe-dll.c (process_def_file):  Use version script info to filter
755         symbols from auto-export.
756         * testsuite/ld-pe/vers-script-1.d:  New file.
757         * testsuite/ld-pe/vers-script-2.d:  New file.
758         * testsuite/ld-pe/vers-script-3.d:  New file.
759         * testsuite/ld-pe/vers-script-4.d:  New file.
760         * testsuite/ld-pe/vers-script-1.ver:  New file.
761         * testsuite/ld-pe/vers-script-2.ver:  New file.
762         * testsuite/ld-pe/vers-script-3.ver:  New file.
763         * testsuite/ld-pe/vers-script-4.ver:  New file.
764         * testsuite/ld-pe/vers-script-dll.c:  New file.
765         * testsuite/ld-pe/vers-script.exp:  New test script.
766
767 2009-05-01  Nathan Sidwell  <nathan@codesourcery.com>
768
769         * emulparams/vxworks.sh (TEXT_START_ADDR): Override.
770
771 2009-04-30  Nick Clifton  <nickc@redhat.com>
772
773         * NEWS: Mention support for IFUNC symbols.
774
775 2009-04-29  Anthony Green  <green@moxielogic.com>
776
777         * emulparams/elf32moxie.sh (STACK_ADDR): Move default stack
778         position out to accommodate larger programs.
779
780 2009-04-29  Chris Demetriou  <cgd@google.com>
781
782         * lexsup.c (option_values): Add OPTION_NO_EXPORT_DYNAMIC.
783         (ld_options): Likewise.
784         (parse_args): Likewise.
785         * ld.texinfo: Document --no-export-dynamic.
786         * NEWS: Mention --no-export-dynamic.
787
788 2009-04-29  Alan Modra  <amodra@bigpond.net.au>
789
790         * deffilep.y (STACKSIZE_K): Rename from STACKSIZE.
791
792 2009-04-25  Alan Modra  <amodra@bigpond.net.au>
793
794         PR 10061
795         * genscripts.sh: Don't pass $EMULATION_NAME as $CUSTOMIZER_SCRIPT
796         param.
797
798 2009-04-21  Daniel Jacobowitz  <dan@codesourcery.com>
799
800         * emultempl/armelf.em (bfd_for_interwork, arm_elf_after_open)
801         (arm_elf_set_bfd_for_interworking): Delete.
802         (arm_elf_before_allocation): Do not set the interworking BFD.
803         Move allocation inside not-dynamic block.
804         (arm_elf_create_output_section_statements): Create glue sections
805         and set the interworking BFD here.
806         (LDEMUL_AFTER_OPEN): Delete.
807
808 2009-04-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
809
810         * ldlang.c (lang_one_common): Use bfd_define_common_symbol.
811
812 2009-04-15  Anthony Green  <green@moxielogic.com>
813
814         * configure.tgt: Add moxie support.
815         * Makefile.am: Add moxie files.
816         * Makefile.in: Rebuilt.
817         * emulparams/elf32moxie.sh: New file.
818         * scripttempl/moxie.sc: New file.
819
820 2009-04-15  Kazu Hirata  <kazu@codesourcery.com>
821
822         * ldlang.c: Do not include limits.h.
823
824 2009-04-14  Alan Modra  <amodra@bigpond.net.au>
825
826         PR ld/10047
827         * ldfile.c (find_scripts_dir): Use make_relative_prefix to find
828         ldscripts in build tree.  Don't repeat search for ../lib/ldscripts.
829
830 2009-04-13  H.J. Lu  <hongjiu.lu@intel.com>
831
832         * ldfile.c (ldfile_find_command_file): Revert the last change.
833
834 2009-04-11  H.J. Lu  <hongjiu.lu@intel.com>
835
836         PR ld/10047
837         * ldfile.c (ldfile_find_command_file): First try raw name.
838
839 2009-04-09  Nick Clifton  <nickc@redhat.com>
840
841         PR 9824
842         * ld.texinfo (Output Section Constraint): New node.  Documents the
843         ONLY_IF_RO and ONLY_IF_RW constraints.
844         (Symbolic Constants): New node.  Documents the CONSTANT operator.
845
846 2009-04-09  Thilo Fischer <thilo.fischer@uni-muenster.de>
847
848         * emultempl/spuelf.em (embedded_spu_file): Use pex_one in place
849         of fork/execvp.
850
851 2009-04-08  H.J. Lu  <hongjiu.lu@intel.com>
852
853         * lexsup.c (option_values): Add OPTION_WARN_ALTERNATE_EM.
854         (ld_options): Likewise.
855         (parse_args): Likewise.
856
857         * ld.texinfo: Document --warn-alternate-em.
858
859         * NEWS: Mention --warn-alternate-em.
860
861 2009-04-07  DJ Delorie  <dj@redhat.com>
862
863         * emulparams/elf32mep.sh: Change default endian to little.
864
865 2009-04-07  Nick Clifton  <nickc@redhat.com>
866
867         * ld.texinfo (Output Section Address): Note that specifying an
868         address for an output section will only change the location
869         counter if the output section is used.
870
871 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
872
873         * ldfile.c (ldfile_find_command_file): Initialize result.
874
875 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
876
877         * ld.texinfo (-L): Mention that -L options do not affect how ld
878         searches for a linker script unless -T option is specified.
879         * ldfile.c (ldfile_find_command_file): Append the path obtained
880         from the program name to the search path instead of
881         prepending. Add a new parameter "default_only". Restrict the
882         search to the default script location if the new parameter is
883         true.
884         (ldfile_open_command_file_1): New.
885         (ldfile_open_command_file): Call ldfile_open_command_file_1.
886         (ldfile_open_default_command_file): New.
887
888 2009-04-03  Nathan Sidwell  <nathan@codesourcery.com>
889
890         * ldlang.c (lang_leave_output_section_statement): Set lma_region
891         if it is not overridden and section is for the same vma region as
892         the previous section.
893
894 2009-04-02  Dave Korn  <dave.korn.cygwin@gmail.com>
895
896         PR ld/6744
897         * ld.texinfo (--export-dynamic):  Mention --export-all-symbols.
898         * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse):  Issue
899         warning if --export-dynamic was passed on command-line.
900         * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse):  Likewise.
901
902 2009-04-01  Richard Sandiford  <r.sandiford@uk.ibm.com>
903
904         * emultempl/aix.em (gld${EMULATION_NAME}_open_dynamic_archive): New
905         function.
906         (ld_${EMULATION_NAME}_emulation): Use it.
907
908 2009-03-20  H.J. Lu  <hongjiu.lu@intel.com>
909
910         PR ld/9970
911         * ldlang.c (lang_end): Warn missing entry symbol for -pie.
912
913 2009-03-19  Alan Modra  <amodra@bigpond.net.au>
914
915         * emultempl/spuelf.em (spu_before_allocation): Report errors from
916         spu_elf_find_overlays.
917
918 2009-03-18  H.J. Lu  <hongjiu.lu@intel.com>
919
920         PR ld/6766
921         * lexsup.c (parse_args): Call ldlang_add_undef for -e.
922
923 2009-03-18  Alan Modra  <amodra@bigpond.net.au>
924
925         * ld.h: Remove alloca handling.
926
927 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
928
929         * emultempl/spu_icache.S: Add new entry to dummy handler.
930         * emultempl/spu_icache.o_c: Regenerate.
931         * emultempl/spuelf.em (params): Init new field.
932         (no_overlays): New static var.
933         (spu_before_allocation): Use it.
934         (OPTION_SPU_COMPACT_STUBS): Define.
935         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add compact-stubs.
936         (PARSE_AND_LIST_ARGS_CASES): Handle compact-stubs.  Adjust no-overlays
937         handling.
938
939 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
940
941         * configure.host (HOSTING_LIBS): Two dollars on shell variable
942         expansion to suit make.
943
944 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
945
946         * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL.
947         * Makefile.am (check-DEJAGNU): Set DO_COMPARE.
948         * aclocal.m4: Regenerate.
949         * configure: Regenerate.
950         * Makefile.in: Regenerate.
951
952 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
953
954         * emultempl/aix.em (auto_export_flags): New variable.
955         (explicit_auto_export_flags): Likewise.
956         (OPTION_EXPALL, OPTION_EXPFULL): New enum values.
957         (OPTION_NOEXPALL, OPTION_NOEXPFULL): Likewise.
958         (gld${EMULATION_NAME}_add_options): Add -bexpall, -bexpfull,
959         -bnoexpall and -bnoexpfull.
960         (gld${EMULATION_NAME}_handle_option): Handle them.
961         (gld${EMULATION_NAME}_before_allocation): Update the call to
962         bfd_size_dynamic_sections.
963
964 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
965
966         * emultempl/aix.em (gld${EMULATION_NAME}_handle_option): Make
967         -berok and -bernotok control link_info.unresolved_syms_in_objects
968         and link_info.unresolved_syms_in_shared_libs instead of
969         force_make_executable.
970
971 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
972
973         * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
974         config.dynamic_link to TRUE.
975
976 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
977
978         * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Mark
979         .text, .data and .bss output sections as SEC_KEEP.
980
981 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
982
983         * configure.tgt: Extend AIX 5 behavior to AIX 6 and above.
984
985 2009-03-14  Dave Korn  <dave.korn.cygwin@gmail.com>
986             Danny Smith  <dannysmith@users.sourceforge.net>
987
988         * emultmpl/pe.em (pe_dll_characteristics): New variable.
989         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
990         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
991         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
992         New macros for options to set DllCharacteristics flag bits.
993         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
994         nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
995         (init): Add DllCharacteristics field.
996         (gld_${EMULATION_NAME}_list_options): List new options.
997         (gld${EMULATION_NAME}_handle_option): Handle new options.
998         * emultmpl/pep.em (pe_dll_characteristics): New variable.
999         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
1000         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
1001         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
1002         New macros for options to set DllCharacteristics flags.
1003         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
1004         nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
1005         (init): Add DllCharacteristics field.
1006         (gld_${EMULATION_NAME}_list_options): List new options.
1007         (gld${EMULATION_NAME}_handle_option): Handle new options.
1008         * ldtexinfo : Document dynamicbase, forceinteg, nxcompat,
1009         no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
1010
1011 2009-03-06  Nick Clifton  <nickc@redhat.com>
1012
1013         * po/es.po: Updated Spanish translation.
1014
1015 2009-03-03  Dave Korn  <dave.korn.cygwin@gmail.com>
1016
1017         * emultempl/pe.em (debug_section_p):  New bfd_map_over_sections hook.
1018         (gld_${EMULATION_NAME}_after_open):  Use it to iterate all sections
1019         of all input BFDs, looking for debug info.  Enable long section names
1020         if any found.
1021         * emultempl/pe.em (debug_section_p):  Likewise.
1022         (gld_${EMULATION_NAME}_after_open):  Likewise.
1023         * NEWS:  Retrospectively adjust news announcement.
1024         * ld.texinfo:  Update documentation to mention new behaviour.
1025
1026 2009-03-03  Alan Modra  <amodra@bigpond.net.au>
1027
1028         * Makefile.am: Run "make dep-am".
1029         * Makefile.in: Regenerate.
1030
1031 2009-03-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1032
1033         * ldgram.y: Add support for REGION_ALIAS operator.
1034         * ldlang.c: Likewise.
1035         * ldlang.h: Likewise.
1036         * ldlex.l: Likewise.
1037         * NEWS: Mention the new feature.
1038         * ld.texinfo: Document the new feature.
1039
1040 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
1041
1042         * Makefile.am: Replace score elf emulation with score3 and score7
1043         emulations.
1044         * Makefile.in: Regenerate,
1045         * NEWS: Mention support for Score7 architecture.
1046         * configure.tgt: Add score7 emulation to score-elf target.
1047         * emulparams/scoreelf.sh: Add score7 support.
1048         * emultempl/scoreelf.em: Likewise.
1049
1050 2009-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1051
1052         * configure.tgt: Only use elf64hppa target emulation for hpux.
1053         * emulparams/elf64hppa.sh: Don't include hppa64linux.sh.
1054         (SCRIPT_NAME): Use new script elf64hppa.
1055         (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY,
1056         TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS,
1057         OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS,
1058         DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT,
1059         TEXT_DYNAMIC): Define.
1060         * emulparams/hppa64linux.sh: Adjust comments.
1061         * scripttempl/elf64hppa.sc: New file.
1062
1063 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1064
1065         * configure: Regenerate.
1066
1067 2009-02-27  Dave Korn  <dave.korn.cygwin@gmail.com>
1068
1069         * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):  Set
1070         default state of auto-import flag based on $target.
1071
1072 2009-02-24  Joseph Myers  <joseph@codesourcery.com>
1073
1074         * ld.texinfo (ARM): Document changed meaning of --stub-group-size.
1075         * emultempl/armelf.em (hook_in_stub): Insert after the input section.
1076         (elf32_arm_add_stub_section): Update comment.
1077         (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size.
1078
1079 2009-02-24  Sandra Loosemore  <sandra@codesourcery.com>
1080
1081         * ld.texinfo (Options): Correct typos in example.  Recommend
1082         using joined forms of syntax for passing options with arguments
1083         from a driver.
1084         (-a): Use consistent syntax for documenting option arguments.
1085         Clean up indexing and markup.
1086         (-A/--architecture): Likewise.
1087         (-f/--auxiliary): Likewise.
1088         (-F/--filter): Likewise.
1089         (-fini): Likewise.
1090         (-G/--gpsize): Likewise.
1091         (-h/-soname):Likewise.
1092         (-init): Likewise.
1093         (-l/--library): Likewise.
1094         (-L/--library-path): Likewise.
1095         (-m): Likewise.
1096         (--defsym): Likewise.
1097         (-I/--dynamic-linker): Likewise.
1098         (-Map): Likewise.
1099         (--oformat): Likewise.
1100         (--retain-symbols-file): Likewise.
1101         (-rpath): Likewise.
1102         (-rpath-link): Likewise.
1103         (--sort-common): Likewise.
1104         (--sort-section): Likewise.
1105         (--split-by-file): Likewise.
1106         (--split-by-reloc): Likewise.
1107         (--sysroot): Likewise.
1108         (--section-start): Likewise.
1109         (-Tbss, -Tdata, -Ttext): Likewise.
1110         (-Ttext-segment): Likewise.
1111         (--version-script): Likewise.
1112         (--wrap): Likewise.
1113
1114 2009-02-18  Dave Korn  <dave.korn.cygwin@gmail.com>
1115
1116         * ld.texinfo:  Update to mention long section name options.
1117         * NEWS:  Mention new behaviour and command-line options.
1118         * pe-dll.c (pe_use_coff_long_section_names):  New global variable.
1119         (pe_output_file_set_long_section_names):  New function.
1120         (pe_dll_build_sections):  Call it on output BFDs.
1121         (pe_exe_build_sections):  Likewise.
1122         (pe_dll_fill_sections):  Likewise.
1123         (pe_exe_fill_sections):  Likewise.
1124         * pe-dll.h (pe_use_coff_long_section_names):  Declare extern.
1125         (pe_output_file_set_long_section_names):  Add prototype.
1126         * pep-dll.c (pe_use_coff_long_section_names):  Define pep_ alias.
1127         (pe_output_file_set_long_section_names):  Likewise.
1128         * pep-dll.h (pep_use_coff_long_section_names):  Declare extern.
1129         (pep_output_file_set_long_section_names):  Add prototype.
1130         * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES):  New getopt value macro.
1131         (OPTION_DISABLE_LONG_SECTION_NAMES):  Likewise.
1132         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
1133         (gld_${EMULATION_NAME}_list_options):  Describe them.
1134         (gld${EMULATION_NAME}_handle_option):  Set or clear global
1135         pe_use_coff_long_section_names flag when options recognised.
1136         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
1137         for main output bfd by calling pe_output_file_set_long_section_names.
1138         * pep.em (enum options):  Extend enum with new getopt option values.
1139         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
1140         (gld_${EMULATION_NAME}_list_options):  Describe them.
1141         (gld${EMULATION_NAME}_handle_option):  Set or clear global
1142         pe_use_coff_long_section_names flag when options recognised.
1143         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
1144         for main output bfd by calling pep_output_file_set_long_section_names.
1145
1146 2009-02-16  Dave Korn  <dave.korn.cygwin@gmail.com>
1147
1148         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):  Don't emit
1149         inadvertent .reloc sections caused by refactoring accident.
1150
1151 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
1152
1153         * ldlang.c (process_insert_statements): ASSERT that output section
1154         statements are in order.
1155
1156 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
1157
1158         * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
1159         (stat_save, stat_save_ptr): New variables.
1160         (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
1161         (load_symbols): Likewise.  Delete dead "bad_load" code.
1162         (open_input_bfds): Warn on script containing output sections.
1163         (lang_enter_output_section_statement): Use push_stat_ptr.
1164         (lang_enter_group): Likewise.
1165         (lang_leave_output_section_statement): Use pop_stat_ptr.
1166         (lang_leave_group): Likewise.
1167         * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
1168         * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
1169         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
1170         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
1171         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
1172         * emultempl/spuelf.em (spu_place_special_section): Likewise.
1173         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
1174
1175 2009-02-09  Nathan Sidwell  <nathan@codesourcery.com>
1176
1177         Missing piece of 2009-01-26 commit
1178         * ldlang.c (lang_process): Don't consider relocatable flag when
1179         checking for overlap.
1180
1181 2009-02-05  Joseph Myers  <joseph@codesourcery.com>
1182
1183         * emulparams/m68kelf.sh: Add newline at end of file.
1184
1185 2009-02-04  Nick Clifton  <nickc@redhat.com>
1186
1187         PR 9805
1188         * ld.texinfo (--allow-shlib-undefined): Correct description of
1189         default settings and tidy up the rest of the entry.
1190
1191 2009-02-04  Alan Modra  <amodra@bigpond.net.au>
1192
1193         * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
1194         during relocatable link.
1195
1196 2009-02-03  Nick Clifton  <nickc@redhat.com>
1197
1198         PR 9797
1199         * ld.texinfo (Constants): Document the base-encoding suffixes
1200         supported in linker scripts.
1201
1202 2009-02-03  Alan Modra  <amodra@bigpond.net.au>
1203
1204         * NEWS: Mention --as-needed change.
1205
1206 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
1207
1208         * configure.in: AC_SUBST pdfdir.
1209         * Makefile.am: Add install-pdf, install-pdf-am,
1210         and install-pdf-recursive targets. Define pdf__strip_dir.
1211         * po/Make-in: Add install-pdf target.
1212         * configure: Regenerate.
1213         * Makefile.in: Regenerate.
1214
1215 2009-01-31  Alan Modra  <amodra@bigpond.net.au>
1216
1217         * ld.texinfo (--as-needed): Update.
1218
1219 2009-01-29  Andrew Jenner  <andrew@codesourcery.com>
1220
1221         * emultempl/armelf.em: Correct formatting of help text for
1222         --no-enum-size-warning option.
1223
1224 2009-01-26  Nathan Sidwell  <nathan@codesourcery.com>
1225
1226         * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
1227         * ld.h (args_type): Make check_section_addresses a char.
1228         * ldmain.c (main): Default check_section_addresses to -1. Check it
1229         for relocatable links.
1230         * ld.texinfo (--check-sections): Update documentation.
1231
1232 2009-01-26  Kai Tietz  <kai.tietz@onevision.com>
1233
1234         * pe-dll.c (tmp_seq2): New static variable.
1235         (make_singleton_name_imp): New.
1236         (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
1237         avoid duplicate import table generation for same symbol.
1238         (pe_create_runtime_relocator_reference): Make reference for
1239         64-bit 8 bytes.
1240
1241 2009-01-21  Alan Modra  <amodra@bigpond.net.au>
1242
1243         * emultempl/spuelf.em (params): Init new field.
1244         (OPTION_SPU_NON_IA_TEXT): Define.
1245         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
1246         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
1247
1248 2009-01-16  H.J. Lu  <hongjiu.lu@intel.com>
1249
1250         * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
1251         (ld_options): Add -Ttext-segment.
1252         (parse_args): Handle OPTION_TTEXT_SEGMENT.
1253
1254         * ld.texinfo: Document -Ttext-segment.
1255
1256         * NEWS: Mention -Ttext-segment.
1257
1258         * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
1259         (SHLIB_TEXT_START_ADDR): Likewise.
1260
1261 2009-01-13  Alan Modra  <amodra@bigpond.net.au>
1262
1263         * emultempl/spu_icache.o_c: Regenerate.
1264
1265 2009-01-12  Alan Modra  <amodra@bigpond.net.au>
1266
1267         * emultempl/spuelf.em (params): Init new fields.
1268         (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
1269         (spu_place_special_section): Adjust placement for soft-icache.  Pad
1270         soft-icache section to a fixed size.  Clear addr_tree.
1271         (spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
1272         sections a little more intelligently.
1273         (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
1274         (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
1275         (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
1276         (OPTION_SPU_LRLIVE): Define.
1277         (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
1278         (PARSE_AND_LIST_OPTIONS): Likewise.
1279         (PARSE_AND_LIST_ARGS_CASES): Handle them.
1280         * emultempl/spu_icache.S: Dummy file.
1281         * emultempl/spu_icache.o_c: Regenerate.
1282         * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
1283         (spu_icache.o_c): Add rule to build.
1284         (CLEANFILES): Zap temp files.
1285         (EXTRA_DIST): Add spu_icache.o_c.
1286         * Makefile.in: Regenerate.
1287
1288 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
1289
1290         * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
1291         (gld..._add_options): Add new option
1292         --use-nul-prefixed-import-tables.
1293         (gld..._handle_option): Likewise.
1294         * pep.em: Same as for pe.em.
1295         * ld.texinfo: Add new option documentation for
1296         --use-nul-prefixed-import-tables.
1297         * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
1298         (make_head): Make prefix leading zero prefix element for
1299         idata$4 and idata$5 dependent to new flag.
1300         (make_import_fixup_entry): Remove idata4/5 prefix.
1301         * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
1302         * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
1303         * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
1304         * NEWS: Add new option.
1305
1306 2009-01-05  Kai Tietz  <kai.tietz@onevision.com>
1307
1308         * emultempl/pe.em: Prefix dollar characters to be outputed in
1309         generated C file.
1310         * emultempl/pep.em: Likewise.
1311
1312 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
1313
1314         * NEWS:  Mention new feature --exclude-modules-for-implib.
1315         * ld.texinfo:  Document new --exclude-modules-for-implib option.
1316         * pe-dll.c (exclude_list_struct):  Change type member from int to
1317         new enumeration exclude_type.
1318         (pe_dll_add_excludes):  Accept exclude_type instead of int param.
1319         (auto_export):  Replace magic constants by exclude_type values and
1320         handle new choice EXCLUDEFORIMPLIB.
1321         (pe_dll_generate_implib):  Accept a pointer to the link_info and
1322         iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
1323         fresh BFDs for any found and link into import lib archive chain.
1324         * pe-dll.h (exclude_type):  Add new enumerated type to replace magic
1325         constants previously used for exclude_list_struct type member.
1326         (pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
1327         * pep-dll.h (exclude_type, pe_dll_add_excludes,
1328         pe_dll_generate_implib):  Likewise to all the above.
1329         * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
1330         getopts long option code for new --exclude-modules-for-implib option.
1331         (gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
1332         (gld_${EMULATION_NAME}_list_options):  List usage for it.
1333         (gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
1334         values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
1335         (gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
1336         calling pe_dll_generate_implib.
1337         * emultempl/pep.em (options):  Define new enumerated value for getopts
1338         long option code for new --exclude-modules-for-implib option.
1339         (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
1340         gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
1341         Again, likewise to all the above.
1342
1343 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
1344
1345         * pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
1346         (libnamencmp):  New function.
1347         (auto_export):  Use it in place of strncmp when filtering libraries.
1348
1349 For older changes see ChangeLog-2008
1350 \f
1351 Local Variables:
1352 mode: change-log
1353 left-margin: 8
1354 fill-column: 74
1355 version-control: never
1356 End: