1 2011-12-01 Nick Clifton <nickc@redhat.com>
3 * emultempl/spuelf.em (spu_elf_relink): Use pex_one in place
6 2011-11-25 John Tytgat <john@bass-software.com>
8 * emultempl/armelf.em: Update copyright to 2010 and 2011.
9 (PARSE_AND_LIST_OPTIONS): Fix formatting.
11 2011-11-21 Andreas Tobler <andreast@fgznet.ch>
13 * Makefile.am (ALL_64_EMULATION_SOURCES): Add powerpc64-*-freebsd
15 (eelf64ppc_fbsd.c): Add rules to build this file.
16 * Makefile.in: Regenerate.
17 * configure.tgt: Add target definition for powerpc64-*-freebsd*.
18 Adjust powerpc-*-freebsd*.
19 * emultempl/ppc64elf.em: Add a mechanism to override the default
20 value of 0 for plt_static_chain.
21 * emulparams/elf32ppc_fbsd.sh (OUTPUT_FORMAT): Override the default.
22 * emulparams/elf64ppc_fbsd.sh (OUTPUT_FORMAT): Likewise.
23 (DEFAULT_PLT_STATIC_CHAIN): Define to 1.
25 2011-11-15 Andreas Schwab <schwab@linux-m68k.org>
27 * ldlang.c (insert_pad): Change alignment_needed argument to
29 (size_input_section): Change alignment_needed varible to
31 * ldlang.h (lang_padding_statement_type): Change size field to
34 2011-11-03 Tristan Gingold <gingold@adacore.com>
36 * scripttempl/aix.sc: Consider header size for .text and .data
39 2011-11-02 Tristan Gingold <gingold@adacore.com>
41 * emultempl/aix.em (read_file_list): New function.
42 (_handle_option): Handle '-f'.
43 * NEWS: Mention this feature.
45 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
47 * configure.tgt (x86_64-*-solaris2*): Use $targ_extra_emuls for
50 2011-11-01 DJ Delorie <dj@redhat.com>
52 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32rl78.c.
53 (+eelf32rl78.c): New rule.
54 * Makefile.in: Regenerate.
55 * configure.tgt: Add rl78-*-* case.
56 * emulparams/elf32rl78.sh: New file.
57 * NEWS: Mention addition of Renesas RL78 support.
59 2011-10-28 Walter Lee <walt@tilera.com>
61 * NEWS: Fix TILEPro capitalization.
63 2011-10-25 Joern Rennecke <joern.rennecke@embecosm.com>
65 * NEWS: Mention addition of Adapteva Epiphany support.
66 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
67 (eelf32epiphany.c): New rule.
68 * configure.tgt: Handle epiphany-*-elf.
69 * emulparams/elf32epiphany.sh: New file.
70 * Makefile.in: Regenerate.
71 * po/ld.pot: Regenerate.
73 2011-10-24 Nick Clifton <nickc@redhat.com>
75 * po/ja.po: Updated Japanese translation.
77 2011-10-20 Alan Modra <amodra@gmail.com>
80 * plugin.c (plugin_should_reload): New function.
81 * plugin.h (plugin_should_reload): Declare.
82 * ldlang.c (open_input_bfds): Use above function.
84 2011-10-19 Alan Modra <amodra@gmail.com>
87 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
88 -z text, -z notext, -z textoff options for all targets having
91 2011-10-15 Alan Modra <amodra@gmail.com>
93 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Remove toc check.
95 2011-10-13 Dave Korn <dave.korn.cygwin@gmail.com>
97 * pe-dll.c (generate_reloc): Don't emit a base reloc for an
98 underlying BFD reloc that will be discarded in eh_frame data.
100 2011-10-10 Nick Clifton <nickc@redhat.com>
102 * po/bg.po: Updated Bulgarian translation.
103 * po/es.po: Updated Spanish translation.
104 * po/fi.po: Updated Finnish translation.
105 * po/fr.po: Updated French translation.
107 2011-10-10 Alan Modra <amodra@gmail.com>
109 * ldmain.c (main): Move code twiddling various config and link_info
111 * lexsup.c (parse_args): ..here. Move plugin_load_plugins call
113 * plugin.c (set_tv_header): Test link_info.executable, not
115 (is_visible_from_outside): Likewise. Delete redundant
116 is_ir_dummy_bfd check and "section" parameter.
118 2011-10-10 Alan Modra <amodra@gmail.com>
120 * emultempl/ppc64elf.em (ppc_add_stub_section): Align to 32 bytes.
122 2011-10-09 Alan Modra <amodra@gmail.com>
124 * emultempl/ppc64elf.em (ppc_create_output_section_statements): Add
125 missing colon to error message.
126 (ppc_before_allocation): Likewise.
128 2011-10-06 Alan Modra <amodra@gmail.com>
131 * plugin.c (tv_header_tags): Add LDPT_GET_SYMBOLS_V2.
132 (set_tv_header): Handle it. Adjust LDPT_GET_SYMBOLS. Return void.
133 (get_symbols): Add def_ironly_exp param. Return that value for
134 syms exported from shared libs.
135 (get_symbols_v1, get_symbols_v2): New wrapper functions.
136 * testplug.c: Update for above changes.
138 2011-09-27 Kai Tietz <ktietz@redhat.com>
140 * scripttempl/pe.sc (.text): Add support for
141 .gnu.linkonce.t.* section.
142 (.debug_info): Only use .gnu.linkonce.wi.* for
144 * scripttempl/pep.sc: Likewise.
146 2011-09-22 Tristan Gingold <gingold@adacore.com>
148 * NEWS: Add marker for 2.22.
150 2011-09-20 Alan Modra <amodra@gmail.com>
153 * ldlang.h (lang_input_statement_type): Add "reload" bitfield.
155 * ldlang.c (new_afile): Init new field.
156 (load_symbols): Don't call ldlang_add_file when reloading.
157 (open_input_bfds): Reload as-needed libs during plugin rescan.
159 2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
162 * ldlang.c (lang_elf_version_info): Removed.
163 (lang_register_vers_node): Replace lang_elf_version_info with
164 link_info.version_info.
165 (lang_add_vers_depend): Likewise.
166 * pe-dll.c (process_def_file_and_drectve): Likewise.
167 * emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
169 * ldlang.h (lang_elf_version_info): Removed.
171 * plugin.c (is_visible_from_outside): Check if symbol is hidden
174 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
175 Remove lang_elf_version_info.
177 2011-09-15 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
180 * ldmain.c (add_archive_element): Support thin archive member
183 2011-08-26 Nick Clifton <nickc@redhat.com>
185 * po/es.po: Updated Spanish translation.
187 2011-08-26 Nick Clifton <nickc@redhat.com>
189 * NEWS: Mention that --no-copy-dt-needed-entries is now the
192 2011-08-22 Michael Matz <matz@suse.de>
194 * ldmain.c (add_DT_NEEDED_for_dynamic): Default to FALSE.
195 * ld.texinfo (--copy-dt-needed-entries): Mention new default.
197 2011-08-17 Alan Modra <amodra@gmail.com>
200 * ldlang.c (section_already_linked): Revert 2011-07-09 changes.
201 * plugin.c: Likewise.
202 (asymbol_from_plugin_symbol): Create linkonce section for syms
205 2011-08-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
207 * emultempl/armelf.em (fix_arm1176): New variable.
208 (arm_elf_create_output_section_statements): Pass
209 fix_arm1176 option to bfd backend.
210 (OPTION_FIX_ARM1176): New define.
211 (OPTION_NO_FIX_ARM1176): Likewise.
212 (PARSE_AND_LIST_LONGOPTS): Add new command line options.
213 (PARSE_AND_LIST_OPTIONS): Likewise.
214 (PARSE_AND_LIST_ARGS_CASES): Likewise.
215 * ld.texinfo: Document new command line options.
217 2011-08-09 Alan Modra <amodra@gmail.com>
220 * plugin.c (add_symbols): Revert 2011-08-05.
222 2011-08-06 Kai Tietz <ktietz@redhat.com>
224 * scripttempl/pep.sc: Add .debug_macro section.
225 * scripttempl/pe.sc: Likewise.
227 2011-08-05 Alan Modra <amodra@gmail.com>
230 * plugin.c (add_symbols): Exclude comdat_key symbols from symbol
231 table if already seen.
233 2011-08-04 H.J. Lu <hongjiu.lu@intel.com>
235 * ldmain.c (main): Replace remove_output with ld_cleanup in
238 2011-07-26 Alan Modra <amodra@gmail.com>
240 * emulparams/elf32ppc.sh: Source plt_unwind.sh.
241 * emulparams/elf64ppc.sh: Likewise.
242 * emultempl/ppc32elf.em (OPTION_NO_TLS_OPT): Adjust.
243 (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
244 PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
246 * emultempl/ppc64elf.em (OPTION_STUBGROUP_SIZE): Adjust.
247 (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
248 PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
251 2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
253 * Makefile.am (ALL_64_EMULATIONS): Add eelf_k1om.o and
256 (eelf_k1om_fbsd.c): Likewise.
257 * Makefile.in: Regenerated.
259 * configure.tgt (targ64_extra_emuls): Add elf_k1om if elf_x86_64
260 is supported. Add elf_k1om_fbsd if elf_x86_64_fbsd is supported.
261 (targ_extra_emuls): Likewise.
263 * emulparams/elf_k1om.sh: New.
264 * emulparams/elf_k1om_fbsd.sh: Likewise.
266 2011-07-16 Roland McGrath <roland@hack.frob.com>
268 * ld.h (args_type): New field print_output_format.
269 * lexsup.c (enum option_values, ld_options, parse_args):
270 Handle --print-output-format.
271 * ldmain.c (main): Implement --print-output-format.
272 * ld.texinfo (Options): Document it.
274 * ldlang.c (lang_get_output_target): Don't return current_target
277 2011-07-15 Alan Modra <amodra@gmail.com>
279 * Makefile.am (e*.c): Sort.
280 * Makefile.in: Regenerate.
282 2011-07-14 Alan Modra <amodra@gmail.com>
284 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option,
285 gld${EMULATION_NAME}_list_options): Don't condition -z relro
286 and -z norelro on COMMONPAGESIZE being defined.
288 2011-07-14 Alan Modra <amodra@gmail.com>
290 * emultempl/ppc64elf.em (plt_static_chain): New var.
291 (gld${EMULATION_NAME}_after_allocation): Pass to ppc64_elf_size_stubs.
292 (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
293 PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Handle
294 --plt-static-chain and --no-plt-static-chain.
296 2011-07-14 Alan Modra <amodra@gmail.com>
298 * emultempl/elf32.em (gld${EMULATION_NAME}_add_options,
299 gld${EMULATION_NAME}_handle_option, gld${EMULATION_NAME}_list_options):
300 Provide --build-id, -z defs, -z muldefs, -z max-page-size,
301 -z common-page-size, -z execstack, -z noexecstack for all targets.
302 Add help for --exclude-libs.
303 (OPTION_LD_GENERATED_UNWIND_INFO,
304 OPTION_NO_LD_GENERATED_UNWIND_INFO): Move this..
305 (gld${EMULATION_NAME}_handle_option): ..and code handling
306 --ld-generated-unwind-info and --no-ld-generated-unwind-info..
307 * emulparams/plt_unwind.sh: ..to here. New file. Add help.
308 * emulparams/elf32_x86_64.sh: Include plt_unwind.sh.
309 * emulparams/elf_i386.sh: Likewise.
310 * emulparams/elf_i386_chaos.sh: Likewise.
311 * emulparams/elf_i386_ldso.sh: Likewise.
312 * emulparams/elf_l1om.sh: Likewise.
313 * emulparams/elf_x86_64.sh: Likewise.
315 2011-07-11 Catherine Moore <clm@codesourcery.com>
317 * ld.h (section_flag_list): Add field to struct wildcard_spec.
318 * ld.texinfo (INPUT_SECTION_FLAGS): Document.
319 * ldgram.y (flag_info_list, flag_info): Add to union.
320 (INPUT_SECTION_FLAGS): New token.
321 (wildcard_spec): Initialize section_flag_list to NULL for
323 (sect_flag_list, sect_flags): New rules.
324 (input_section_spec_no_keep): Add alternatives to recognize
326 * ldlang.c (walk_wild_consider_section): Initialize
327 section_flag_info field of the section struct.
328 (lang_add_section): Check input section flags.
329 (lang_add_wild): Initialize section_flag_list field of
330 the statement struct.
331 * ldlang.h (lang_input_statement_struct): Add section_flag_list field.
332 (lang_wild_statement_struct): Likewise.
333 * ldlex.l (INPUT_SECTION_FLAGS): New token.
334 * mri.c (mri_draw_tree): Initialize section_flag_list to NULL.
335 * NEWS: Announce INPUT_SECTION_FLAGS enhancement.
337 2011-07-09 H.J. Lu <hongjiu.lu@intel.com>
340 * ldlang.c (section_already_linked): Pass "struct already_linked *"
341 to bfd_section_already_linked.
342 (lang_process): Set link_info.loading_lto_outputs before
344 * plugin.c: Include "libbfd.h".
345 (add_symbols): Call bfd_section_already_linked with comdat_key.
347 2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
349 * configure.tgt: Revert x32 change.
351 2011-06-20 Jakub Jelinek <jakub@redhat.com>
354 * emultempl/elf32.em (OPTION_LD_GENERATED_UNWIND_INFO,
355 OPTION_NO_LD_GENERATED_UNWIND_INFO): Define.
356 (gld${EMULATION_NAME}_handle_option): Handle
357 --ld-generated-unwind-info and --no-ld-generated-unwind-info.
358 * ld.texinfo (--ld-generated-unwind-info,
359 --no-ld-generated-unwind-info): Document.
361 2011-06-19 H.J. Lu <hongjiu.lu@intel.com>
363 * configure.tgt: Support x32.
365 2011-06-15 Nick Clifton <nickc@redhat.com>
367 * NEWS: Mention addition of TILEPRO and TIKE-Gx support.
369 2011-06-13 Walter Lee <walt@tilera.com>
371 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
373 (ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
374 (eelf32tilegx.c): New target.
375 (eelf32tilepro.c): Likewise.
376 (eelf64tilegx.c): Likewise.
377 * Makefile.in: Regenerate.
378 * configure.tgt: Handle tilegx-*-* and tilepro-*-*.
379 * emulparams/elf32tilegx.sh: New file.
380 * emulparams/elf64tilegx.sh: New file.
381 * emulparams/elf32tilepro.sh: New file.
383 2011-06-13 Alan Modra <amodra@gmail.com>
385 * ldlang.c (sort_def_symbol, lang_one_common): Don't handle
386 warning symbols here.
387 * emultempl/pe.em (pr_sym): Remove redundant test.
388 * emultempl/pep.em (pr_sym): Likewise.
390 2011-06-09 Nick Clifton <nickc@redhat.com>
393 * emultempl/mipself.em (mips_add_stub_section): Do not add stubs
394 for sections that have been removed by garbage collection.
396 2011-06-08 Alan Modra <amodra@gmail.com>
398 * ldlang.c (lang_one_common): Handle warning symbols.
400 2011-06-07 Nick Clifton <nickc@redhat.com>
402 * configure.tgt: Accept any V850 architecture.
404 2011-06-03 Nick Clifton <nickc@redhat.com>
406 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32am33lin.c
407 Add rule to build eelf32am33lin.c
408 * Makefile.in: Regenerate.
410 2011-06-02 Nick Clifton <nickc@redhat.com>
412 * lexsup.c: Fix spelling mistake in comment.
413 * scripttempl/epocpe.sc: Likewise.
414 * scripttempl/i386beos.sc: Likewise.
415 * scripttempl/mcorepe.sc: Likewise.
416 * scripttempl/pe.sc: Likewise.
417 * scripttempl/pep.sc: Likewise.
418 * po/ld.pot: Regenerate.
420 2011-05-27 Nick Clifton <nickc@redhat.com>
422 * scripttempl/v850.sc (_heap_start): Provide.
424 2011-05-23 Alan Modra <amodra@gmail.com>
426 * ldmisc.c (vfinfo): Add %H.
427 * ldmain.c (reloc_overflow): Use %H rather than %C.
428 (reloc_dangerous, unattached_reloc): Likewise.
430 2011-05-23 Alan Modra <amodra@gmail.com>
433 * ldlang.c (lang_output_section_find_by_flags): Match orphan .sdata2
434 like sections to existing .sdata2, and similarly for orphan TLS
436 * emultempl/elf32.em (place_orphan): Exclude .tbss from orphan_bss.
438 2011-05-17 Tomohiro Kashiwada <kikairoya@gmail.com>
441 * emultempl/rxelf.em (ignore_lma): New variable.
442 (rx_elf_create_output_section_statements): Pass the setiing of
443 ignore_lma to bfd_elf32_rx_set_target_flags.
444 (OPTION_IGNORE_LMA): Define.
445 (OPTION_NO_IGNORE_LMA): Define.
446 (PARSE_AND_LIST_LONGOPTS): Add ignore lma.
447 (PARSE_AND_LIST_OPTIONS): Add ignore lma.
448 (PARSE_AND_LIST_ARGS_CASES): Add ignore lma.
450 2011-05-17 Alan Modra <amodra@gmail.com>
453 * ldmain.c (notice): Add "flags" and "string" param.
454 * plugin.c (plugin_notice): Likewise. Handle indirect, warning
455 and constructor syms.
457 2010-05-16 Daniel Jacobowitz <dan@codesourcery.com>
459 * ldlang.c (print_assignment): Use the symbol's section if we
461 * ldexp.c (exp_fold_tree_1): Skip self-assignment. Expand
462 comment on copying symbol type.
464 2011-05-16 H.J. Lu <hongjiu.lu@intel.com>
467 * plugin.c (plugin_notice): Set u.undef.abfd for symbols made
470 2011-05-16 Alan Modra <amodra@gmail.com>
472 * ldlang.c (lang_leave_output_section_statement): Don't copy
473 previous lma_region if given address.
475 2011-05-13 Bernd Schmidt <bernds@codesourcery.com>
477 (eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
478 eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
479 * Makefile.am (ALL_EMULATIONS): Add these files.
480 (eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
481 * Makefile.in: Regenerated.
482 * emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
484 * emulparams/elf32_tic6x_elf_be.sh: New file.
485 * emulparams/elf32_tic6x_elf_le.sh: New file.
486 * emulparams/elf32_tic6x_linux_be.sh: New file.
487 * emulparams/elf32_tic6x_linux_le.sh: New file.
488 * configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
489 (tic6x-*-*): Replaced by these.
491 2011-05-13 Jan Beulich <jbeulich@novell.com>
493 * configure.tgt: Add targets x86_64-*-pe and x86_64-*-pep.
495 2011-05-09 Paul Brook <paul@codesourcery.com>
497 * emultempl/tic6xdsbt.em (merge_exidx_entries): New.
498 (compare_output_sec_vma): New function.
499 (gld${EMULATION_NAME}_after_allocation): New function.
500 (OPTION_NO_MERGE_EXIDX_ENTRIES): Define.
501 (PARSE_AND_LIST_OPTIONS): Add --no-merge-exidx-entries.
502 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_MERGE_EXIDX_ENTRIES.
503 (LDEMUL_AFTER_ALLOCATION): Set.
504 * ld.texinfo: Document c6x --no-merge-exidx-entries.
506 2011-05-07 Dave Korn <dave.korn.cygwin@gmail.com>
509 * scripttempl/pe.sc (__rt_psrelocs_start): New symbol definition.
510 (__rt_psrelocs_end): Likewise.
511 (__rt_psrelocs_size): Likewise difference between the above.
512 (__RUNTIME_PSEUDO_RELOC_LIST_END__): Move outside .rdata section
513 immediately after end of pseudo-reloc data.
514 (___RUNTIME_PSEUDO_RELOC_LIST_END___): Likewise.
515 (__RUNTIME_PSEUDO_RELOC_LIST__): Move outside .rdata section and
516 calculate backward from list end.
517 (___RUNTIME_PSEUDO_RELOC_LIST___): Likewise.
518 * scripttempl/pep.sc: Likewise.
520 2011-05-06 Tristan Gingold <gingold@adacore.com>
522 * scripttempl/alphavms.sc (CODE): Add *$CODE*.
524 2011-05-04 Tristan Gingold <gingold@adacore.com>
526 * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Add
527 LDEMUL_ADD_OPTIONS and LDEMUL_HANDLE_OPTION.
528 * emultempl/vms.em (OPTION_IDENTIFICATION): New macro.
529 (gld${EMULATION_NAME}_add_options): New function.
530 (gld${EMULATION_NAME}_list_options): Ditto.
531 (gld${EMULATION_NAME}_handle_option): Ditto.
532 (LDEMUL_ADD_OPTIONS, LDEMUL_HANDLE_OPTION)
533 (LDEMUL_LIST_OPTIONS): Define.
535 2011-05-04 Alan Modra <amodra@gmail.com>
538 * ldexp.h (lang_phase_type): Add lang_assigning_phase_enum.
539 * ldexp.c (exp_fold_tree_1): Correct assign to dot comment. Don't
540 assign to dot when lang_assigning_phase_enum.
541 * ldlang.h (lang_do_assignments): Update prototype.
542 * ldlang.c (lang_do_assignments): Add phase parameter. Update all
544 * pe-dll.c (pe_dll_fill_sections, pe_exe_fill_sections): Update
545 lang_do_assignments calls.
547 2011-04-28 Daniel C. Klauer <daniel.c.klauer@web.de>
550 * emultempl/pe.em (_after_open): Correctly check whether symbol is
553 2011-04-26 Kai Tietz <ktietz@redhat.com>
555 * scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
556 * scripttempl/pep.sc: Likewise.
558 2011-04-24 Alan Modra <amodra@gmail.com>
562 * ldmain.c (notice): Delete "name" param, add "h".
563 * plugin.c (plugin_notice): Likewise. Set non_ir_ref. Handle
564 redefinitions of IR symbols in real BFDs.
565 (plugin_multiple_definition, plugin_multiple_common): Delete.
566 (non_ironly_hash, init_non_ironly_hash): Delete.
567 (is_visible_from_outside): Traverse entry_symbol chain.
568 (get_symbols): Use non_ir_ref flag rather than hash lookup.
570 2011-04-21 Tristan Gingold <gingold@adacore.com>
572 * scripttempl/alphavms.sc: Add dwarf2 embedding marks.
574 2011-04-20 Tristan Gingold <gingold@adacore.com>
576 * emultempl/aix.em (_add_options): Ignore -bbigtoc switch.
578 2011-04-20 Alan Modra <amodra@gmail.com>
580 * ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
582 2011-04-20 Alan Modra <amodra@gmail.com>
585 * ldfile.c (ldfile_try_open_bfd): Move code creating and switching
587 * ldmain.c (add_archive_element): ..and similar code here..
588 * plugin.c (plugin_maybe_claim): ..to here. New function.
589 (plugin_call_claim_file): Make static.
590 (asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
591 (plugin_multiple_common): New function.
592 (plugin_call_all_symbols_read): Hook in plugin_multiple_common.
593 * plugin.h (plugin_call_claim_file): Don't declare.
594 (plugin_maybe_claim): Declare.
596 2011-04-20 Alan Modra <amodra@gmail.com>
599 * ldmain.c (multiple_definition): Take a bfd_link_hash_entry
600 pointer arg rather than "name", "obfd", "osec", "oval". Add code
601 removed from linker.c. Hack around xcofflink.c oddity in
603 (multiple_common): Similarly.
604 * plugin.c (orig_allow_multiple_defs): Delete.
605 (plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
606 (plugin_multiple_definition): Update.
608 2011-04-18 Kai Tietz <ktietz@redhat.com>
610 * deffilep.y (def_aligncomm): Avoid duplets.
612 * deffilep.y (def_pool_str): New type.
613 (pool_strs): Local static.
614 (def_pool_alloc): Local function.
615 (def_pool_strdup): Likewise.
616 (def_pool_free): Likewise.
617 (opt_name): Replace xmalloc/xstrdup by
618 def_pool_alloc/def_pool_strdup.
619 (dot_name): Likewise.
620 (anylang_id): Likewise.
622 (def_file_parse): Call def_pool_free on
623 exit and cleanup directives elements.
624 (def_file_add_directive): Call def_pool_free.
626 2011-04-18 Paul Brook <paul@codesourcery.com>
628 * emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
629 for unwinding tables.
631 2011-04-18 Alan Modra <amodra@gmail.com>
635 * ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
636 when no_more_claiming.
637 * ldmain.c (add_archive_element): Likewise.
638 (multiple_definition): Remove plugin_multiple_definition call.
639 (notice): Remove plugin_notice call.
640 * ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
642 (plugin_insert): New static var.
643 (open_input_bfds): Only rescan libs after plugin insert point.
644 (lang_gc_sections): Omit plugin claimed files.
645 (lang_process): Set plugin_insert. Only rescan when plugin adds
647 * plugin.h (no_more_claiming): Declare.
648 (plugin_notice, plugin_multiple_definition): Don't declare.
649 * plugin.c: Formatting.
650 (orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
651 plugin_callbacks): New static vars.
652 (no_more_claiming): Make global.
653 (plugin_cached_allow_multiple_defs): Delete.
654 (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
655 use newer bfd_make_section variant. Make COMMON section too.
656 Error handling. Correct setting of gp size.
657 (asymbol_from_plugin_symbol): Properly cast last arg of concat.
658 (message): Likewise for ACONCAT.
659 (asymbol_from_plugin_symbol): Use our COMMON section.
660 (get_symbols): When report_plugin_symbols, show visibility too.
661 (init_non_ironly_hash): Move. Don't test non_ironly_hash.
662 (plugin_load_plugins): Save state of linker callbacks, set up to
663 call plugin_notice instead. Call init_non_ironly_hash here.
664 (plugin_call_all_symbols_read): Set plugin_multiple_definition in
666 (plugin_notice): Rewrite.
667 (plugin_multiple_definition): Make static, call original callback.
669 2011-04-15 Alan Modra <amodra@gmail.com>
672 * ldlang.c (enum open_bfd_mode): New.
673 (open_input_bfds): Replace "force" param with "mode". Reload
674 archives for rescan. Update all callers.
675 (lang_process): Make another open_input_bfds pass for plugins.
677 2011-04-13 Kai Tietz <ktietz@redhat.com>
680 * deffile.h (def_file_add_export): Add is_dup argument.
681 (def_file_add_import): Likewise.
682 * deffilep.y (are_names_equal): New helper.
683 (cmp_export_elem): New helper.
684 (find_export_in_list): Add search routine for exports.
685 (def_file_add_export): Check for duplicates.
686 (cmp_import_elem): New helper.
687 (find_import_in_list): Add search routine for imports.
688 (def_file_add_import): Check for duplicates.
689 (def_exports): Handle duplicates.
690 (def_imports): Likewise.
691 * pe-dll.c (process_def_file_and_drectve): Likewise.
692 (pe_implied_import_dll): Likewise.
694 2011-04-11 Chris Quenelle <chris.quenelle@oracle.com>
696 * scripttempl/elf.sc (.exception_ranges): Add new section.
698 2011-04-08 Hector Oron <hector.oron@gmail.com>
701 * configure.tgt: Add support for arm-*-gnueabihf targets.
703 2011-04-07 Eric B. Weddington <eric.weddington@atmel.com>
705 * Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
707 2011-04-07 Joseph Myers <joseph@codesourcery.com>
709 * configure.tgt: Remove stray ;;.
711 2011-04-06 Joseph Myers <joseph@codesourcery.com>
713 * configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
714 strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
715 thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
716 xscale-*-coff, xscale-*-elf): Remove targets.
718 2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
720 * configure.tgt: Add elf_l1om to targ_extra_libpath for
723 * emulparams/elf_l1om.sh: Remove duplicates.
725 2011-03-31 Bernd Schmidt <bernds@codesourcery.com>
727 * emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
728 GENERATE_SHLIB_SCRIPT): New defines.
729 (TEXT_START_ADDR): Define differently depending on target.
730 (.got): Redefine to include "*(.dsbt)".
731 (SDATA_START_SYMBOLS): Remove, replace with
732 (OTHER_GOT_SYMBOLS): New.
733 (OTHER_BSS_SECTIONS): Define only for ELF targets.
734 * emultempl/tic6xdsbt.em: New file.
735 * gen-doc.texi: Set C6X.
736 * ld.texinfo: Likewise.
737 (Options specific to C6X uClinux targets): New section.
739 2011-03-29 Alan Modra <amodra@gmail.com>
742 * ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
744 2011-03-26 John Marino <binutils@marino.st>
746 * configure.host: Update *-*-dragonfly* host entry.
747 * configure.tgt: Update *-*-dragonfly* target entry.
748 * ldlex.l: Prevent redefinition of YY_NO_UNPUT.
750 2011-03-28 Joseph Myers <joseph@codesourcery.com>
752 * configure.in: Check for windows.h, not Windows.h.
753 * configure: Regenerate.
754 * plugin.c: Include windows.h, not Windows.h.
756 2011-03-25 Eric B. Weddington <eric.weddington@atmel.com>
758 * Makefile.in: Regenerate.
760 2011-03-23 Joseph Myers <joseph@codesourcery.com>
762 * lexsup.c (parse_args): Only set report_plugin_symbols if plugins
763 are enabled. Mark level as possibly unused.
765 2011-03-22 Eric B. Weddington <eric.weddington@atmel.com>
767 * Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
768 (eavrxmega?.c): Likewise.
769 * configure.tgt (targ_extra_emuls): Likewise.
770 * emulparams/avrxmega1.sh: New file.
771 * emulparams/avrxmega2.sh: Likewise.
772 * emulparams/avrxmega3.sh: Likewise.
773 * emulparams/avrxmega4.sh: Likewise.
774 * emulparams/avrxmega5.sh: Likewise.
775 * emulparams/avrxmega6.sh: Likewise.
776 * emulparams/avrxmega7.sh: Likewise.
777 * emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
778 Add avrxmega6, avrxmega7 to list of architectures for no stubs.
780 2011-03-21 Eric B. Weddington <eric.weddington@atmel.com>
782 * scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
784 2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
786 * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
789 2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
791 * emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
792 instead of dynamic_sections_created.
794 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
796 * plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
798 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
800 * ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
802 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
804 * ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
805 wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
806 * ldmain.c (add_archive_element): Set it if the member is claimed.
807 * ldlang.c (new_afile): Initialise claim_archive and claimed members.
808 (find_replacements_insert_point): New helper function.
809 (lang_process): After adding and opening replacement files passed
810 from plugin, splice them into correct place in statement list and
811 file chains to preserve critical link order.
812 (lang_list_insert_after): New helper function.
813 (lang_list_remove_tail): Likewise.
815 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
817 * plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
818 (IRONLY_SUFFIX_LEN): Delete.
819 (plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
820 (is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
821 enclosing lang input statement instead.
823 2011-03-10 Dave Korn <dave.korn.cygwin@gmail.com>
825 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
826 alignment of input sections when creating orphan output sections
827 during relocatable link.
828 * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
830 2011-03-04 H.J. Lu <hongjiu.lu@intel.com>
832 * ld.texinfo: Document --verbose[=NUMBER].
834 * lexsup.c (ld_options): Update --verbose.
835 (parse_args): Set report_plugin_symbols.
837 * plugin.c (report_plugin_symbols): New.
838 (get_symbols): Report plugin symbols if report_plugin_symbols
841 * plugin.h (report_plugin_symbols): New.
843 2011-03-01 H.J. Lu <hongjiu.lu@intel.com>
846 * testplug.c: Don't include "filenames.h".
847 (onclaim_file): Don't use filename_cmp.
849 2011-02-28 Kai Tietz <kai.tietz@onevision.com>
851 * emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
852 * emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
854 (gld${EMULATION_NAME}_stat_needed): Likewise.
855 (gld${EMULATION_NAME}_check_needed): Likewise.
856 * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
857 (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
858 * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
859 (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
860 * ldfile.c (ldfile_open_file): Likewise.
861 * ldlang.c (wild_sort): Likewise.
862 (lookup_name): Likewise.
863 (check_excluded_libs): Likewise.
864 * ldmisc.c (vfinfo): Likewise.
865 * pe-dll.c (libnamencmp): Likewise.
866 (auto_export): Likewise.
867 (pe_dll_generate_implib): Likewise.
868 * testplug.c (onclaim_file): Likewise.
870 2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
873 * plugin.c (get_symbols): Don't check entry symbol here.
874 (init_non_ironly_hash): Add entry_symbol chain into
877 2011-02-24 H.J. Lu <hongjiu.lu@intel.com>
880 * plugin.c (get_symbols): Don't mark entry symbol IR only.
882 2011-02-18 John David Anglin <dave.anglin@nrc-cnnrc.gc.ca>
885 emulparams/hppalinux.sh (DATA_ADDR): Define.
886 (SHLIB_DATA_ADDR): Likewise.
888 2011-02-16 H.J. Lu <hongjiu.lu@intel.com>
890 * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
893 2011-02-15 Kai Tietz <kai.tietz@onevision.com>
895 * pe-dll.c (process_def_file_and_drectve): Don't strip
896 leading underscore from symbol by calling bfd_find_version_for_sym.
898 2011-02-14 Mike Frysinger <vapier@gentoo.org>
900 * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
901 the bfd_demangle of sym, change users of sym to c_sym when not
902 already demangling, and free when done. Change callers of
903 cplus_demangle to bfd_demangle.
905 2011-02-14 Alan Modra <amodra@gmail.com>
907 * plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy
908 .text section, use newer bfd_make_section variant. Error handling.
909 Correct setting of gp size.
910 (asymbol_from_plugin_symbol): Properly cast last arg of concat.
911 (message): Likewise for ACONCAT.
912 (get_symbols): Formatting.
914 2011-02-14 Alan Modra <amodra@gmail.com>
916 * ldmain.c (remove_output): Rename to..
917 (ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
919 * plugin.c (plugin_call_cleanup): Make global.
920 (plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
921 * plugin.h (plugin_call_cleanup): Declare.
923 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
925 * configure: Regenerate.
927 2011-02-10 Alan Modra <amodra@gmail.com>
929 * scripttempl/armbpabi.sc: Revert 2010-11-02 H.J. Lu.
930 * scripttempl/avr.sc: Likewise.
931 * scripttempl/elf32cr16.sc: Likewise.
932 * scripttempl/elf32crx.sc: Likewise.
933 * scripttempl/elf32msp430.sc: Likewise.
934 * scripttempl/elf32msp430_3.sc: Likewise.
935 * scripttempl/elf32sh-symbian.sc: Likewise.
936 * scripttempl/elf64hppa.sc: Likewise.
937 * scripttempl/elf_chaos.sc: Likewise.
938 * scripttempl/elfd10v.sc: Likewise.
939 * scripttempl/elfd30v.sc: Likewise.
940 * scripttempl/elfi370.sc: Likewise.
941 * scripttempl/elfm68hc11.sc: Likewise.
942 * scripttempl/elfm68hc12.sc: Likewise.
943 * scripttempl/elfxtensa.sc: Likewise.
944 * scripttempl/ip2k.sc: Likewise.
945 * scripttempl/iq2000.sc: Likewise.
946 * scripttempl/mep.sc: Likewise.
947 * scripttempl/mmo.sc: Likewise.
948 * scripttempl/v850.sc: Likewise.
949 * scripttempl/xstormy16.sc: Likewise.
950 * scripttempl/elf.sc: Revert 2010-10-29 H.J. Lu.
952 2011-01-22 H.J. Lu <hongjiu.lu@intel.com>
954 * Makefile.am (CXX): Removed.
956 * configure.in: Add AC_PROG_CXX.
958 * Makefile.in: Regenerated.
959 * configure: Likewise.
961 2011-01-22 Richard Sandiford <rdsandiford@googlemail.com>
963 * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
964 private data and GP size.
966 2011-01-21 Alan Modra <amodra@gmail.com>
968 * ldexp.c (fold_binary): Set result section for arithmetic and
969 logical operations to NULL when both operands are in same section.
970 * ld.texinfo (Expression Section): Describe this.
972 2011-01-14 Alan Modra <amodra@gmail.com>
974 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
975 attempt to put non-alloc orphans before debug sections, just place
978 2011-01-14 J. Park <grassman@gmail.com>
981 * ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
983 2011-01-14 Alan Modra <amodra@gmail.com>
985 * Makefile.am: Sort emulation rules.
986 (eelf32am33lin.c): Delete.
987 (ALL_EMULATION_SOURCES): Sort, add missing entries.
988 (ALL_64_EMULATION_SOURCES): Likewise.
989 * Makefile.in: Regenerate.
991 2011-01-13 Alan Modra <amodra@gmail.com>
994 * ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
995 (Expression Section): Update.
996 * ld.h (ld_config_type): Add sane_expr.
997 * ldgram.y (ifile_p1): Add LD_FEATURE.
998 * ldlex.l (LD_FEATYRE): New.
999 * ldemul.c (after_parse_default): Delete code handling ld_compatibility.
1000 * ldexp.h (struct ldexp_control): Delete uses_defined.
1001 * ldexp.c: Remove all uses of uses_defined.
1002 (fold_name): Test config.sane_expr rather than ld_compatibility.
1003 (exp_fold_tree_1): Likewise. Adjust handling of assignments
1005 * ldlang.h (ld_compatibility): Delete.
1006 (lang_ld_feature): Declare.
1007 * ldlang.c (ld_compatibility): Delete.
1008 (open_input_bfds): Only handle assignments for --defsym.
1009 (lang_ld_feature): New function.
1012 * ldexp.h (exp_assop): Delete.
1013 (exp_assign, exp_defsym): Declare.
1014 * ldexp.c (exp_assop): Make static, handle all assignment variations.
1015 (exp_assign, exp_defsym): New functions.
1016 (exp_provide): Use exp_assop.
1017 * ldgram.y (defsym_expr): Use exp_defsym.
1018 * ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
1019 * emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
1020 * emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
1022 2011-01-12 Alan Modra <amodra@gmail.com>
1025 * ldexp.h (enum phase_enum): Comment. Add exp_dataseg_done.
1026 * ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code. Test
1027 for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
1028 to detect when we've finished sizing sections.
1029 (fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
1030 (fold_binary <DATA_SEGMENT_RELRO_END>): Likewise. Also test
1031 that we are not inside an output section statement.
1032 * ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
1033 not exp_dataseg_relro_adjust or exp_dataseg_adjust. Don't set
1034 lang_final_phase_enum here.
1035 (lang_process): Set lang_final_phase_enum here.
1037 2011-01-10 Nick Clifton <nickc@redhat.com>
1039 * po/da.po: Updated Danish translation.
1041 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
1043 * ldlang.c (startup_file): Removed.
1044 (lang_startup): Updated.
1046 2011-01-05 H.J. Lu <hongjiu.lu@intel.com>
1049 * plugin.c (get_symbols): Check if owner_sec->owner is NULL
1050 before accessing its flags field.
1052 2011-01-01 H.J. Lu <hongjiu.lu@intel.com>
1054 * ldver.c (ldversion): Update copyright to 2011.
1056 For older changes see ChangeLog-2010
1062 version-control: never