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