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