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