1 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3 * configure: Regenerate.
5 2008-12-10 Alan Modra <amodra@bigpond.net.au>
7 * emultempl/spuelf.em (params): Init new field.
8 (OPTION_SPU_NUM_REGIONS): Define.
9 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --num-regions.
10 (PARSE_AND_LIST_ARGS_CASES): Handle --num-regions.
12 2008-12-10 Alan Modra <amodra@bigpond.net.au>
14 * emultempl/spuelf.em (params): New var, used instead of various others.
15 Adjust use throughout file.
16 (spu_after_open): Call spu_elf_setup.
17 (spu_place_special_section): Tidy.
18 (spu_elf_load_ovl_mgr): Return total size of sections loaded. Move
19 code setting overlay section alignment to..
20 (spu_before_allocation): ..here.
22 2008-12-03 Nick Clifton <nickc@redhat.com>
24 * NEWS: Mention new feature.
25 * pe-dll.c (process_def_file): Replace use of redundant
26 BFD_FORT_COMM_DEFAULT_VALUE with 0.
27 * scripttempl/elf.sc: Add .rel.ifunc.dyn and .rela.ifunc.dyn
30 2008-12-02 Kai Tietz <kai.tietz@onevision.com>
32 * pe-dll.c (make_runtime_pseudo_reloc): Make symtab big enough to
35 2008-11-27 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
37 * emultempl/cr16elf.em (cr16_after_open): New function to handle
38 CR16 ELF embedded reloc creation (ld --embedded-relocs).
39 (check_sections): New function.
40 (LDEMUL_AFTER_OPEN): Define.
41 * emulparams/elf32cr16.sh (EMBEDDED): Define.
43 2008-11-26 Alan Modra <amodra@bigpond.net.au>
46 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Update
47 for changes to struct bfd_elf_version_expr.
48 * ldlang.c (lang_vers_match, version_expr_head_hash): Likewise.
49 (version_expr_head_eq, lang_finalize_version_expr_head): Likewise.
50 (lang_register_vers_node): Likewise.
51 (lang_new_vers_pattern): Likewise. Ensure "literal" is set when
52 no glob chars found in "pattern".
53 (realsymbol): Correct backslash quote logic.
54 * ld.texinfo (VERSION): Warn about global wildcards.
56 2008-11-24 Alan Modra <amodra@bigpond.net.au>
58 * ldlang.c (lang_record_phdrs): Don't add orphans to PT_INTERP header.
60 2008-11-19 Nick Clifton <nickc@redhat.com>
62 * fdl.texi: Update to v1.3
63 * ld.texinfo: Change license to v1.3.
65 2008-11-17 Ulrich Weigand <uweigand@de.ibm.com>
67 * configure.tgt [spu-*-elf*]: Set NATIVE_LIB_DIRS to '/lib'.
69 2008-11-17 Nick Clifton <nickc@redhat.com>
71 * ldver.c: Update copyright year.
73 2008-11-14 Kai Tietz <kai.tietz@onevision.com>
75 * emultempl/pep.em (..._before_parse): initialize
76 pei386_runtime_pseudo_reloc by version 2.
77 (OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1): New option.
78 (OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2): New option.
79 (make_import_fixup): Use relocation size to read addend.
80 * emultempl/pe.em (..._before_parse): initialize
81 pei386_runtime_pseudo_reloc by version 1.
82 (OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1): New option.
83 (OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2): New option.
84 * pe-dll.c (pe-dll.h): Remove useless include.
85 (make_runtime_pseudo_reloc): Change addend to use bfd_vma.
86 Handle the two variants of pseudo-relocation.
87 (pe_create_import_fixup): Change addend to type bfd_vma.
88 Modify for the two pseudo_relocation variants.
89 (runtime_pseudp_reloc_v2_init): New static variable.
90 * pe-dll.h (pe_create_import_fixup): Change addend argument type
92 * pep-dll.h (pep_create_import_fixup): Likewise.
95 2008-11-14 Alan Modra <amodra@bigpond.net.au>
97 * Makefile.am (spu_ovl.o_c): Add missing line continuations.
98 * Makefile.in: Regenerate.
100 2008-11-06 Joel Sherrill <joel.sherrill@oarcorp.com>
102 * configure.tgt: Add m32c-*-rtems* and m32r-*-rtems*.
104 2008-11-03 Bob Wilson <bob.wilson@acm.org>
106 * emulparams/elf32xtensa.sh (NO_REL_RELOCS): Set.
107 * scripttempl/elfxtensa.sc (NO_REL_RELOCS, NO_RELA_RELOCS)
108 (NON_ALLOC_DYN): Import changes from elf.sc.
110 2008-10-25 Nick Clifton <nickc@redhat.com>
113 * ldlang.c (lang_size_sections_1): Do not update the VMAs of
114 output sections when performing a relocatable link on COFF
117 2008-10-22 Nick Clifton <nickc@redhat.com>
119 * emultempl/armelf.em (arm_elf_after_open): Move check for using a
120 non-arm output target from here...
121 (arm_elf_create_output_section_statements): ... to here, so that
122 the check is made at the earliest possible opportunity.
124 2008-10-22 Alan Modra <amodra@bigpond.net.au>
126 * emulparams/elf32_i960.sh (TEMPLATE_NAME): "generic", not "elf32".
127 (EXTRA_EM_FILE): Define.
129 2008-10-22 Alan Modra <amodra@bigpond.net.au>
131 * scripttempl/elf.sc (NO_REL_RELOCS, NO_RELA_RELOCS, NON_ALLOC_DYN):
132 Handle these defines.
133 * emulparams/criself.sh, * emulparams/crislinux.sh,
134 * emulparams/elf32am33lin.sh, * emulparams/elf32fr30.sh,
135 * emulparams/elf32_i860.sh, * emulparams/elf32ip2k.sh,
136 * emulparams/elf32mcore.sh, * emulparams/elf32ppccommon.sh,
137 * emulparams/elf32ppcwindiss.sh, * emulparams/elf32_sparc.sh,
138 * emulparams/elf32_spu.sh, * emulparams/elf32vax.sh,
139 * emulparams/elf64alpha.sh, * emulparams/elf64mmix.sh,
140 * emulparams/elf64ppc.sh, * emulparams/elf64_s390.sh,
141 * emulparams/elf64_sparc.sh, * emulparams/elf_s390.sh,
142 * emulparams/elf_x86_64.sh, * emulparams/h8300elf.sh,
143 * emulparams/hppa64linux.sh, * emulparams/hppalinux.sh,
144 * emulparams/m68kelf.sh, * emulparams/mn10200.sh,
145 * emulparams/pjelf.sh, * emulparams/ppclynx.sh,
146 * emulparams/shelf32.sh, * emulparams/shelf_nto.sh,
147 * emulparams/shelf.sh, * emulparams/shelf_vxworks.sh,
148 * emulparams/shlelf32_linux.sh, * emulparams/shlelf_linux.sh,
149 * emulparams/shlelf_nto.sh (NO_REL_RELOCS): Set.
150 * emulparams/arcelf.sh, * emulparams/elf32_i960.sh,
151 * emulparams/elf32openrisc.sh, * emulparams/elf_i386_be.sh,
152 * emulparams/elf_i386_ldso.sh, * emulparams/elf_i386.sh,
153 * emulparams/elf_i386_vxworks.sh, * emulparams/i386lynx.sh,
154 * emulparams/i386moss.sh, * emulparams/i386nto.sh,
155 * emulparams/or32elf.sh, * emulparams/scoreelf.sh (NO_RELA_RELOCS): Set.
157 2008-10-22 Alan Modra <amodra@bigpond.net.au>
159 * ldlang.c (lang_output_section_find_by_flags): Handle non-alloc
161 * emultempl/elf32.em (enum orphan_save_index): Add orphan_nonalloc.
163 (gld${EMULATION_NAME}_place_orphan): Handle non-alloc orphans.
165 2008-10-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
167 * emultempl/armelf.em (PARSE_AND_LIST_OPTIONS): Correct typo in
170 2008-10-20 Alan Modra <amodra@bigpond.net.au>
172 * ldemul.h (ldemul_place_orphan): Update prototype.
173 (struct ld_emulation_xfer_struct <place_orphan>): Likewise.
174 * ldemul.c (ldemul_place_orphan): Return pointer to output
176 * emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Likewise.
177 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
178 * emultempl/mmo.em (mmo_place_orphan): Likewise.
179 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
180 * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
182 2008-10-08 Nick Clifton <nickc@redhat.com>
184 * configure.in (ALL_LINGUAS): Add "id".
185 * configure: Regenerate.
186 * po/id.po: New Indonesian translation.
188 2008-10-05 Alan Modra <amodra@bigpond.net.au>
191 * scripttempl/avr.sc (.bss): Set lma when relocating.
192 (.bss, .noinit): No need to set vma when relocating.
193 (.text, .bss, ,noinit): Set vma to zero when not relocating.
195 2008-10-04 Alan Modra <amodra@bigpond.net.au>
198 * ldemul.c (ldemul_place_orphan): Add "constraint" param.
199 * ldemul.h (ldemul_place_orphan): Update prototype.
200 (struct ld_emulation_xfer_struct <place_orphan>): Likewise add param.
201 * ldlang.c (unique_section_p): Make static.
202 (lang_output_section_statement_lookup): Optimise creation of SPECIAL
204 (lang_insert_orphan): Add "constraint" param. Pass to
205 lang_enter_output_section_statement.
206 (init_os): Don't use an existing bfd section for SPECIAL sections.
207 (lang_place_orphans): Don't rename unique output sections, instead
208 mark their output section statements SPECIAL.
209 * ldlang.h (lang_insert_orphan): Update prototype.
210 (unique_section_p): Delete.
211 * emultempl/beos.em (place_orphan): Add "constraint" param.
212 * emultempl/elf32.em (place_orphan): Likewise. Don't match existing
213 output sections if set.
214 * emultempl/pe.em (place_orphan): Likewise.
215 * emultempl/pep.em (place_orphan): Likewise.
216 * emultempl/mmo.em (mmo_place_orphan): Update.
217 * emultempl/spuelf.em (spu_place_special_section): Update.
219 2008-10-03 Alan Modra <amodra@bigpond.net.au>
222 * ldemul.c (ldemul_place_orphan): Add "name" param.
223 * ldemul.h (ldemul_place_orphan): Update prototype.
224 (struct ld_emulation_xfer_struct <place_orphan>): Likewise.
225 * ldlang.c (lang_place_orphans): Generate unique section names here..
226 * emultempl/elf32.em (place_orphan): ..rather than here. Don't
227 directly use an existing output section statement that has no
229 * emultempl/pe.em (place_orphan): Likewise.
230 * emultempl/pep.em (place_orphan): Likewise.
231 * emultempl/beos.em (place_orphan): Adjust.
232 * emultempl/spuelf.em (spu_place_special_section): Adjust
234 * emultempl/genelf.em (gld${EMULATION_NAME}_after_open): New function.
235 (LDEMUL_AFTER_OPEN): Define.
237 2008-09-30 Joseph Myers <joseph@codesourcery.com>
239 * emulparams/elf64ppc.sh (OTHER_GOT_RELOC_SECTIONS): Add .rela.opd
242 2008-09-30 Alan Modra <amodra@bigpond.net.au>
244 * Makefile.am: Run "make dep-am".
245 * Makefile.in: Regenerate.
247 2008-09-29 Peter O'Gorman <pogma@thewrittenword.com>
248 Steve Ellcey <sje@cup.hp.com>
250 * configure: Regenerate for new libtool.
252 * Makefile.in: Ditto.
254 2008-09-29 Kai Tietz <kai.tietz@onevision.com>
256 * pe-dll.c (make_import_fixup_entry): Make sure reloc is addend.
258 2008-09-29 Nick Clifton <nickc@redhat.com>
260 * po/vi.po: Updated Vietnamese translation.
262 2008-09-25 Alan Modra <amodra@bigpond.net.au>
264 * ldexp.c (fold_binary): Evaluate rhs when lhs not valid.
266 2008-09-11 Jan Kratochvil <jan.kratochvil@redhat.com>
268 * configure.in: Call AC_SYS_LARGEFILE.
269 * config.in: Regenerate.
270 * configure: Regenerate.
272 2008-09-09 Peter Rosin <peda@lysator.liu.se> (tiny change)
274 * emultempl/pe.em (pe_find_data_imports): Add trailing newline
276 * emultempl/pep.em (pep_find_data_imports): Likewise.
278 2008-09-08 H.J. Lu <hongjiu.lu@intel.com>
280 2008-09-07 Alan Modra <amodra@bigpond.net.au>
282 * emultempl/beos.em (gld${EMULATION_NAME}_place_orphan): Updated.
283 * emultempl/sunos.em (gld${EMULATION_NAME}_before_allocation): Likewise.
285 2008-09-08 Tristan Gingold <gingold@adacore.com>
287 * NEWS: Add a marker for the 2.19 features.
289 2008-09-07 Alan Modra <amodra@bigpond.net.au>
291 * ldlang.h (lang_output_section_find): Define.
292 (lang_output_section_statement_lookup): Update prototype.
293 * ldlang.c (lang_output_section_find,
294 lang_output_section_statement_lookup_1): Merge into..
295 (lang_output_section_statement_lookup): ..here. Update all callers.
296 (process_insert_statements): Set constraint negative
297 for output section statements we might be inserting. Make error
298 fatal on not finding insertion section.
299 (lang_output_section_find): Rather than comparing
300 output_section_statement.constraint against -1, test whether
302 (lang_output_section_statement_lookup_1): Likewise.
303 (output_prev_sec_find, strip_excluded_output_sections): Likewise.
304 (lang_record_phdrs): Likewise.
305 * emultempl/elf32.em (output_rel_find): Likewise.
306 * NEWS: Mention INSERT.
308 2008-08-26 Nick Clifton <nickc@redhat.com>
311 * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Scan all
312 input sections in all input bfds and always select the last
313 suitable one, so that interworking stubs are always processed
314 after all other input sections.
315 (arm_elf_before_allocation): Remove redundant use of
316 output_has_begun flag.
318 2008-08-24 Alan Modra <amodra@bigpond.net.au>
320 * configure.in: Update a number of obsolete autoconf macros.
321 * configure: Regenerate.
322 * aclocal.m4: Regenerate.
324 2008-08-21 Jan Kratochvil <jan.kratochvil@redhat.com>
327 * ldexp.c (fold_binary <DATA_SEGMENT_ALIGN>): Do not align
328 EXPLD.DATASEG.MIN_BASE.
329 * ldlang.c (lang_size_sections): New variable OLD_BASE. Rename
330 OLD_MIN_BASE to MIN_BASE with the former alignment from `ldexp.c'.
331 Use OLD_BASE now for the minimal base check after the base decrease by
332 the maximum alignment found.
334 2008-08-17 Alan Modra <amodra@bigpond.net.au>
337 * ldcref.c (check_local_sym_xref): Use bfd_generic_link_read_symbols.
338 Don't free symbol pointer array.
339 (check_refs): Likewise.
340 * ldmain.c (warning_callback): Likewise.
341 * ldmisc.c (vfinfo): Likewise.
342 * pe-dll.c (process_def_file): Likewise.
343 (pe_walk_relocs_of_symbol, generate_reloc): Likewise.
344 * emultempl/pe.em (pe_find_data_imports): Likewise.
345 (gld_${EMULATION_NAME}_after_open): Likewise.
346 * emultempl/pep.em (pep_find_data_imports): Likewise.
347 (gld_${EMULATION_NAME}_after_open): Likewise.
348 * ldlang.h (lang_input_statement_type): Delete asymbols, symbol_count,
349 passive_position, closed.
350 * ldlang.c (new_afile): Don't set asymbols and symbol_count.
351 * ldmain.c (add_archive_element): xcalloc lang_input_statement_type.
353 2008-08-15 Alan Modra <amodra@bigpond.net.au>
356 * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
357 * Makefile.in: Regenerate.
358 * aclocal.m4: Regenerate.
359 * config.in: Regenerate.
360 * configure: Regenerate.
362 2008-08-09 Alan Modra <amodra@bigpond.net.au>
365 * ldmain.c (check_for_scripts_dir, set_scripts_dir): Delete.
366 (main): Don't set_scripts_dir here.
367 * ldfile.c (check_for_scripts_dir, find_scripts_dir): New functions,
368 largely based on ldmain.c versions.
369 (ldfile_find_command_file): Set up search in script dir here without
370 affecting library search.
371 * Makefile.am (ldmain.o): No need to define SCRIPTDIR.
372 (ldfile.o): New rule.
373 * Makefile.in: Regenerate.
375 2008-08-08 Anatoly Sokolov <aesok@post.ru>
377 * Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o,
379 Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c.
380 * Makefile.in: Regenerate.
381 * configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35
383 * emulparams/avr25.sh: New file.
384 * emulparams/avr31.sh: New file.
385 * emulparams/avr35.sh: New file.
386 * emulparams/avr51.sh: New file.
388 2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
389 Daniel Jacobowitz <dan@codesourcery.com>
391 * emulparams/elf32bmip.sh (GOT): Define, moving .got.plt to...
392 (OTHER_RELRO_SECTIONS, OTHER_READWRITE_SECTIONS): ...one of these
394 * emulparams/elf32bmipn32-defs.sh: Likewise.
395 * emultempl/mipself.em: Include ldctor.h, elf/mips.h and elfxx-mips.h.
396 (is_mips_elf): New macro.
397 (stub_file, stub_bfd): New variables.
398 (hook_stub_info): New structure.
399 (hook_in_stub): New function.
400 (mips_add_stub_section): Likewise.
401 (mips_create_output_section_statements): Likewise.
402 (mips_before_allocation): Likewise.
403 (real_func): New variable.
404 (mips_for_each_input_file_wrapper): New function.
405 (mips_lang_for_each_input_file): Likewise.
406 (lang_for_each_input_file): Define.
407 (LDEMUL_BEFORE_ALLOCATION): Likewise.
408 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Likewise.
410 2008-08-08 Alan Modra <amodra@bigpond.net.au>
412 * ldfile.c (ldfile_open_file_search): Use concat.
413 (try_open): Don't use a fixed size pathname buffer.
414 (ldfile_find_command_file): Likewise.
415 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive): If
416 using EXTRA_SHLIB_EXTENSION, don't open twice.
418 2008-08-04 Alan Modra <amodra@bigpond.net.au>
420 * Makefile.am (POTFILES.in): Set LC_ALL=C.
421 * Makefile.in: Regenerate.
422 * po/POTFILES.in: Regenerate.
424 2008-08-03 Alan Modra <amodra@bigpond.net.au>
426 * Makefile.am (spu_ovl.o): Merge rule into..
427 (spu_ovl.o_c): ..this one. Only run cpp for spu target.
428 * Makefile.in: Regenerate.
430 2008-08-02 Jan Kratochvil <jan.kratochvil@redhat.com>
432 Include the spu_ovl ASCII form in the repository files.
433 * emultempl/spuelf.em: No longer use `bin2c', use now `spu_ovl.o_c'.
434 * Makefile.am (eelf32_spu.c): Depend now on `spu_ovl.o_c'.
435 ($(srcdir)/emultempl/spu_ovl.o_c): New target.
436 ($(srcdir)/emultempl/spu_ovl.o): Rename to...
437 (spu_ovl.o): ...this one.
438 * Makefile.in: Regenerate.
439 * emultempl/spu_ovl.o_c: New file.
440 * emultempl/spu_ovl.o: File removed.
442 2008-07-31 Takashi Ono <t_ono@hkfreak.net>
444 * pe-dll.c (generate_relocs): Don't generate relocs for
445 undefined weak symbols.
447 2008-07-31 Jan Kratochvil <jan.kratochvil@redhat.com>
449 * emultempl/spuelf.em: Abort on the missing required `spu_ovl.o'.
451 2008-07-30 Alan Modra <amodra@bigpond.net.au>
453 * emultempl/pe.em, emultempl/pep.em: Silence gcc warnings.
455 2008-07-18 Joseph Myers <joseph@codesourcery.com>
457 * ld.texinfo (--no-wchar-size-warning): Document new ARM option.
458 * emultempl/armelf.em (no_wchar_size_warning): New.
459 (arm_elf_create_output_section_statements): Pass
460 no_wchar_size_warning to arm_elf_create_output_section_statements.
461 (OPTION_NO_WCHAR_SIZE_WARNING): New.
462 (PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning.
463 (PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning.
464 (PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning.
466 2008-07-15 Jie Zhang <jie.zhang@analog.com>
468 * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
470 2008-07-12 Craig Silverstein <csilvers@google.com>
473 * configure.in: Check for, and include, libz.a if it is present.
474 * configure: Regenerate.
475 * config.in: Regenerate.
477 2008-07-12 Jie Zhang <jie.zhang@analog.com>
480 2008-07-12 Jie Zhang <jie.zhang@analog.com>
481 * Makefile.am (eelf32bfin.c): Depend on bfin.em.
482 (eelf32bfinfd.c): Likewise.
483 * Makefile.in: Regenerate.
484 * gen-doc.texi: Set Blackfin.
485 * ld.texinfo: Document --sep-code and Blackfin specific
487 * ldmain.c (main): Initialize link_info.sep_code.
488 * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
489 (ld_options[]): Add --sep-code.
490 (parse_args): Deal with --sep-code.
491 * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
492 * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
493 * emultempl/bfin.em: New file.
495 2008-07-12 Jie Zhang <jie.zhang@analog.com>
497 * Makefile.am (eelf32bfin.c): Depend on bfin.em.
498 (eelf32bfinfd.c): Likewise.
499 * Makefile.in: Regenerate.
500 * gen-doc.texi: Set Blackfin.
501 * ld.texinfo: Document --sep-code and Blackfin specific
503 * ldmain.c (main): Initialize link_info.sep_code.
504 * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
505 (ld_options[]): Add --sep-code.
506 (parse_args): Deal with --sep-code.
507 * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
508 * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
509 * emultempl/bfin.em: New file.
511 2008-07-09 Danny Smith <dannysmith@users.sourceforge.net>
513 *pe-dll.c (autofilter_symbolprefixlist): Excude all symbols
515 Exclude "_IMPORT_DESCRIPTOR_".
516 (autofilter_symbolsuffixlist): Exclude "_NULL_THUNK_DATA".
517 (autofilter_symbollist_generic): Don't check for ".text".
518 Exclude "_NULL_IMPORT_DESCRIPTOR".
519 (autofilter_symbollist_i386): Likewise.
521 2008-07-07 Alan Modra <amodra@bigpond.net.au>
523 * emultempl/armelf.em (elf32_arm_add_stub_section): Use
524 bfd_make_section_with_flags.
525 * emultempl/avrelf.em (avr_elf_create_output_section_statements):
527 * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
528 * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
529 * emultempl/m68kcoff.em (gld${EMULATION_NAME}_after_open): Likewise.
530 * emultempl/m68kelf.em (m68k_elf_after_open): Likewise.
531 * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
532 * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation):
535 2008-07-06 Nathan Sidwell <nathan@codesourcery.com>
537 * ld.texinfo (File Commands): Document that INCLUDE can be used in
538 several different places.
539 * ldgram.y (statement, memory_spec, section): Allow INCLUDE.
540 (memory, memory_spec_list): Simplify BNF
541 (memory_spec_list_opt): New rule.
542 * ldlex.l (INCLUDE): Recognize in EXPRESSION.
544 2008-06-20 Alan Modra <amodra@bigpond.net.au>
546 * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Make "can not
547 build overlay stubs" a fatal error.
549 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
551 * config.in: Regenerate.
552 * configure: Regenerate.
554 2008-06-17 Alan Modra <amodra@bigpond.net.au>
556 * emultempl/spuelf.em (extra_stack_space): New variable.
557 (gld${EMULATION_NAME}_finish): Pass it to spu_elf_check_vma.
558 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
559 PARSE_AND_LIST_ARGS_CASES): Handle --extra-stack-space.
560 * emultempl/spu_ovl.S: Mask interrupts during dma and update of
561 overlay manager structures.
562 * emultempl/spu_ovl.o: Regenerate.
564 2008-06-16 Hans-Peter Nilsson <hp@bitrange.com>
566 * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only
567 mention it as being special for global symbols.
569 2008-06-12 Nick Clifton <nickc@redhat.com>
571 * ldlang.c (print_output_section_statement): If the output section
572 statement has an update_dot_tree expression, apply it to
574 (print_input_section): Do not update print_dot if it would move
576 (lang_do_assignments_1): If the output section statement has an
577 update_dot_tree expression apply it to dot.
579 2008-06-07 Alan Modra <amodra@bigpond.net.au>
581 * NEWS: Mention archive:path patterns.
582 * ld.texinfo: Likewise.
583 * ldlang.c: Formatting throughout.
584 (archive_path): Only assume "[A-Za-z]:" is a dos drive.
585 (input_statement_is_archive_path): New function, extracted from..
587 (walk_wild_consider_section): Match archive:path here too.
588 (init_map_userdata, sort_def_symbol): Convert to ISO C.
589 * ldmain.c (main): Set link_info.path_separator.
590 * emultempl/spuelf.em (choose_target): Don't set it here.
592 2008-06-06 Alan Modra <amodra@bigpond.net.au>
594 * ldlang.c (name_match): New function.
595 (unique_section_p, walk_wild_consider_section): Use it here.
596 (walk_wild_section_general): And here.
597 (archive_path): New function.
598 (walk_wild): Match archive:path filespecs.
599 (open_input_bfds): Don't load archive:path files.
600 * emultempl/spuelf.em (choose_target): Set path_separator.
601 * emulparams/elf32_spu.sh: Add ._ea.* sections to ._ea output.
603 2008-06-04 Nick Clifton <nickc@redhat.com>
605 * ld.texinfo (Orphan Sections): Fix texi typo.
607 2008-06-04 Chris Metcalf <cmetcalf@tilera.com>
609 * lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.
610 (ld_options): Add entry for --no-fatal-warnings.
611 (parse_args): Handle OPTION_NO_WARN_FATAL.
612 * ld.texinfo (Options): Document new command line switch.
614 2008-06-04 Alan Modra <amodra@bigpond.net.au>
616 * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
618 2008-06-02 Nathan Sidwell <nathan@codesourcery.com>
620 * ldlang.c (closest_target_match): Skip generic big and little
623 2008-05-31 Evandro Menezes <evandro@yahoo.com>
626 * ld.h (enum sort_order): New.
627 * ldlang.c (lang_check: Fix comment.
628 (lang_common): Sort commons in ascending or descending order.
629 (lang_one_common): Likewise.
630 * lexsup.c (ld_options): Have --sort-common take an option
632 (parse_args): Handle argument to --sort-common.
633 * ld.texinfo (--sort-common): Document new optional argument.
634 * NEWS: Mention new feature.
636 2008-05-28 Christophe Lyon <christophe.lyon@st.com>
638 * ld.texinfo: State that farcalls stubs are supported for ARM-EABI
641 2008-05-27 Kai Tietz <kai.tietz@onevision.com>
643 * pe-dll.c (fill_edata): Make sure we calculate vma's in
645 (generate_reloc): Likewise.
646 (pe_implied_import_dll): Likewise.
648 2008-05-21 Nick Clifton <nickc@redhat.com>
651 * ld.texinfo (Orphan Sections): Mention that the linker will
652 provide start and stop symbols for orphaned sections if their
653 names are valid C identifiers.
654 * NEWS: Add an addendum to the description of the linker feature
655 for providing orphan section start and end symbols.
657 2008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
659 * configure.in (--enable-got): New option. Handle it.
660 * configure: Regenerate.
661 * config.in: Regenerate.
662 * emultempl/m68kelf.em: (got_handling_target_default): New shell
664 (GOT_HANDLING_TARGET_DEFAULT): New macro.
665 (GOT_HANDLING_DEFAULT): New macro. Initialize it from configure
666 option if one was given.
667 (got_handling): New static variable.
668 (elf_m68k_create_output_section_statements): New static function
670 (PARSE_AND_LIST_PROLOGUE): Define shell variable.
671 (OPTION_GOT): New macro.
672 (PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify
674 (got): New linker option.
675 (PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string
677 (PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got
679 * ld.texinfo: Document --got=<type> option.
680 * gen-doc.texi: Add M68K.
681 * NEWS: Mention the new feature.
683 2008-05-21 Evandro Menezes <evandro@yahoo.com>
686 * ld.texinfo (--sort-common): Correct documentation to indicate
687 that sorting is performed by alignment, not size, biggest
690 2008-05-21 Christophe Lyon <christophe.lyon@st.com>
691 Nick Clifton <nickc@redhat.com>
693 * ld.texinfo (ARM): Document --stub-group-size=N option.
694 Move description of --pic-veneer option into the ARM section.
695 * NEWS: Mention the support for long function calls.
697 2008-05-15 Christophe Lyon <christophe.lyon@st.com>
699 * emultempl/armelf.em (build_section_lists): New function.
701 (need_laying_out): Define.
702 (group_size): Define.
703 (hook_stub_info): Define.
704 (hook_in_stub): New function.
705 (elf32_arm_add_stub_section): New function.
706 (gldarm_layout_sections_again): New function.
707 (gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
708 stubs for long calls if needed.
709 (arm_elf_create_output_section_statements): create stub_file bfd.
710 (arm_for_each_input_file_wrapper): New function.
711 (arm_lang_for_each_input_file): New function.
712 (lang_for_each_input_file): Define.
713 (PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
714 (PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
715 (PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
716 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
717 (LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
718 * lang.c (print_input_statement): Skip if bfd has
721 2008-05-14 Alan Modra <amodra@bigpond.net.au>
723 * Makefile.in: Regenerate.
725 2008-05-09 Kai Tietz <kai.tietz@onevision.com>
728 * emultempl/pep.em (compute_dll_image_base): Use bfd_vma instead
729 of long and change return type to bfd_vma.
730 (definfo): Change type of address from long to bfd_vma.
731 (set_pep_value): Replace strtoul to strtoull.
732 (gld_${EMULATION_NAME}_set_symbols): use bfd_vma instead of long..
733 * pe-dll.c (pe_dll_generate_def_file): Use fprintf_vma to print
735 (quick_reloc): Change argument address from int to bfd_size_type.
737 2008-05-08 Tom Tromey <tromey@redhat.com>
739 * ld.texinfo (PowerPC64 ELF64): Fix typo.
741 2008-05-08 Alan Modra <amodra@bigpond.net.au>
743 * elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
744 * elf32ppc.sh: If building with spu support, put ".data.spehandle"
745 sections at the start of ".data" and provide a symbol to locate
746 the directory of embedded spe programs.
748 2008-05-08 Alan Modra <amodra@bigpond.net.au>
750 * ldexp.c (exp_print_token): Add ABSOLUTE, MIN_K, ASSERT_K. Correct
752 (fold_binary <SEGMENT_START>): Set expld.result.section to
753 current section. Expand comment. Formatting.
754 (fold_name <DEFINED>): Set expld.result.section to current section.
756 2008-04-28 Nathan Sidwell <nathan@codesourcery.com>
758 * ldlang.c (lang_size_sections_1): Don't check LMA overflow on
761 2008-04-25 Michael Frysinger <vapier@gentoo.org>
763 * configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd
764 and targ_extra_emuls to elf32bfin.
766 2008-04-23 Paolo Bonzini <bonzini@gnu.org>
768 * aclocal.m4: Regenerate.
769 * configure: Regenerate.
771 2008-04-03 Kai Tietz <kai.tietz@onevision.com>
773 * scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
775 2008-04-08 Alan Modra <amodra@bigpond.net.au>
777 * po/POTFILES.in: Regenerate.
779 2008-04-08 Alan Modra <amodra@bigpond.net.au>
781 * emultempl/spuelf.em (auto_overlay, auto_overlay_file,
782 auto_overlay_fixed, auto_overlay_reserved, my_argc, my_argv): New vars.
783 (spu_before_allocation): Warn on --auto-overlay and existing overlays.
784 (struct tflist, clean_tmp): Move.
785 (new_tmp_file): New function, extracted from..
786 (embedded_spu_file): ..here.
787 (spu_elf_open_overlay_script, spu_elf_relink): New function.
788 (gld${EMULATION_NAME}_finish): Pass a bunch of --auto-overlay params.
789 Warn on --auto-overlay and zero local store.
790 (gld${EMULATION_NAME}_choose_target): New function to stash argv.
791 (OPTION_SPU_AUTO_OVERLAY, OPTION_SPU_AUTO_RELINK,
792 OPTION_SPU_OVERLAY_RODATA, OPTION_SPU_FIXED_SPACE,
793 OPTION_SPU_RESERVED_SPACE, OPTION_SPU_NO_AUTO_OVERLAY): Define.
794 (PARSE_AND_LIST_LONGOPTS): Add entries for new options.
795 (PARSE_AND_LIST_OPTIONS): Likewise.
796 (PARSE_AND_LIST_ARGS_CASES): Likewise.
797 (LDEMUL_CHOOSE_TARGET): Define.
799 2008-04-03 Kai Tietz <kai.tietz@onevision.com>
802 * pe-dll.c (make_head): Fix iat and thunk addend offset.
804 2008-03-31 Nick Clifton <nickc@redhat.com>
806 * po/fr.po: Updated French translation.
808 2008-03-24 Ian Lance Taylor <iant@google.com>
810 The sha1 code is now in libiberty.
813 * Makefile.am (CFILES): Remove sha1.c.
814 (HFILES): Remove sha1.h.
815 (OFILES): Remove sha1.o.
816 (ld_new_SOURCES): Remove sha1.c.
817 (sha1.o): Remove target.
818 * Makefile.in: Rebuild.
820 2008-03-20 Alan Modra <amodra@bigpond.net.au>
822 * emultempl/spuelf.em: Update calls to elf32-spu.c funcs.
824 2008-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
826 * aclocal.m4: Regenerate.
827 * configure: Likewise.
828 * Makefile.in: Likewise.
830 2008-03-14 Alan Modra <amodra@bigpond.net.au>
832 * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect
833 spu_elf_build_stubs with is_spu_target.
835 2008-03-13 Alan Modra <amodra@bigpond.net.au>
837 * Makefile.am: Run "make dep-am".
838 * Makefile.in: Regenerate.
839 * configure: Regenerate.
841 2008-03-06 Joseph Myers <joseph@codesourcery.com>
842 Roman Zippel <zippel@linux-m68k.org>
844 * emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define.
845 (COMMONPAGESIZE): Define.
847 2008-02-22 Nick Clifton <nickc@redhat.com>
850 * ldlang.c (lang_size_sections_1): Honour the setting of an
851 lma_region even if there is no vma region set, or the vma region
852 is the same as the lma region.
854 2008-02-18 Nick Clifton <nickc@redhat.com>
856 * scripttempl/armbpabi.sc (ENTRY): Do not define when performing a
858 * scripttempl/elf32cr16.sc: Likewise.
859 * scripttempl/elf32cr16c.sc: Likewise.
860 * scripttempl/elf32crx.sc: Likewise.
861 * scripttempl/elf32sh-symbian.sc: Likewise.
862 * scripttempl/elf_chaos.sc: Likewise.
863 * scripttempl/elfd10v.sc: Likewise.
864 * scripttempl/elfi370.sc: Likewise.
865 * scripttempl/elfm68hc11.sc: Likewise.
866 * scripttempl/elfm68hc12.sc: Likewise.
867 * scripttempl/ip2k.sc: Likewise.
868 * scripttempl/iq2000.sc: Likewise.
869 * scripttempl/mep.sc: Likewise.
870 * scripttempl/v850.sc: Likewise.
871 * scripttempl/xstormy16.sc: Likewise.
873 2008-02-16 Alan Modra <amodra@bigpond.net.au>
876 * ldexp.c (fold_name <LOADADDR>): Check result of evaluating
877 load_base before calling make_abs.
879 2008-02-15 Alan Modra <amodra@bigpond.net.au>
881 * emultempl/alphaelf.em (alpha_after_open): Use elf_object_id.
882 * emultempl/hppaelf.em (hppaelf_create_output_section_statements):
884 * emultempl/ppc64elf.em (ppc_create_output_section_statements):
886 * emultempl/ppc32elf.em (is_ppc_elf32_vec): Delete. Replace all
888 (is_ppc_elf): ..this new macro.
890 2008-02-15 Alan Modra <amodra@bigpond.net.au>
892 * ldmain.h (output_bfd): Delete.
893 * ldmain.c (output_bfd): Delete.
894 Replace all occurrences of output_bfd with link_info.output_bfd.
895 * ldcref.c: Likewise.
896 * ldctor.c: Likewise.
897 * ldemul.c: Likewise.
899 * ldfile.c: Likewise.
900 * ldlang.c: Likewise.
901 * ldmisc.c: Likewise.
902 * ldwrite.c: Likewise.
903 * pe-dll.c: Likewise.
904 * emultempl/aix.em: Likewise.
905 * emultempl/alphaelf.em: Likewise.
906 * emultempl/armcoff.em: Likewise.
907 * emultempl/armelf.em: Likewise.
908 * emultempl/avrelf.em: Likewise.
909 * emultempl/beos.em: Likewise.
910 * emultempl/elf-generic.em: Likewise.
911 * emultempl/elf32.em: Likewise.
912 * emultempl/gld960.em: Likewise.
913 * emultempl/hppaelf.em: Likewise.
914 * emultempl/irix.em: Likewise.
915 * emultempl/linux.em: Likewise.
916 * emultempl/lnk960.em: Likewise.
917 * emultempl/m68hc1xelf.em: Likewise.
918 * emultempl/mmix-elfnmmo.em: Likewise.
919 * emultempl/mmo.em: Likewise.
920 * emultempl/pe.em: Likewise.
921 * emultempl/pep.em: Likewise.
922 * emultempl/ppc32elf.em: Likewise.
923 * emultempl/ppc64elf.em: Likewise.
924 * emultempl/scoreelf.em: Likewise.
925 * emultempl/sh64elf.em: Likewise.
926 * emultempl/spuelf.em: Likewise.
927 * emultempl/sunos.em: Likewise.
928 * emultempl/vanilla.em: Likewise.
929 * emultempl/vxworks.em: Likewise.
930 * emultempl/xtensaelf.em: Likewise.
931 * emultempl/z80.em: Likewise.
932 * ldlang.c (open_output): Don't return output, instead write
933 link_info_output_bfd directly.
934 * emultempl/alphaelf.em: Replace occurrences of link_info.hash->creator
935 with link_info.output_bfd->xvec.
936 * emultempl/hppaelf.em: Likewise.
937 * emultempl/ppc32elf.em: Likewise.
938 * emultempl/ppc64elf.em: Likewise.
939 * emultempl/spuelf.em: Likewise.
941 2008-02-07 Alan Modra <amodra@bigpond.net.au>
943 * ldlang.c (new_afile): Don't pass unadorned NULL to concat.
944 * ldfile.c (ldfile_add_library_path): Likewise.
945 * emultempl/elf32.em (check_ld_elf_hints, check_ld_so_conf): Likewise.
946 * emultempl/lnk960.em (lnk960_before_parse): Likewise.
947 * emultempl/spuelf.em (embedded_spu_file): Likewise.
949 2008-02-07 Alan Modra <amodra@bigpond.net.au>
951 * emultempl/spu_ovl.S: Use low bit of _ovly_table.size as
952 a "present" bit rather than low bit of .buf. Correct indexing
953 into _ovly_buf_table. Use relative loads and stores to access
954 overlay manager local vars.
955 * emultempl/spu_ovl.o: Regenerate.
957 2008-02-04 H.J. Lu <hongjiu.lu@intel.com>
960 * configure: Regenerated.
962 2008-01-31 Marc Gauthier <marc@tensilica.com>
964 * configure.tgt (xtensa*-*-*): Recognize processor variants.
966 2008-01-28 Fabian Groffen <grobian@gentoo.org>
968 * configure.tgt (x86_64-*-solaris2): Add support for this target.
970 2008-01-28 Vincent Riviere <vincent.riviere@freesbee.fr>
973 * genscripts.sh: Check for the existence of BASH_LINENO not just
974 the BASH shell before generating line numbers in the emulation
977 2008-01-28 Alan Modra <amodra@bigpond.net.au>
979 * emultempl/spu_ovl.S: Rewrite.
980 * emultempl/spu_ovl.o: Regenerate.
981 * emultempl/spuelf.em (toe): Delete.
982 (spu_place_special_section): Add param to control section placement.
984 (spu_elf_load_ovl_mgr): Adjust for struct _spu_elf_section_data
986 (spu_before_allocation): Adjust spu_elf_size_stubs call.
987 (gld${EMULATION_NAME}_finish): Adjust spu_elf_build_stubs call.
989 2008-01-25 H.J. Lu <hongjiu.lu@intel.com>
992 * ldlang.c (process_insert_statements): Silence gcc 4.1 alias
995 2008-01-25 Alan Modra <amodra@bigpond.net.au>
997 * ld.texinfo (INSERT): Describe.
998 * ldgram.y (ldgram_in_script, ldgram_had_equals): Delete.
999 (INSERT_K, AFTER, BEFORE): Add as tokens.
1000 (ifile_p1): Handle INSERT statements.
1001 (saved_script_handle, force_make_executable): Move to..
1003 (previous_script_handle): New global var.
1004 * ldmain.h (saved_script_handle, force_make_executable): Declare.
1005 (previous_script_handle): Likewise.
1006 * ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens.
1007 * lexsup.c (parge_args <-T>): Set previous_script_handle.
1008 * ldlang.c (lang_for_each_statement_worker): Handle insert statement.
1009 (map_input_to_output_sections, print_statement): Likewise.
1010 (lang_size_sections_1, lang_do_assignments_1): Likewise.
1011 (insert_os_after): New function, extracted from..
1012 (lang_insert_orphan): ..here.
1013 (process_insert_statements): New function.
1014 (lang_process): Call it.
1015 (lang_add_insert): New function.
1016 * ldlang.h (lang_insert_statement_enum): New.
1017 (lang_insert_statement_type): New.
1018 (lang_statement_union_type): Add insert_statement.
1019 (lang_add_insert): Declare.
1021 2008-01-18 Bob Wilson <bob.wilson@acm.org>
1023 * scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-id
1024 changes from elf.sc.
1026 2008-01-16 Alan Modra <amodra@bigpond.net.au>
1028 * ldlang.c (lang_size_sections_1): Simplify SEC_NEVER_LOAD test.
1030 2008-01-16 Alan Modra <amodra@bigpond.net.au>
1032 * ldlang.h (lang_afile_asection_pair_statement_enum): Delete.
1033 (lang_afile_asection_pair_statement_type): Delete.
1034 (lang_statement_union_type): Delete afile_asection_pair_statement.
1035 * ldlang.c (lang_insert_orphan): Delete case handling the above.
1036 (map_input_to_output_sections, print_statement): Likewise.
1038 2008-01-15 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1040 * emulparams/shlelf_linux.sh (DATA_START_SYMBOLS): Use PROVIDE
1042 * emulparams/shelf_nbsd.sh (DATA_START_SYMBOLS): Likewise.
1044 2008-01-15 Alan Modra <amodra@bigpond.net.au>
1047 * ldlang.c (lang_gc_sections): Move code to set SEC_KEEP on entry
1048 syms to _bfd_elf_gc_keep.
1049 * emultempl/ppc64elf.em (ppc_before_allocation): Don't call
1050 ppc64_elf_edit_opd if no_opd_opt.
1052 2008-01-11 Tristan Gingold <gingold@adacore.com>
1053 Eric Botcazou <ebotcazou@adacore.com>
1055 * ldlang.c (lang_end): Warns if the entry point is not found when
1057 Emit an error if no root is specified when --gc-sections -r.
1058 * ld.texinfo (Options): Document that --gc-sections is compatible
1060 * ldmain.c (main): Do not error out if -r and --gc-sections.
1061 * scripttempl/elf.sc: Emit ENTRY command only if relocating.
1063 2008-01-10 Daniel Jacobowitz <drow@sources.redhat.com>
1066 * ldlang.c (lang_end): Issue a warning for a missing start symbol
1067 of a shared library if the symbol was specified on the command
1070 2008-01-10 Alan Modra <amodra@bigpond.net.au>
1072 * ld.texinfo (--gc-sections): Describe linker behaviour.
1074 For older changes see ChangeLog-2007
1080 version-control: never