PR 6943
[platform/upstream/binutils.git] / ld / ChangeLog
1 2008-10-05  Alan Modra  <amodra@bigpond.net.au>
2
3         PR 6943
4         * scripttempl/avr.sc (.bss): Set lma when relocating.
5         (.bss, .noinit): No need to set vma when relocating.
6         (.text, .bss, ,noinit): Set vma to zero when not relocating.
7
8 2008-10-04  Alan Modra  <amodra@bigpond.net.au>
9
10         PR 6931
11         * ldemul.c (ldemul_place_orphan): Add "constraint" param.
12         * ldemul.h (ldemul_place_orphan): Update prototype.
13         (struct ld_emulation_xfer_struct <place_orphan>): Likewise add param.
14         * ldlang.c (unique_section_p): Make static.
15         (lang_output_section_statement_lookup): Optimise creation of SPECIAL
16         sections.
17         (lang_insert_orphan): Add "constraint" param.  Pass to
18         lang_enter_output_section_statement.
19         (init_os): Don't use an existing bfd section for SPECIAL sections.
20         (lang_place_orphans): Don't rename unique output sections, instead
21         mark their output section statements SPECIAL.
22         * ldlang.h (lang_insert_orphan): Update prototype.
23         (unique_section_p): Delete.
24         * emultempl/beos.em (place_orphan): Add "constraint" param.
25         * emultempl/elf32.em (place_orphan): Likewise.  Don't match existing
26         output sections if set.
27         * emultempl/pe.em (place_orphan): Likewise.
28         * emultempl/pep.em (place_orphan): Likewise.
29         * emultempl/mmo.em (mmo_place_orphan): Update.
30         * emultempl/spuelf.em (spu_place_special_section): Update.
31
32 2008-10-03  Alan Modra  <amodra@bigpond.net.au>
33
34         PR 6931
35         * ldemul.c (ldemul_place_orphan): Add "name" param.
36         * ldemul.h (ldemul_place_orphan): Update prototype.
37         (struct ld_emulation_xfer_struct <place_orphan>): Likewise.
38         * ldlang.c (lang_place_orphans): Generate unique section names here..
39         * emultempl/elf32.em (place_orphan): ..rather than here.  Don't
40         directly use an existing output section statement that has no
41         bfd section.
42         * emultempl/pe.em (place_orphan): Likewise.
43         * emultempl/pep.em (place_orphan): Likewise.
44         * emultempl/beos.em (place_orphan): Adjust.
45         * emultempl/spuelf.em (spu_place_special_section): Adjust
46         place_orphan call.
47         * emultempl/genelf.em (gld${EMULATION_NAME}_after_open): New function.
48         (LDEMUL_AFTER_OPEN): Define.
49
50 2008-09-30  Joseph Myers  <joseph@codesourcery.com>
51
52         * emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd
53         and .rela.branch_lt.
54
55 2008-09-30  Alan Modra  <amodra@bigpond.net.au>
56
57         * Makefile.am: Run "make dep-am".
58         * Makefile.in: Regenerate.
59
60 2008-09-29  Peter O'Gorman  <pogma@thewrittenword.com>
61             Steve Ellcey  <sje@cup.hp.com>
62
63         * configure: Regenerate for new libtool.
64         * aclocal.m4: Ditto.
65         * Makefile.in: Ditto.
66
67 2008-09-29  Kai Tietz  <kai.tietz@onevision.com>
68
69         * pe-dll.c (make_import_fixup_entry): Make sure reloc is addend.
70
71 2008-09-29  Nick Clifton  <nickc@redhat.com>
72
73         * po/vi.po: Updated Vietnamese translation.
74
75 2008-09-25  Alan Modra  <amodra@bigpond.net.au>
76
77         * ldexp.c (fold_binary): Evaluate rhs when lhs not valid.
78
79 2008-09-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
80
81         * configure.in: Call AC_SYS_LARGEFILE.
82         * config.in: Regenerate.
83         * configure: Regenerate.
84
85 2008-09-09  Peter Rosin  <peda@lysator.liu.se>  (tiny change)
86
87         * emultempl/pe.em (pe_find_data_imports): Add trailing newline
88         to warning message.
89         * emultempl/pep.em (pep_find_data_imports): Likewise.
90
91 2008-09-08  H.J. Lu  <hongjiu.lu@intel.com>
92
93         2008-09-07  Alan Modra  <amodra@bigpond.net.au>
94
95         * emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Updated.
96         * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Likewise.
97
98 2008-09-08  Tristan Gingold  <gingold@adacore.com>
99
100         * NEWS: Add a marker for the 2.19 features.
101
102 2008-09-07  Alan Modra  <amodra@bigpond.net.au>
103
104         * ldlang.h (lang_output_section_find): Define.
105         (lang_output_section_statement_lookup): Update prototype.
106         * ldlang.c (lang_output_section_find,
107         lang_output_section_statement_lookup_1): Merge into..
108         (lang_output_section_statement_lookup): ..here.  Update all callers.
109         (process_insert_statements): Set constraint negative
110         for output section statements we might be inserting.  Make error
111         fatal on not finding insertion section.
112         (lang_output_section_find): Rather than comparing
113         output_section_statement.constraint against -1, test whether
114         it is postive.
115         (lang_output_section_statement_lookup_1): Likewise.
116         (output_prev_sec_find, strip_excluded_output_sections): Likewise.
117         (lang_record_phdrs): Likewise.
118         * emultempl/elf32.em (output_rel_find): Likewise.
119         * NEWS: Mention INSERT.
120
121 2008-08-26  Nick Clifton  <nickc@redhat.com>
122
123         PR 6727
124         * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Scan all
125         input sections in all input bfds and always select the last
126         suitable one, so that interworking stubs are always processed
127         after all other input sections.
128         (arm_elf_before_allocation): Remove redundant use of
129         output_has_begun flag.
130
131 2008-08-24  Alan Modra  <amodra@bigpond.net.au>
132
133         * configure.in: Update a number of obsolete autoconf macros.
134         * configure: Regenerate.
135         * aclocal.m4: Regenerate.
136
137 2008-08-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
138
139         PR ld/6833
140         * ldexp.c (fold_binary <DATA_SEGMENT_ALIGN>): Do not align
141         EXPLD.DATASEG.MIN_BASE.
142         * ldlang.c (lang_size_sections): New variable OLD_BASE.  Rename
143         OLD_MIN_BASE to MIN_BASE with the former alignment from `ldexp.c'.
144         Use OLD_BASE now for the minimal base check after the base decrease by
145         the maximum alignment found.
146
147 2008-08-17  Alan Modra  <amodra@bigpond.net.au>
148
149         PR 6478
150         * ldcref.c (check_local_sym_xref): Use bfd_generic_link_read_symbols.
151         Don't free symbol pointer array.
152         (check_refs): Likewise.
153         * ldmain.c (warning_callback): Likewise.
154         * ldmisc.c (vfinfo): Likewise.
155         * pe-dll.c (process_def_file): Likewise.
156         (pe_walk_relocs_of_symbol, generate_reloc): Likewise.
157         * emultempl/pe.em (pe_find_data_imports): Likewise.
158         (gld_${EMULATION_NAME}_after_open): Likewise.
159         * emultempl/pep.em (pep_find_data_imports): Likewise.
160         (gld_${EMULATION_NAME}_after_open): Likewise.
161         * ldlang.h (lang_input_statement_type): Delete asymbols, symbol_count,
162         passive_position, closed.
163         * ldlang.c (new_afile): Don't set asymbols and symbol_count.
164         * ldmain.c (add_archive_element): xcalloc lang_input_statement_type.
165
166 2008-08-15  Alan Modra  <amodra@bigpond.net.au>
167
168         PR 6526
169         * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
170         * Makefile.in: Regenerate.
171         * aclocal.m4: Regenerate.
172         * config.in: Regenerate.
173         * configure: Regenerate.
174
175 2008-08-09  Alan Modra  <amodra@bigpond.net.au>
176
177         PR 6753
178         * ldmain.c (check_for_scripts_dir, set_scripts_dir): Delete.
179         (main): Don't set_scripts_dir here.
180         * ldfile.c (check_for_scripts_dir, find_scripts_dir): New functions,
181         largely based on ldmain.c versions.
182         (ldfile_find_command_file): Set up search in script dir here without
183         affecting library search.
184         * Makefile.am (ldmain.o): No need to define SCRIPTDIR.
185         (ldfile.o): New rule.
186         * Makefile.in: Regenerate.
187
188 2008-08-08  Anatoly Sokolov  <aesok@post.ru>
189
190         * Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o,
191         and eavr51.o.
192         Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c.
193         * Makefile.in: Regenerate.
194         * configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35
195         and avr51.
196         * emulparams/avr25.sh: New file.
197         * emulparams/avr31.sh: New file.
198         * emulparams/avr35.sh: New file.
199         * emulparams/avr51.sh: New file.
200
201 2008-08-08  Richard Sandiford  <rdsandiford@googlemail.com>
202             Daniel Jacobowitz  <dan@codesourcery.com>
203
204         * emulparams/elf32bmip.sh (GOT): Define, moving .got.plt to...
205         (OTHER_RELRO_SECTIONS, OTHER_READWRITE_SECTIONS): ...one of these
206         two variables.
207         * emulparams/elf32bmipn32-defs.sh: Likewise.
208         * emultempl/mipself.em: Include ldctor.h, elf/mips.h and elfxx-mips.h.
209         (is_mips_elf): New macro.
210         (stub_file, stub_bfd): New variables.
211         (hook_stub_info): New structure.
212         (hook_in_stub): New function.
213         (mips_add_stub_section): Likewise.
214         (mips_create_output_section_statements): Likewise.
215         (mips_before_allocation): Likewise.
216         (real_func): New variable.
217         (mips_for_each_input_file_wrapper): New function.
218         (mips_lang_for_each_input_file): Likewise.
219         (lang_for_each_input_file): Define.
220         (LDEMUL_BEFORE_ALLOCATION): Likewise.
221         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Likewise.
222
223 2008-08-08  Alan Modra  <amodra@bigpond.net.au>
224
225         * ldfile.c (ldfile_open_file_search): Use concat.
226         (try_open): Don't use a fixed size pathname buffer.
227         (ldfile_find_command_file): Likewise.
228         * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive): If
229         using EXTRA_SHLIB_EXTENSION, don't open twice.
230
231 2008-08-04  Alan Modra  <amodra@bigpond.net.au>
232
233         * Makefile.am (POTFILES.in): Set LC_ALL=C.
234         * Makefile.in: Regenerate.
235         * po/POTFILES.in: Regenerate.
236
237 2008-08-03  Alan Modra  <amodra@bigpond.net.au>
238
239         * Makefile.am (spu_ovl.o): Merge rule into..
240         (spu_ovl.o_c): ..this one.  Only run cpp for spu target.
241         * Makefile.in: Regenerate.
242
243 2008-08-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
244
245         Include the spu_ovl ASCII form in the repository files.
246         * emultempl/spuelf.em: No longer use `bin2c', use now `spu_ovl.o_c'.
247         * Makefile.am (eelf32_spu.c): Depend now on `spu_ovl.o_c'.
248         ($(srcdir)/emultempl/spu_ovl.o_c): New target.
249         ($(srcdir)/emultempl/spu_ovl.o): Rename to...
250         (spu_ovl.o): ...this one.
251         * Makefile.in: Regenerate.
252         * emultempl/spu_ovl.o_c: New file.
253         * emultempl/spu_ovl.o: File removed.
254
255 2008-07-31  Takashi Ono  <t_ono@hkfreak.net>
256
257         * pe-dll.c (generate_relocs): Don't generate relocs for
258         undefined weak symbols.
259
260 2008-07-31  Jan Kratochvil  <jan.kratochvil@redhat.com>
261
262         * emultempl/spuelf.em: Abort on the missing required `spu_ovl.o'.
263
264 2008-07-30  Alan Modra  <amodra@bigpond.net.au>
265
266         * emultempl/pe.em, emultempl/pep.em: Silence gcc warnings.
267
268 2008-07-18  Joseph Myers  <joseph@codesourcery.com>
269
270         * ld.texinfo (--no-wchar-size-warning): Document new ARM option.
271         * emultempl/armelf.em (no_wchar_size_warning): New.
272         (arm_elf_create_output_section_statements): Pass
273         no_wchar_size_warning to arm_elf_create_output_section_statements.
274         (OPTION_NO_WCHAR_SIZE_WARNING): New.
275         (PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning.
276         (PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning.
277         (PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning.
278
279 2008-07-15  Jie Zhang  <jie.zhang@analog.com>
280
281         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
282
283 2008-07-12  Craig Silverstein  <csilvers@google.com>
284
285         PR ld/6741
286         * configure.in: Check for, and include, libz.a if it is present.
287         * configure: Regenerate.
288         * config.in: Regenerate.
289
290 2008-07-12  Jie Zhang  <jie.zhang@analog.com>
291
292         Revert
293         2008-07-12  Jie Zhang  <jie.zhang@analog.com>
294         * Makefile.am (eelf32bfin.c): Depend on bfin.em.
295         (eelf32bfinfd.c): Likewise.
296         * Makefile.in: Regenerate.
297         * gen-doc.texi: Set Blackfin.
298         * ld.texinfo: Document --sep-code and Blackfin specific
299         options.
300         * ldmain.c (main): Initialize link_info.sep_code.
301         * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
302         (ld_options[]): Add --sep-code.
303         (parse_args): Deal with --sep-code.
304         * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
305         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
306         * emultempl/bfin.em: New file.
307
308 2008-07-12  Jie Zhang  <jie.zhang@analog.com>
309
310         * Makefile.am (eelf32bfin.c): Depend on bfin.em.
311         (eelf32bfinfd.c): Likewise.
312         * Makefile.in: Regenerate.
313         * gen-doc.texi: Set Blackfin.
314         * ld.texinfo: Document --sep-code and Blackfin specific
315         options.
316         * ldmain.c (main): Initialize link_info.sep_code.
317         * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
318         (ld_options[]): Add --sep-code.
319         (parse_args): Deal with --sep-code.
320         * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
321         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
322         * emultempl/bfin.em: New file.
323
324 2008-07-09  Danny Smith  <dannysmith@users.sourceforge.net>
325
326            *pe-dll.c (autofilter_symbolprefixlist): Excude all symbols
327            starting with ".".
328            Exclude "_IMPORT_DESCRIPTOR_".
329            (autofilter_symbolsuffixlist): Exclude "_NULL_THUNK_DATA".
330            (autofilter_symbollist_generic): Don't check for ".text".
331            Exclude "_NULL_IMPORT_DESCRIPTOR".
332            (autofilter_symbollist_i386): Likewise.
333
334 2008-07-07  Alan Modra  <amodra@bigpond.net.au>
335
336         * emultempl/armelf.em (elf32_arm_add_stub_section): Use
337         bfd_make_section_with_flags.
338         * emultempl/avrelf.em (avr_elf_create_output_section_statements):
339         Likewise.
340         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
341         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
342         * emultempl/m68kcoff.em (gld${EMULATION_NAME}_after_open): Likewise.
343         * emultempl/m68kelf.em (m68k_elf_after_open): Likewise.
344         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
345         * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation):
346         Likewise.
347
348 2008-07-06  Nathan Sidwell  <nathan@codesourcery.com>
349
350         * ld.texinfo (File Commands): Document that INCLUDE can be used in
351         several different places.
352         * ldgram.y (statement, memory_spec, section): Allow INCLUDE.
353         (memory, memory_spec_list): Simplify BNF
354         (memory_spec_list_opt): New rule.
355         * ldlex.l (INCLUDE): Recognize in EXPRESSION.
356
357 2008-06-20  Alan Modra  <amodra@bigpond.net.au>
358
359         * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Make "can not
360         build overlay stubs" a fatal error.
361
362 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
363
364         * config.in: Regenerate.
365         * configure: Regenerate.
366
367 2008-06-17  Alan Modra  <amodra@bigpond.net.au>
368
369         * emultempl/spuelf.em (extra_stack_space): New variable.
370         (gld${EMULATION_NAME}_finish): Pass it to spu_elf_check_vma.
371         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
372         PARSE_AND_LIST_ARGS_CASES): Handle --extra-stack-space.
373         * emultempl/spu_ovl.S: Mask interrupts during dma and update of
374         overlay manager structures.
375         * emultempl/spu_ovl.o: Regenerate.
376
377 2008-06-16  Hans-Peter Nilsson  <hp@bitrange.com>
378
379         * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only
380         mention it as being special for global symbols.
381
382 2008-06-12  Nick Clifton  <nickc@redhat.com>
383
384         * ldlang.c (print_output_section_statement): If the output section
385         statement has an update_dot_tree expression, apply it to
386         print_dot.
387         (print_input_section): Do not update print_dot if it would move
388         print_dot backwards.
389         (lang_do_assignments_1): If the output section statement has an
390         update_dot_tree expression apply it to dot.
391
392 2008-06-07  Alan Modra  <amodra@bigpond.net.au>
393
394         * NEWS: Mention archive:path patterns.
395         * ld.texinfo: Likewise.
396         * ldlang.c: Formatting throughout.
397         (archive_path): Only assume "[A-Za-z]:" is a dos drive.
398         (input_statement_is_archive_path): New function, extracted from..
399         (walk_wild): ..here.
400         (walk_wild_consider_section): Match archive:path here too.
401         (init_map_userdata, sort_def_symbol): Convert to ISO C.
402         * ldmain.c (main): Set link_info.path_separator.
403         * emultempl/spuelf.em (choose_target): Don't set it here.
404
405 2008-06-06  Alan Modra  <amodra@bigpond.net.au>
406
407         * ldlang.c (name_match): New function.
408         (unique_section_p, walk_wild_consider_section): Use it here.
409         (walk_wild_section_general): And here.
410         (archive_path): New function.
411         (walk_wild): Match archive:path filespecs.
412         (open_input_bfds): Don't load archive:path files.
413         * emultempl/spuelf.em (choose_target): Set path_separator.
414         * emulparams/elf32_spu.sh: Add ._ea.* sections to ._ea output.
415
416 2008-06-04  Nick Clifton  <nickc@redhat.com>
417
418         * ld.texinfo (Orphan Sections): Fix texi typo.
419
420 2008-06-04  Chris Metcalf  <cmetcalf@tilera.com>
421
422         * lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.
423         (ld_options): Add entry for --no-fatal-warnings.
424         (parse_args): Handle OPTION_NO_WARN_FATAL.
425         * ld.texinfo (Options): Document new command line switch.
426
427 2008-06-04  Alan Modra  <amodra@bigpond.net.au>
428
429         * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
430
431 2008-06-02  Nathan Sidwell  <nathan@codesourcery.com>
432
433         * ldlang.c (closest_target_match): Skip generic big and little
434         endian ELF targets.
435
436 2008-05-31  Evandro Menezes  <evandro@yahoo.com>
437
438         PR ld/6430
439         * ld.h (enum sort_order): New.
440         * ldlang.c (lang_check: Fix comment.
441         (lang_common): Sort commons in ascending or descending order.
442         (lang_one_common): Likewise.
443         * lexsup.c (ld_options): Have --sort-common take an option
444         argument.
445         (parse_args): Handle argument to --sort-common.
446         * ld.texinfo (--sort-common): Document new optional argument.
447         * NEWS: Mention new feature.
448
449 2008-05-28  Christophe Lyon  <christophe.lyon@st.com>
450         
451         * ld.texinfo: State that farcalls stubs are supported for ARM-EABI
452         only.
453
454 2008-05-27  Kai Tietz  <kai.tietz@onevision.com>
455
456         * pe-dll.c (fill_edata): Make sure we calculate vma's in
457         type bfd_vma.
458         (generate_reloc): Likewise.
459         (pe_implied_import_dll): Likewise.
460
461 2008-05-21  Nick Clifton  <nickc@redhat.com>
462
463         PR ld/6519
464         * ld.texinfo (Orphan Sections): Mention that the linker will
465         provide start and stop symbols for orphaned sections if their
466         names are valid C identifiers.
467         * NEWS: Add an addendum to the description of the linker feature
468         for providing orphan section start and end symbols.
469
470 2008-05-21  Maxim Kuvyrkov  <maxim@codesourcery.com>
471
472         * configure.in (--enable-got): New option.  Handle it.
473         * configure: Regenerate.
474         * config.in: Regenerate.
475         * emultempl/m68kelf.em: (got_handling_target_default): New shell
476         variable.
477         (GOT_HANDLING_TARGET_DEFAULT): New macro.
478         (GOT_HANDLING_DEFAULT): New macro.  Initialize it from configure
479         option if one was given.
480         (got_handling): New static variable.
481         (elf_m68k_create_output_section_statements): New static function
482         implementing hook.
483         (PARSE_AND_LIST_PROLOGUE): Define shell variable.
484         (OPTION_GOT): New macro.
485         (PARSE_AND_LIST_LONGOPTS): Define shell variable.  Specify
486         --got option.
487         (got): New linker option.
488         (PARSE_AND_LIST_OPTIONS): Define shell variable.  Print help string
489         for --got option.
490         (PARSE_AND_LIST_ARGS_CASES): Define shell variable.  Handle --got
491         option. 
492         * ld.texinfo: Document --got=<type> option.
493         * gen-doc.texi: Add M68K.
494         * NEWS: Mention the new feature.
495
496 2008-05-21  Evandro Menezes  <evandro@yahoo.com>
497
498         PR ld/6430
499         * ld.texinfo (--sort-common): Correct documentation to indicate
500         that sorting is performed by alignment, not size, biggest
501         alignment first.
502
503 2008-05-21  Christophe Lyon  <christophe.lyon@st.com>
504             Nick Clifton  <nickc@redhat.com>
505
506         * ld.texinfo (ARM): Document --stub-group-size=N option.
507         Move description of --pic-veneer option into the ARM section.
508         * NEWS: Mention the support for long function calls.
509
510 2008-05-15  Christophe Lyon  <christophe.lyon@st.com>
511         
512         * emultempl/armelf.em (build_section_lists): New function.
513         (stub_file): Define.
514         (need_laying_out): Define.
515         (group_size): Define.
516         (hook_stub_info): Define.
517         (hook_in_stub): New function.
518         (elf32_arm_add_stub_section): New function.
519         (gldarm_layout_sections_again): New function.
520         (gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
521         stubs for long calls if needed.
522         (arm_elf_create_output_section_statements): create stub_file bfd.
523         (arm_for_each_input_file_wrapper): New function.
524         (arm_lang_for_each_input_file): New function.
525         (lang_for_each_input_file): Define.
526         (PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
527         (PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
528         (PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
529         (PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
530         (LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
531         * lang.c (print_input_statement): Skip if bfd has
532         BFD_LINKER_CREATED.
533
534 2008-05-14  Alan Modra  <amodra@bigpond.net.au>
535
536         * Makefile.in: Regenerate.
537
538 2008-05-09  Kai Tietz  <kai.tietz@onevision.com>
539
540         ld/PR6502
541         * emultempl/pep.em (compute_dll_image_base): Use bfd_vma instead
542         of long and change return type to bfd_vma.
543         (definfo): Change type of address from long to bfd_vma.
544         (set_pep_value): Replace strtoul to strtoull.
545         (gld_${EMULATION_NAME}_set_symbols): use bfd_vma instead of long..
546         * pe-dll.c (pe_dll_generate_def_file): Use fprintf_vma to print
547         ImageBase.
548         (quick_reloc): Change argument address from int to bfd_size_type.
549
550 2008-05-08  Tom Tromey  <tromey@redhat.com>
551
552         * ld.texinfo (PowerPC64 ELF64): Fix typo.
553
554 2008-05-08  Alan Modra  <amodra@bigpond.net.au>
555
556         * elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
557         * elf32ppc.sh: If building with spu support, put ".data.spehandle"
558         sections at the start of ".data" and provide a symbol to locate
559         the directory of embedded spe programs.
560
561 2008-05-08  Alan Modra  <amodra@bigpond.net.au>
562
563         * ldexp.c (exp_print_token): Add ABSOLUTE, MIN_K, ASSERT_K.  Correct
564         MAX_K.
565         (fold_binary <SEGMENT_START>): Set expld.result.section to
566         current section.  Expand comment.  Formatting.
567         (fold_name <DEFINED>): Set expld.result.section to current section.
568
569 2008-04-28  Nathan Sidwell  <nathan@codesourcery.com>
570
571         * ldlang.c (lang_size_sections_1): Don't check LMA overflow on
572         non-load sections.
573
574 2008-04-25  Michael Frysinger  <vapier@gentoo.org>
575
576         * configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd
577         and targ_extra_emuls to elf32bfin.
578
579 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
580
581         * aclocal.m4: Regenerate.
582         * configure: Regenerate.
583
584 2008-04-03  Kai Tietz  <kai.tietz@onevision.com>
585
586         * scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
587
588 2008-04-08  Alan Modra  <amodra@bigpond.net.au>
589
590         * po/POTFILES.in: Regenerate.
591
592 2008-04-08  Alan Modra  <amodra@bigpond.net.au>
593
594         * emultempl/spuelf.em (auto_overlay, auto_overlay_file,
595         auto_overlay_fixed, auto_overlay_reserved, my_argc, my_argv): New vars.
596         (spu_before_allocation): Warn on --auto-overlay and existing overlays.
597         (struct tflist, clean_tmp): Move.
598         (new_tmp_file): New function, extracted from..
599         (embedded_spu_file): ..here.
600         (spu_elf_open_overlay_script, spu_elf_relink): New function.
601         (gld${EMULATION_NAME}_finish): Pass a bunch of --auto-overlay params.
602         Warn on --auto-overlay and zero local store.
603         (gld${EMULATION_NAME}_choose_target): New function to stash argv.
604         (OPTION_SPU_AUTO_OVERLAY, OPTION_SPU_AUTO_RELINK,
605         OPTION_SPU_OVERLAY_RODATA, OPTION_SPU_FIXED_SPACE,
606         OPTION_SPU_RESERVED_SPACE, OPTION_SPU_NO_AUTO_OVERLAY): Define.
607         (PARSE_AND_LIST_LONGOPTS): Add entries for new options.
608         (PARSE_AND_LIST_OPTIONS): Likewise.
609         (PARSE_AND_LIST_ARGS_CASES): Likewise.
610         (LDEMUL_CHOOSE_TARGET): Define.
611
612 2008-04-03  Kai Tietz  <kai.tietz@onevision.com>
613
614         PR ld/6026
615         * pe-dll.c (make_head): Fix iat and thunk addend offset.
616
617 2008-03-31  Nick Clifton  <nickc@redhat.com>
618
619         * po/fr.po: Updated French translation.
620
621 2008-03-24  Ian Lance Taylor  <iant@google.com>
622
623         The sha1 code is now in libiberty.
624         * sha1.c: Remove.
625         * sha1.h: Remove.
626         * Makefile.am (CFILES): Remove sha1.c.
627         (HFILES): Remove sha1.h.
628         (OFILES): Remove sha1.o.
629         (ld_new_SOURCES): Remove sha1.c.
630         (sha1.o): Remove target.
631         * Makefile.in: Rebuild.
632
633 2008-03-20  Alan Modra  <amodra@bigpond.net.au>
634
635         * emultempl/spuelf.em: Update calls to elf32-spu.c funcs.
636
637 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
638
639         * aclocal.m4: Regenerate.
640         * configure: Likewise.
641         * Makefile.in: Likewise.
642
643 2008-03-14  Alan Modra  <amodra@bigpond.net.au>
644
645         * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect
646         spu_elf_build_stubs with is_spu_target.
647
648 2008-03-13  Alan Modra  <amodra@bigpond.net.au>
649
650         * Makefile.am: Run "make dep-am".
651         * Makefile.in: Regenerate.
652         * configure: Regenerate.
653
654 2008-03-06  Joseph Myers  <joseph@codesourcery.com>
655             Roman Zippel  <zippel@linux-m68k.org>
656
657         * emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define.
658         (COMMONPAGESIZE): Define.
659
660 2008-02-22  Nick Clifton  <nickc@redhat.com>
661
662         PR ld/5785
663         * ldlang.c (lang_size_sections_1): Honour the setting of an
664         lma_region even if there is no vma region set, or the vma region
665         is the same as the lma region.
666
667 2008-02-18  Nick Clifton  <nickc@redhat.com>
668
669         * scripttempl/armbpabi.sc (ENTRY): Do not define when performing a
670         relocatable link.
671         * scripttempl/elf32cr16.sc: Likewise.
672         * scripttempl/elf32cr16c.sc: Likewise.
673         * scripttempl/elf32crx.sc: Likewise.
674         * scripttempl/elf32sh-symbian.sc: Likewise.
675         * scripttempl/elf_chaos.sc: Likewise.
676         * scripttempl/elfd10v.sc: Likewise.
677         * scripttempl/elfi370.sc: Likewise.
678         * scripttempl/elfm68hc11.sc: Likewise.
679         * scripttempl/elfm68hc12.sc: Likewise.
680         * scripttempl/ip2k.sc: Likewise.
681         * scripttempl/iq2000.sc: Likewise.
682         * scripttempl/mep.sc: Likewise.
683         * scripttempl/v850.sc: Likewise.
684         * scripttempl/xstormy16.sc: Likewise.
685
686 2008-02-16  Alan Modra  <amodra@bigpond.net.au>
687
688         PR ld/5761
689         * ldexp.c (fold_name <LOADADDR>): Check result of evaluating
690         load_base before calling make_abs.
691
692 2008-02-15  Alan Modra  <amodra@bigpond.net.au>
693
694         * emultempl/alphaelf.em (alpha_after_open): Use elf_object_id.
695         * emultempl/hppaelf.em (hppaelf_create_output_section_statements):
696         Likewise.
697         * emultempl/ppc64elf.em (ppc_create_output_section_statements):
698         Likewise.
699         * emultempl/ppc32elf.em (is_ppc_elf32_vec): Delete.  Replace all
700         uses with..
701         (is_ppc_elf): ..this new macro.
702
703 2008-02-15  Alan Modra  <amodra@bigpond.net.au>
704
705         * ldmain.h (output_bfd): Delete.
706         * ldmain.c (output_bfd): Delete.
707         Replace all occurrences of output_bfd with link_info.output_bfd.
708         * ldcref.c: Likewise.
709         * ldctor.c: Likewise.
710         * ldemul.c: Likewise.
711         * ldexp.c: Likewise.
712         * ldfile.c: Likewise.
713         * ldlang.c: Likewise.
714         * ldmisc.c: Likewise.
715         * ldwrite.c: Likewise.
716         * pe-dll.c: Likewise.
717         * emultempl/aix.em: Likewise.
718         * emultempl/alphaelf.em: Likewise.
719         * emultempl/armcoff.em: Likewise.
720         * emultempl/armelf.em: Likewise.
721         * emultempl/avrelf.em: Likewise.
722         * emultempl/beos.em: Likewise.
723         * emultempl/elf-generic.em: Likewise.
724         * emultempl/elf32.em: Likewise.
725         * emultempl/gld960.em: Likewise.
726         * emultempl/hppaelf.em: Likewise.
727         * emultempl/irix.em: Likewise.
728         * emultempl/linux.em: Likewise.
729         * emultempl/lnk960.em: Likewise.
730         * emultempl/m68hc1xelf.em: Likewise.
731         * emultempl/mmix-elfnmmo.em: Likewise.
732         * emultempl/mmo.em: Likewise.
733         * emultempl/pe.em: Likewise.
734         * emultempl/pep.em: Likewise.
735         * emultempl/ppc32elf.em: Likewise.
736         * emultempl/ppc64elf.em: Likewise.
737         * emultempl/scoreelf.em: Likewise.
738         * emultempl/sh64elf.em: Likewise.
739         * emultempl/spuelf.em: Likewise.
740         * emultempl/sunos.em: Likewise.
741         * emultempl/vanilla.em: Likewise.
742         * emultempl/vxworks.em: Likewise.
743         * emultempl/xtensaelf.em: Likewise.
744         * emultempl/z80.em: Likewise.
745         * ldlang.c (open_output): Don't return output, instead write
746         link_info_output_bfd directly.
747         * emultempl/alphaelf.em: Replace occurrences of link_info.hash->creator
748         with link_info.output_bfd->xvec.
749         * emultempl/hppaelf.em: Likewise.
750         * emultempl/ppc32elf.em: Likewise.
751         * emultempl/ppc64elf.em: Likewise.
752         * emultempl/spuelf.em: Likewise.
753
754 2008-02-07  Alan Modra  <amodra@bigpond.net.au>
755
756         * ldlang.c (new_afile): Don't pass unadorned NULL to concat.
757         * ldfile.c (ldfile_add_library_path): Likewise.
758         * emultempl/elf32.em (check_ld_elf_hints, check_ld_so_conf): Likewise.
759         * emultempl/lnk960.em (lnk960_before_parse): Likewise.
760         * emultempl/spuelf.em (embedded_spu_file): Likewise.
761
762 2008-02-07  Alan Modra  <amodra@bigpond.net.au>
763
764         * emultempl/spu_ovl.S: Use low bit of _ovly_table.size as
765         a "present" bit rather than low bit of .buf.  Correct indexing
766         into _ovly_buf_table.  Use relative loads and stores to access
767         overlay manager local vars.
768         * emultempl/spu_ovl.o: Regenerate.
769
770 2008-02-04  H.J. Lu  <hongjiu.lu@intel.com>
771
772         PR 5715
773         * configure: Regenerated.
774
775 2008-01-31  Marc Gauthier  <marc@tensilica.com>
776
777         * configure.tgt (xtensa*-*-*): Recognize processor variants.
778
779 2008-01-28  Fabian Groffen  <grobian@gentoo.org>
780
781         * configure.tgt (x86_64-*-solaris2): Add support for this target.
782
783 2008-01-28  Vincent Riviere  <vincent.riviere@freesbee.fr>
784
785         PR ld/5652
786         * genscripts.sh: Check for the existence of BASH_LINENO not just
787         the BASH shell before generating line numbers in the emulation
788         file.
789
790 2008-01-28  Alan Modra  <amodra@bigpond.net.au>
791
792         * emultempl/spu_ovl.S: Rewrite.
793         * emultempl/spu_ovl.o: Regenerate.
794         * emultempl/spuelf.em (toe): Delete.
795         (spu_place_special_section): Add param to control section placement.
796         Adjust callers.
797         (spu_elf_load_ovl_mgr): Adjust for struct _spu_elf_section_data
798         changes.
799         (spu_before_allocation): Adjust spu_elf_size_stubs call.
800         (gld${EMULATION_NAME}_finish): Adjust spu_elf_build_stubs call.
801
802 2008-01-25  H.J. Lu  <hongjiu.lu@intel.com>
803
804         PR ld/5670
805         * ldlang.c (process_insert_statements): Silence gcc 4.1 alias
806         warning.
807
808 2008-01-25  Alan Modra  <amodra@bigpond.net.au>
809
810         * ld.texinfo (INSERT): Describe.
811         * ldgram.y (ldgram_in_script, ldgram_had_equals): Delete.
812         (INSERT_K, AFTER, BEFORE): Add as tokens.
813         (ifile_p1): Handle INSERT statements.
814         (saved_script_handle, force_make_executable): Move to..
815         * ldmain.c: ..here.
816         (previous_script_handle): New global var.
817         * ldmain.h (saved_script_handle, force_make_executable): Declare.
818         (previous_script_handle): Likewise.
819         * ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens.
820         * lexsup.c (parge_args <-T>): Set previous_script_handle.
821         * ldlang.c (lang_for_each_statement_worker): Handle insert statement.
822         (map_input_to_output_sections, print_statement): Likewise.
823         (lang_size_sections_1, lang_do_assignments_1): Likewise.
824         (insert_os_after): New function, extracted from..
825         (lang_insert_orphan): ..here.
826         (process_insert_statements): New function.
827         (lang_process): Call it.
828         (lang_add_insert): New function.
829         * ldlang.h (lang_insert_statement_enum): New.
830         (lang_insert_statement_type): New.
831         (lang_statement_union_type): Add insert_statement.
832         (lang_add_insert): Declare.
833
834 2008-01-18  Bob Wilson  <bob.wilson@acm.org>
835
836         * scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-id
837         changes from elf.sc.
838
839 2008-01-16  Alan Modra  <amodra@bigpond.net.au>
840
841         * ldlang.c (lang_size_sections_1): Simplify SEC_NEVER_LOAD test.
842
843 2008-01-16  Alan Modra  <amodra@bigpond.net.au>
844
845         * ldlang.h (lang_afile_asection_pair_statement_enum): Delete.
846         (lang_afile_asection_pair_statement_type): Delete.
847         (lang_statement_union_type): Delete afile_asection_pair_statement.
848         * ldlang.c (lang_insert_orphan): Delete case handling the above.
849         (map_input_to_output_sections, print_statement): Likewise.
850
851 2008-01-15  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
852
853         * emulparams/shlelf_linux.sh (DATA_START_SYMBOLS): Use PROVIDE
854         with __data_start.
855         * emulparams/shelf_nbsd.sh (DATA_START_SYMBOLS): Likewise.
856
857 2008-01-15  Alan Modra  <amodra@bigpond.net.au>
858
859         PR 5604
860         * ldlang.c (lang_gc_sections): Move code to set SEC_KEEP on entry
861         syms to _bfd_elf_gc_keep.
862         * emultempl/ppc64elf.em (ppc_before_allocation): Don't call
863         ppc64_elf_edit_opd if no_opd_opt.
864
865 2008-01-11  Tristan Gingold  <gingold@adacore.com>
866             Eric Botcazou  <ebotcazou@adacore.com>
867
868         * ldlang.c (lang_end): Warns if the entry point is not found when
869         --gc-sections.
870         Emit an error if no root is specified when --gc-sections -r.
871         * ld.texinfo (Options): Document that --gc-sections is compatible
872         with -r and -q.
873         * ldmain.c (main): Do not error out if -r and --gc-sections.
874         * scripttempl/elf.sc: Emit ENTRY command only if relocating.
875
876 2008-01-10  Daniel Jacobowitz  <drow@sources.redhat.com>
877
878         PR ld/5533
879         * ldlang.c (lang_end): Issue a warning for a missing start symbol
880         of a shared library if the symbol was specified on the command
881         line.
882
883 2008-01-10  Alan Modra  <amodra@bigpond.net.au>
884
885         * ld.texinfo (--gc-sections): Describe linker behaviour.
886
887 For older changes see ChangeLog-2007
888 \f
889 Local Variables:
890 mode: change-log
891 left-margin: 8
892 fill-column: 74
893 version-control: never
894 End: