binutils/
[external/binutils.git] / ld / ChangeLog
1 2011-09-22  Tristan Gingold  <gingold@adacore.com>
2
3         * NEWS: Add marker for 2.22.
4
5 2011-09-20  Alan Modra  <amodra@gmail.com>
6
7         PR ld/13201
8         * ldlang.h (lang_input_statement_type): Add "reload" bitfield.
9         Clarify comments.
10         * ldlang.c (new_afile): Init new field.
11         (load_symbols): Don't call ldlang_add_file when reloading.
12         (open_input_bfds): Reload as-needed libs during plugin rescan.
13
14 2011-09-15  H.J. Lu  <hongjiu.lu@intel.com>
15
16         PR ld/12975
17         * ldlang.c (lang_elf_version_info): Removed.
18         (lang_register_vers_node): Replace lang_elf_version_info with
19         link_info.version_info.
20         (lang_add_vers_depend): Likewise.
21         * pe-dll.c (process_def_file_and_drectve): Likewise.
22         * emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
23
24         * ldlang.h (lang_elf_version_info): Removed.
25
26         * plugin.c  (is_visible_from_outside): Check if symbol is hidden
27         by version script.
28
29         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
30         Remove lang_elf_version_info.
31
32 2011-09-15  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
33
34         PR ld/13183
35         * ldmain.c (add_archive_element): Support thin archive member
36         for LTO.
37
38 2011-08-26  Nick Clifton  <nickc@redhat.com>
39
40         * po/es.po: Updated Spanish translation.
41
42 2011-08-26  Nick Clifton  <nickc@redhat.com>
43
44         * NEWS: Mention that --no-copy-dt-needed-entries is now the
45         default.
46
47 2011-08-22  Michael Matz  <matz@suse.de>
48
49         * ldmain.c (add_DT_NEEDED_for_dynamic): Default to FALSE.
50         * ld.texinfo (--copy-dt-needed-entries): Mention new default.
51
52 2011-08-17  Alan Modra  <amodra@gmail.com>
53
54         PR ld/12762
55         * ldlang.c (section_already_linked): Revert 2011-07-09 changes.
56         * plugin.c: Likewise.
57         (asymbol_from_plugin_symbol): Create linkonce section for syms
58         with comdat_key.
59
60 2011-08-09  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
61
62         * emultempl/armelf.em (fix_arm1176): New variable.
63         (arm_elf_create_output_section_statements): Pass
64         fix_arm1176 option to bfd backend.
65         (OPTION_FIX_ARM1176): New define.
66         (OPTION_NO_FIX_ARM1176): Likewise.
67         (PARSE_AND_LIST_LONGOPTS): Add new command line options.
68         (PARSE_AND_LIST_OPTIONS): Likewise.
69         (PARSE_AND_LIST_ARGS_CASES): Likewise.
70         * ld.texinfo: Document new command line options.
71
72 2011-08-09  Alan Modra  <amodra@gmail.com>
73
74         PR ld/13066
75         * plugin.c (add_symbols): Revert 2011-08-05.
76
77 2011-08-06  Kai Tietz  <ktietz@redhat.com>
78
79         * scripttempl/pep.sc: Add .debug_macro section.
80         * scripttempl/pe.sc: Likewise.
81
82 2011-08-05  Alan Modra  <amodra@gmail.com>
83
84         PR ld/12762
85         * plugin.c (add_symbols): Exclude comdat_key symbols from symbol
86         table if already seen.
87
88 2011-08-04  H.J. Lu  <hongjiu.lu@intel.com>
89
90         * ldmain.c (main): Replace remove_output with ld_cleanup in
91         comments.
92
93 2011-07-26  Alan Modra  <amodra@gmail.com>
94
95         * emulparams/elf32ppc.sh: Source plt_unwind.sh.
96         * emulparams/elf64ppc.sh: Likewise.
97         * emultempl/ppc32elf.em (OPTION_NO_TLS_OPT): Adjust.
98         (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
99         PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
100         existing values.
101         * emultempl/ppc64elf.em (OPTION_STUBGROUP_SIZE): Adjust.
102         (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
103         PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Append to
104         existing values.
105
106 2011-07-22  H.J. Lu  <hongjiu.lu@intel.com>
107
108         * Makefile.am (ALL_64_EMULATIONS): Add eelf_k1om.o and
109         eelf_k1om_fbsd.o
110         (eelf_k1om.c): New.
111         (eelf_k1om_fbsd.c): Likewise.
112         * Makefile.in: Regenerated.
113
114         * configure.tgt (targ64_extra_emuls): Add elf_k1om if elf_x86_64
115         is supported.  Add elf_k1om_fbsd if elf_x86_64_fbsd is supported.
116         (targ_extra_emuls): Likewise.
117
118         * emulparams/elf_k1om.sh: New.
119         * emulparams/elf_k1om_fbsd.sh: Likewise.
120
121 2011-07-16  Roland McGrath  <roland@hack.frob.com>
122
123         * ld.h (args_type): New field print_output_format.
124         * lexsup.c (enum option_values, ld_options, parse_args):
125         Handle --print-output-format.
126         * ldmain.c (main): Implement --print-output-format.
127         * ld.texinfo (Options): Document it.
128
129         * ldlang.c (lang_get_output_target): Don't return current_target
130         when it's NULL.
131
132 2011-07-15  Alan Modra  <amodra@gmail.com>
133
134         * Makefile.am (e*.c): Sort.
135         * Makefile.in: Regenerate.
136
137 2011-07-14  Alan Modra  <amodra@gmail.com>
138
139         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option,
140         gld${EMULATION_NAME}_list_options): Don't condition -z relro
141         and -z norelro on COMMONPAGESIZE being defined.
142
143 2011-07-14  Alan Modra  <amodra@gmail.com>
144
145         * emultempl/ppc64elf.em (plt_static_chain): New var.
146         (gld${EMULATION_NAME}_after_allocation): Pass to ppc64_elf_size_stubs.
147         (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
148         PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Handle
149         --plt-static-chain and --no-plt-static-chain.
150
151 2011-07-14  Alan Modra  <amodra@gmail.com>
152
153         * emultempl/elf32.em (gld${EMULATION_NAME}_add_options,
154         gld${EMULATION_NAME}_handle_option, gld${EMULATION_NAME}_list_options):
155         Provide --build-id, -z defs, -z muldefs, -z max-page-size,
156         -z common-page-size, -z execstack, -z noexecstack for all targets.
157         Add help for --exclude-libs.
158         (OPTION_LD_GENERATED_UNWIND_INFO,
159         OPTION_NO_LD_GENERATED_UNWIND_INFO): Move this..
160         (gld${EMULATION_NAME}_handle_option): ..and code handling
161         --ld-generated-unwind-info and --no-ld-generated-unwind-info..
162         * emulparams/plt_unwind.sh: ..to here.  New file.  Add help.
163         * emulparams/elf32_x86_64.sh: Include plt_unwind.sh.
164         * emulparams/elf_i386.sh: Likewise.
165         * emulparams/elf_i386_chaos.sh: Likewise.
166         * emulparams/elf_i386_ldso.sh: Likewise.
167         * emulparams/elf_l1om.sh: Likewise.
168         * emulparams/elf_x86_64.sh: Likewise.
169
170 2011-07-11  Catherine Moore  <clm@codesourcery.com>
171
172         * ld.h (section_flag_list): Add field to struct wildcard_spec.
173         * ld.texinfo (INPUT_SECTION_FLAGS): Document.
174         * ldgram.y (flag_info_list, flag_info): Add to union.
175         (INPUT_SECTION_FLAGS): New token.
176         (wildcard_spec): Initialize section_flag_list to NULL for
177         each alternative.
178         (sect_flag_list, sect_flags): New rules.
179         (input_section_spec_no_keep): Add alternatives to recognize
180         sect_flags.
181         * ldlang.c (walk_wild_consider_section): Initialize
182         section_flag_info field of the section struct.
183         (lang_add_section): Check input section flags.
184         (lang_add_wild): Initialize section_flag_list field of
185         the statement struct.
186         * ldlang.h (lang_input_statement_struct): Add section_flag_list field.
187         (lang_wild_statement_struct): Likewise.
188         * ldlex.l (INPUT_SECTION_FLAGS): New token.
189         * mri.c (mri_draw_tree): Initialize section_flag_list to NULL.
190         * NEWS: Announce INPUT_SECTION_FLAGS enhancement.
191
192 2011-07-09  H.J. Lu  <hongjiu.lu@intel.com>
193
194         PR ld/12942
195         * ldlang.c (section_already_linked): Pass "struct already_linked *"
196         to bfd_section_already_linked.
197         (lang_process): Set link_info.loading_lto_outputs before
198         loading LTO outputs.
199         * plugin.c: Include "libbfd.h".
200         (add_symbols): Call bfd_section_already_linked with comdat_key.
201
202 2011-06-20  H.J. Lu  <hongjiu.lu@intel.com>
203
204         * configure.tgt: Revert x32 change.
205
206 2011-06-20  Jakub Jelinek  <jakub@redhat.com>
207
208         PR ld/12570
209         * emultempl/elf32.em (OPTION_LD_GENERATED_UNWIND_INFO,
210         OPTION_NO_LD_GENERATED_UNWIND_INFO): Define.
211         (gld${EMULATION_NAME}_handle_option): Handle
212         --ld-generated-unwind-info and --no-ld-generated-unwind-info.
213         * ld.texinfo (--ld-generated-unwind-info,
214         --no-ld-generated-unwind-info): Document.
215
216 2011-06-19  H.J. Lu  <hongjiu.lu@intel.com>
217
218         * configure.tgt: Support x32.
219
220 2011-06-15  Nick Clifton  <nickc@redhat.com>
221
222         * NEWS: Mention addition of TILEPRO and TIKE-Gx support.
223
224 2011-06-13  Walter Lee  <walt@tilera.com>
225
226         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
227         eelf32tilepro.c.
228         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
229         (eelf32tilegx.c): New target.
230         (eelf32tilepro.c): Likewise.
231         (eelf64tilegx.c): Likewise.
232         * Makefile.in: Regenerate.
233         * configure.tgt: Handle tilegx-*-* and tilepro-*-*.
234         * emulparams/elf32tilegx.sh: New file.
235         * emulparams/elf64tilegx.sh: New file.
236         * emulparams/elf32tilepro.sh: New file.
237
238 2011-06-13  Alan Modra  <amodra@gmail.com>
239
240         * ldlang.c (sort_def_symbol, lang_one_common): Don't handle
241         warning symbols here.
242         * emultempl/pe.em (pr_sym): Remove redundant test.
243         * emultempl/pep.em (pr_sym): Likewise.
244
245 2011-06-09  Nick Clifton  <nickc@redhat.com>
246
247         PR ld/12845
248         * emultempl/mipself.em (mips_add_stub_section): Do not add stubs
249         for sections that have been removed by garbage collection.
250
251 2011-06-08  Alan Modra  <amodra@gmail.com>
252
253         * ldlang.c (lang_one_common): Handle warning symbols.
254
255 2011-06-07  Nick Clifton  <nickc@redhat.com>
256
257         * configure.tgt: Accept any V850 architecture.
258
259 2011-06-03  Nick Clifton  <nickc@redhat.com>
260
261         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32am33lin.c
262         Add rule to build eelf32am33lin.c
263         * Makefile.in: Regenerate.
264
265 2011-06-02  Nick Clifton  <nickc@redhat.com>
266
267         * lexsup.c: Fix spelling mistake in comment.
268         * scripttempl/epocpe.sc: Likewise.
269         * scripttempl/i386beos.sc: Likewise.
270         * scripttempl/mcorepe.sc: Likewise.
271         * scripttempl/pe.sc: Likewise.
272         * scripttempl/pep.sc: Likewise.
273         * po/ld.pot: Regenerate.
274
275 2011-05-27  Nick Clifton  <nickc@redhat.com>
276
277         * scripttempl/v850.sc (_heap_start): Provide.
278
279 2011-05-23  Alan Modra  <amodra@gmail.com>
280
281         * ldmisc.c (vfinfo): Add %H.
282         * ldmain.c (reloc_overflow): Use %H rather than %C.
283         (reloc_dangerous, unattached_reloc): Likewise.
284
285 2011-05-23  Alan Modra  <amodra@gmail.com>
286
287         PR 12763
288         * ldlang.c (lang_output_section_find_by_flags): Match orphan .sdata2
289         like sections to existing .sdata2, and similarly for orphan TLS
290         sections.
291         * emultempl/elf32.em (place_orphan): Exclude .tbss from orphan_bss.
292
293 2011-05-17  Tomohiro Kashiwada  <kikairoya@gmail.com>
294
295         PR ld/12759
296         * emultempl/rxelf.em (ignore_lma): New variable.
297         (rx_elf_create_output_section_statements): Pass the setiing of
298         ignore_lma to bfd_elf32_rx_set_target_flags.
299         (OPTION_IGNORE_LMA): Define.
300         (OPTION_NO_IGNORE_LMA): Define.
301         (PARSE_AND_LIST_LONGOPTS): Add ignore lma.
302         (PARSE_AND_LIST_OPTIONS): Add ignore lma.
303         (PARSE_AND_LIST_ARGS_CASES): Add ignore lma.
304
305 2011-05-17  Alan Modra  <amodra@gmail.com>
306
307         PR ld/12760
308         * ldmain.c (notice): Add "flags" and "string" param.
309         * plugin.c (plugin_notice): Likewise.  Handle indirect, warning
310         and constructor syms.
311
312 2010-05-16  Daniel Jacobowitz  <dan@codesourcery.com>
313
314         * ldlang.c (print_assignment): Use the symbol's section if we
315         use its value.
316         * ldexp.c (exp_fold_tree_1): Skip self-assignment.  Expand
317         comment on copying symbol type.
318
319 2011-05-16  H.J. Lu  <hongjiu.lu@intel.com>
320
321         PR ld/12760
322         * plugin.c (plugin_notice): Set u.undef.abfd for symbols made
323         undefweak.
324
325 2011-05-16  Alan Modra  <amodra@gmail.com>
326
327         * ldlang.c (lang_leave_output_section_statement): Don't copy
328         previous lma_region if given address.
329
330 2011-05-13  Bernd Schmidt  <bernds@codesourcery.com>
331
332         (eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
333         eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
334         * Makefile.am (ALL_EMULATIONS): Add these files.
335         (eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
336         * Makefile.in: Regenerated.
337         * emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
338         vectors.
339         * emulparams/elf32_tic6x_elf_be.sh: New file.
340         * emulparams/elf32_tic6x_elf_le.sh: New file.
341         * emulparams/elf32_tic6x_linux_be.sh: New file.
342         * emulparams/elf32_tic6x_linux_le.sh: New file.
343         * configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
344         (tic6x-*-*): Replaced by these.
345
346 2011-05-13  Jan Beulich  <jbeulich@novell.com>
347
348         * configure.tgt: Add targets x86_64-*-pe and x86_64-*-pep.
349
350 2011-05-09  Paul Brook  <paul@codesourcery.com>
351
352         * emultempl/tic6xdsbt.em (merge_exidx_entries): New.
353         (compare_output_sec_vma): New function.
354         (gld${EMULATION_NAME}_after_allocation): New function.
355         (OPTION_NO_MERGE_EXIDX_ENTRIES): Define.
356         (PARSE_AND_LIST_OPTIONS): Add --no-merge-exidx-entries.
357         (PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_MERGE_EXIDX_ENTRIES.
358         (LDEMUL_AFTER_ALLOCATION): Set.
359         * ld.texinfo: Document c6x --no-merge-exidx-entries.
360
361 2011-05-07  Dave Korn  <dave.korn.cygwin@gmail.com>
362
363         PR ld/12365
364         * scripttempl/pe.sc (__rt_psrelocs_start): New symbol definition.
365         (__rt_psrelocs_end): Likewise.
366         (__rt_psrelocs_size): Likewise difference between the above.
367         (__RUNTIME_PSEUDO_RELOC_LIST_END__): Move outside .rdata section
368         immediately after end of pseudo-reloc data.
369         (___RUNTIME_PSEUDO_RELOC_LIST_END___): Likewise.
370         (__RUNTIME_PSEUDO_RELOC_LIST__): Move outside .rdata section and
371         calculate backward from list end.
372         (___RUNTIME_PSEUDO_RELOC_LIST___): Likewise.
373         * scripttempl/pep.sc: Likewise.
374
375 2011-05-06  Tristan Gingold  <gingold@adacore.com>
376
377         * scripttempl/alphavms.sc (CODE): Add *$CODE*.
378
379 2011-05-04  Tristan Gingold  <gingold@adacore.com>
380
381         * emultempl/generic.em (ld_${EMULATION_NAME}_emulation): Add
382         LDEMUL_ADD_OPTIONS and LDEMUL_HANDLE_OPTION.
383         * emultempl/vms.em (OPTION_IDENTIFICATION): New macro.
384         (gld${EMULATION_NAME}_add_options): New function.
385         (gld${EMULATION_NAME}_list_options): Ditto.
386         (gld${EMULATION_NAME}_handle_option): Ditto.
387         (LDEMUL_ADD_OPTIONS, LDEMUL_HANDLE_OPTION)
388         (LDEMUL_LIST_OPTIONS): Define.
389
390 2011-05-04  Alan Modra  <amodra@gmail.com>
391
392         PR ld/12726
393         * ldexp.h (lang_phase_type): Add lang_assigning_phase_enum.
394         * ldexp.c (exp_fold_tree_1): Correct assign to dot comment.  Don't
395         assign to dot when lang_assigning_phase_enum.
396         * ldlang.h (lang_do_assignments): Update prototype.
397         * ldlang.c (lang_do_assignments): Add phase parameter.  Update all
398         callers.
399         * pe-dll.c (pe_dll_fill_sections, pe_exe_fill_sections): Update
400         lang_do_assignments calls.
401
402 2011-04-28  Daniel C. Klauer  <daniel.c.klauer@web.de>
403
404         PR ld/12614
405         * emultempl/pe.em (_after_open): Correctly check whether symbol is
406         in undef list.
407
408 2011-04-26  Kai Tietz  <ktietz@redhat.com>
409
410         * scripttempl/pe.sc: Handle .eh_frame($|.)* sections.
411         * scripttempl/pep.sc: Likewise.
412
413 2011-04-24  Alan Modra  <amodra@gmail.com>
414
415         PR ld/12365
416         PR ld/12696
417         * ldmain.c (notice): Delete "name" param, add "h".
418         * plugin.c (plugin_notice): Likewise.  Set non_ir_ref.  Handle
419         redefinitions of IR symbols in real BFDs.
420         (plugin_multiple_definition, plugin_multiple_common): Delete.
421         (non_ironly_hash, init_non_ironly_hash): Delete.
422         (is_visible_from_outside): Traverse entry_symbol chain.
423         (get_symbols): Use non_ir_ref flag rather than hash lookup.
424
425 2011-04-21  Tristan Gingold  <gingold@adacore.com>
426
427         * scripttempl/alphavms.sc: Add dwarf2 embedding marks.
428
429 2011-04-20  Tristan Gingold  <gingold@adacore.com>
430
431         * emultempl/aix.em (_add_options): Ignore -bbigtoc switch.
432
433 2011-04-20  Alan Modra  <amodra@gmail.com>
434
435         * ld.h (ld_config_type <hash_table_size>): Make it an unsigned long.
436
437 2011-04-20  Alan Modra  <amodra@gmail.com>
438
439         PR ld/12365
440         * ldfile.c (ldfile_try_open_bfd): Move code creating and switching
441         to plugin IR BFD..
442         * ldmain.c (add_archive_element): ..and similar code here..
443         * plugin.c (plugin_maybe_claim): ..to here.  New function.
444         (plugin_call_claim_file): Make static.
445         (asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
446         (plugin_multiple_common): New function.
447         (plugin_call_all_symbols_read): Hook in plugin_multiple_common.
448         * plugin.h (plugin_call_claim_file): Don't declare.
449         (plugin_maybe_claim): Declare.
450
451 2011-04-20  Alan Modra  <amodra@gmail.com>
452
453         PR ld/12365
454         * ldmain.c (multiple_definition): Take a bfd_link_hash_entry
455         pointer arg rather than "name", "obfd", "osec", "oval".  Add code
456         removed from linker.c.  Hack around xcofflink.c oddity in
457         passing NULL nbfd.
458         (multiple_common): Similarly.
459         * plugin.c (orig_allow_multiple_defs): Delete.
460         (plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
461         (plugin_multiple_definition): Update.
462
463 2011-04-18  Kai Tietz  <ktietz@redhat.com>
464
465         * deffilep.y (def_aligncomm): Avoid duplets.
466
467         * deffilep.y (def_pool_str): New type.
468         (pool_strs): Local static.
469         (def_pool_alloc): Local function.
470         (def_pool_strdup): Likewise.
471         (def_pool_free): Likewise.
472         (opt_name): Replace xmalloc/xstrdup by
473         def_pool_alloc/def_pool_strdup.
474         (dot_name): Likewise.
475         (anylang_id): Likewise.
476         (def_lex): Likewise.
477         (def_file_parse): Call def_pool_free on
478         exit and cleanup directives elements.
479         (def_file_add_directive): Call def_pool_free.
480
481 2011-04-18  Paul Brook  <paul@codesourcery.com>
482
483         * emulparams/elf32_tic6x_le.sh: Define OTHER_READONLY_SECTIONS
484         for unwinding tables.
485
486 2011-04-18  Alan Modra  <amodra@gmail.com>
487
488         PR ld/12365
489         PR ld/12672
490         * ldfile.c (ldfile_try_open_bfd): Don't attempt any plugin action
491         when no_more_claiming.
492         * ldmain.c (add_archive_element): Likewise.
493         (multiple_definition): Remove plugin_multiple_definition call.
494         (notice): Remove plugin_notice call.
495         * ldlang.c (lang_list_insert_after, void lang_list_remove_tail): Move.
496         Delete prototype.
497         (plugin_insert): New static var.
498         (open_input_bfds): Only rescan libs after plugin insert point.
499         (lang_gc_sections): Omit plugin claimed files.
500         (lang_process): Set plugin_insert.  Only rescan when plugin adds
501         objects.
502         * plugin.h (no_more_claiming): Declare.
503         (plugin_notice, plugin_multiple_definition): Don't declare.
504         * plugin.c: Formatting.
505         (orig_notice_all, orig_allow_multiple_defs, orig_callbacks,
506         plugin_callbacks): New static vars.
507         (no_more_claiming): Make global.
508         (plugin_cached_allow_multiple_defs): Delete.
509         (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy .text section,
510         use newer bfd_make_section variant.  Make COMMON section too.
511         Error handling.  Correct setting of gp size.
512         (asymbol_from_plugin_symbol): Properly cast last arg of concat.
513         (message): Likewise for ACONCAT.
514         (asymbol_from_plugin_symbol): Use our COMMON section.
515         (get_symbols): When report_plugin_symbols, show visibility too.
516         (init_non_ironly_hash): Move.  Don't test non_ironly_hash.
517         (plugin_load_plugins): Save state of linker callbacks, set up to
518         call plugin_notice instead.  Call init_non_ironly_hash here.
519         (plugin_call_all_symbols_read): Set plugin_multiple_definition in
520         plugin callbacks.
521         (plugin_notice): Rewrite.
522         (plugin_multiple_definition): Make static, call original callback.
523
524 2011-04-15  Alan Modra  <amodra@gmail.com>
525
526         PR ld/12672
527         * ldlang.c (enum open_bfd_mode): New.
528         (open_input_bfds): Replace "force" param with "mode".  Reload
529         archives for rescan.  Update all callers.
530         (lang_process): Make another open_input_bfds pass for plugins.
531
532 2011-04-13  Kai Tietz  <ktietz@redhat.com>
533
534         PR binutils/12658
535         * deffile.h (def_file_add_export): Add is_dup argument.
536         (def_file_add_import): Likewise.
537         * deffilep.y (are_names_equal): New helper.
538         (cmp_export_elem): New helper.
539         (find_export_in_list): Add search routine for exports.
540         (def_file_add_export): Check for duplicates.
541         (cmp_import_elem): New helper.
542         (find_import_in_list): Add search routine for imports.
543         (def_file_add_import): Check for duplicates.
544         (def_exports): Handle duplicates.
545         (def_imports): Likewise.
546         * pe-dll.c (process_def_file_and_drectve): Likewise.
547         (pe_implied_import_dll): Likewise.
548
549 2011-04-11  Chris Quenelle  <chris.quenelle@oracle.com>
550
551         * scripttempl/elf.sc (.exception_ranges): Add new section.
552
553 2011-04-08  Hector Oron  <hector.oron@gmail.com>
554
555         PR ld/12643
556         * configure.tgt: Add support for arm-*-gnueabihf targets.
557
558 2011-04-07  Eric B. Weddington  <eric.weddington@atmel.com>
559
560         * Makefile.in: Regenerate. Remove stray eavrtiny10 rules.
561
562 2011-04-07  Joseph Myers  <joseph@codesourcery.com>
563
564         * configure.tgt: Remove stray ;;.
565
566 2011-04-06  Joseph Myers  <joseph@codesourcery.com>
567
568         * configure.tgt (thumb-*-linux-* | thumb-*-uclinux*,
569         strongarm-*-coff, strongarm-*-elf, strongarm-*-kaos*,
570         thumb-*-coff, thumb-*-elf, thumb-epoc-pe, thumb-*-pe,
571         xscale-*-coff, xscale-*-elf): Remove targets.
572
573 2011-03-31  H.J. Lu  <hongjiu.lu@intel.com>
574
575         * configure.tgt: Add elf_l1om to targ_extra_libpath for
576         x86_64-*-linux-*.
577
578         * emulparams/elf_l1om.sh: Remove duplicates.
579
580 2011-03-31  Bernd Schmidt  <bernds@codesourcery.com>
581
582         * emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
583         GENERATE_SHLIB_SCRIPT): New defines.
584         (TEXT_START_ADDR): Define differently depending on target.
585         (.got): Redefine to include "*(.dsbt)".
586         (SDATA_START_SYMBOLS): Remove, replace with
587         (OTHER_GOT_SYMBOLS): New.
588         (OTHER_BSS_SECTIONS): Define only for ELF targets.
589         * emultempl/tic6xdsbt.em: New file.
590         * gen-doc.texi: Set C6X.
591         * ld.texinfo: Likewise.
592         (Options specific to C6X uClinux targets): New section.
593
594 2011-03-29  Alan Modra  <amodra@gmail.com>
595
596         PR ld/12613
597         * ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
598
599 2011-03-26  John Marino  <binutils@marino.st>
600
601         * configure.host: Update *-*-dragonfly* host entry.
602         * configure.tgt: Update *-*-dragonfly* target entry.
603         * ldlex.l: Prevent redefinition of YY_NO_UNPUT.
604
605 2011-03-28  Joseph Myers  <joseph@codesourcery.com>
606
607         * configure.in: Check for windows.h, not Windows.h.
608         * configure: Regenerate.
609         * plugin.c: Include windows.h, not Windows.h.
610
611 2011-03-25  Eric B. Weddington  <eric.weddington@atmel.com>
612
613         * Makefile.in: Regenerate.
614
615 2011-03-23  Joseph Myers  <joseph@codesourcery.com>
616
617         * lexsup.c (parse_args): Only set report_plugin_symbols if plugins
618         are enabled.  Mark level as possibly unused.
619
620 2011-03-22  Eric B. Weddington  <eric.weddington@atmel.com>
621
622         * Makefile.am (ALL_EMULATION_SOURCES): Add AVR XMEGA architectures.
623         (eavrxmega?.c): Likewise.
624         * configure.tgt (targ_extra_emuls): Likewise.
625         * emulparams/avrxmega1.sh: New file.
626         * emulparams/avrxmega2.sh: Likewise.
627         * emulparams/avrxmega3.sh: Likewise.
628         * emulparams/avrxmega4.sh: Likewise.
629         * emulparams/avrxmega5.sh: Likewise.
630         * emulparams/avrxmega6.sh: Likewise.
631         * emulparams/avrxmega7.sh: Likewise.
632         * emultempl/avrelf.em (avr_elf_${EMULATION_NAME}_before_allocation):
633         Add avrxmega6, avrxmega7 to list of architectures for no stubs.
634
635 2011-03-21  Eric B. Weddington  <eric.weddington@atmel.com>
636
637         * scripttempl/avr.sc: Add fuse, lock, and signature memory regions.
638
639 2011-03-14  Richard Sandiford  <richard.sandiford@linaro.org>
640
641         * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Check
642         eh->target_internal.
643
644 2011-03-14  Richard Sandiford  <richard.sandiford@linaro.org>
645
646         * emultempl/armelf.em (arm_elf_before_allocation): Check dynobj
647         instead of dynamic_sections_created.
648
649 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
650
651         * plugin.c (get_symbols): Use wrapped lookup for undefined symbols.
652
653 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
654
655         * ldlang.c (lang_check): Don't run checks on dummy IR BFDs.
656
657 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
658
659         * ldlang.h (lang_input_statement_type): Add new 'claim_archive' flag,
660         wrapping both it and 'claim' flag in #ifdef ENABLE_PLUGINS.
661         * ldmain.c (add_archive_element): Set it if the member is claimed.
662         * ldlang.c (new_afile): Initialise claim_archive and claimed members.
663         (find_replacements_insert_point): New helper function.
664         (lang_process): After adding and opening replacement files passed
665         from plugin, splice them into correct place in statement list and
666         file chains to preserve critical link order.
667         (lang_list_insert_after): New helper function.
668         (lang_list_remove_tail): Likewise.
669
670 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
671
672         * plugin.c (IRONLY_SUFFIX): Revise to nicely human-readable form.
673         (IRONLY_SUFFIX_LEN): Delete.
674         (plugin_get_ir_dummy_bfd): Don't append IRONLY_SUFFIX.
675         (is_ir_dummy_bfd): Don't look for suffix; check claimed flag of
676         enclosing lang input statement instead.
677
678 2011-03-10  Dave Korn  <dave.korn.cygwin@gmail.com>
679
680         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Preserve
681         alignment of input sections when creating orphan output sections
682         during relocatable link.
683         * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
684
685 2011-03-04  H.J. Lu  <hongjiu.lu@intel.com>
686
687         * ld.texinfo: Document --verbose[=NUMBER].
688
689         * lexsup.c (ld_options): Update --verbose.
690         (parse_args): Set report_plugin_symbols.
691
692         * plugin.c (report_plugin_symbols): New.
693         (get_symbols): Report plugin symbols if report_plugin_symbols
694         is TRUE.
695
696         * plugin.h (report_plugin_symbols): New.
697
698 2011-03-01  H.J. Lu  <hongjiu.lu@intel.com>
699
700         PR ld/12529
701         * testplug.c: Don't include "filenames.h".
702         (onclaim_file): Don't use filename_cmp.
703
704 2011-02-28  Kai Tietz  <kai.tietz@onevision.com>
705
706         * emultempl/beos.em (sort_by_file_name): Use filename_(n)cmp.
707         * emultempl/elf32.em (gld${EMULATION_NAME}_vercheck):
708         Likewise.
709         (gld${EMULATION_NAME}_stat_needed): Likewise.
710         (gld${EMULATION_NAME}_check_needed): Likewise.
711         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Likewise.
712         (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
713         * emultempl/pep.em (gld_${EMULATION_NAME}_after_open): Likewise.
714         (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
715         * ldfile.c (ldfile_open_file): Likewise.
716         * ldlang.c (wild_sort): Likewise.
717         (lookup_name): Likewise.
718         (check_excluded_libs): Likewise.
719         * ldmisc.c (vfinfo): Likewise.
720         * pe-dll.c (libnamencmp): Likewise.
721         (auto_export): Likewise.
722         (pe_dll_generate_implib): Likewise.
723         * testplug.c (onclaim_file): Likewise.
724
725 2011-02-24  H.J. Lu  <hongjiu.lu@intel.com>
726
727         PR ld/12507
728         * plugin.c (get_symbols): Don't check entry symbol here.
729         (init_non_ironly_hash): Add entry_symbol chain into
730         non_ironly_hash.
731
732 2011-02-24  H.J. Lu  <hongjiu.lu@intel.com>
733
734         PR ld/12507
735         * plugin.c (get_symbols): Don't mark entry symbol IR only.
736
737 2011-02-18  John David Anglin  <dave.anglin@nrc-cnnrc.gc.ca>
738
739         PR ld/12376
740         emulparams/hppalinux.sh (DATA_ADDR): Define.
741         (SHLIB_DATA_ADDR): Likewise.
742
743 2011-02-16  H.J. Lu  <hongjiu.lu@intel.com>
744
745         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX): Changed to
746         x32 for x32.
747
748 2011-02-15  Kai Tietz  <kai.tietz@onevision.com>
749
750         * pe-dll.c (process_def_file_and_drectve): Don't strip
751         leading underscore from symbol by calling bfd_find_version_for_sym.
752
753 2011-02-14  Mike Frysinger  <vapier@gentoo.org>
754
755         * ldlang.c (lang_vers_match): Declare a new c_sym, assign it to
756         the bfd_demangle of sym, change users of sym to c_sym when not
757         already demangling, and free when done.  Change callers of
758         cplus_demangle to bfd_demangle.
759
760 2011-02-14  Alan Modra  <amodra@gmail.com>
761
762         * plugin.c (plugin_get_ir_dummy_bfd): Set SEC_EXCLUDE on dummy
763         .text section, use newer bfd_make_section variant.  Error handling.
764         Correct setting of gp size.
765         (asymbol_from_plugin_symbol): Properly cast last arg of concat.
766         (message): Likewise for ACONCAT.
767         (get_symbols): Formatting.
768
769 2011-02-14  Alan Modra  <amodra@gmail.com>
770
771         * ldmain.c (remove_output): Rename to..
772         (ld_cleanup): ..this. Call bfd_cache_close_all and plugin_call_cleanup.
773         (main): Adjust.
774         * plugin.c (plugin_call_cleanup): Make global.
775         (plugin_load_plugins): Don't register plugin_call_cleanup with xatexit.
776         * plugin.h (plugin_call_cleanup): Declare.
777
778 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
779
780         * configure: Regenerate.
781
782 2011-02-10  Alan Modra  <amodra@gmail.com>
783
784         * scripttempl/armbpabi.sc: Revert 2010-11-02  H.J. Lu.
785         * scripttempl/avr.sc: Likewise.
786         * scripttempl/elf32cr16.sc: Likewise.
787         * scripttempl/elf32crx.sc: Likewise.
788         * scripttempl/elf32msp430.sc: Likewise.
789         * scripttempl/elf32msp430_3.sc: Likewise.
790         * scripttempl/elf32sh-symbian.sc: Likewise.
791         * scripttempl/elf64hppa.sc: Likewise.
792         * scripttempl/elf_chaos.sc: Likewise.
793         * scripttempl/elfd10v.sc: Likewise.
794         * scripttempl/elfd30v.sc: Likewise.
795         * scripttempl/elfi370.sc: Likewise.
796         * scripttempl/elfm68hc11.sc: Likewise.
797         * scripttempl/elfm68hc12.sc: Likewise.
798         * scripttempl/elfxtensa.sc: Likewise.
799         * scripttempl/ip2k.sc: Likewise.
800         * scripttempl/iq2000.sc: Likewise.
801         * scripttempl/mep.sc: Likewise.
802         * scripttempl/mmo.sc: Likewise.
803         * scripttempl/v850.sc: Likewise.
804         * scripttempl/xstormy16.sc: Likewise.
805         * scripttempl/elf.sc: Revert 2010-10-29  H.J. Lu.
806
807 2011-01-22  H.J. Lu  <hongjiu.lu@intel.com>
808
809         * Makefile.am (CXX): Removed.
810
811         * configure.in: Add AC_PROG_CXX.
812
813         * Makefile.in: Regenerated.
814         * configure: Likewise.
815
816 2011-01-22  Richard Sandiford  <rdsandiford@googlemail.com>
817
818         * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
819         private data and GP size.
820
821 2011-01-21  Alan Modra  <amodra@gmail.com>
822
823         * ldexp.c (fold_binary): Set result section for arithmetic and
824         logical operations to NULL when both operands are in same section.
825         * ld.texinfo (Expression Section): Describe this.
826
827 2011-01-14  Alan Modra  <amodra@gmail.com>
828
829         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
830         attempt to put non-alloc orphans before debug sections, just place
831         them after .comment.
832
833 2011-01-14  J. Park  <grassman@gmail.com>
834
835         PR ld/12339
836         * ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.
837
838 2011-01-14  Alan Modra  <amodra@gmail.com>
839
840         * Makefile.am: Sort emulation rules.
841         (eelf32am33lin.c): Delete.
842         (ALL_EMULATION_SOURCES): Sort, add missing entries.
843         (ALL_64_EMULATION_SOURCES): Likewise.
844         * Makefile.in: Regenerate.
845
846 2011-01-13  Alan Modra  <amodra@gmail.com>
847
848         PR ld/12356
849         * ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
850         (Expression Section): Update.
851         * ld.h (ld_config_type): Add sane_expr.
852         * ldgram.y (ifile_p1): Add LD_FEATURE.
853         * ldlex.l (LD_FEATYRE): New.
854         * ldemul.c (after_parse_default): Delete code handling ld_compatibility.
855         * ldexp.h (struct ldexp_control): Delete uses_defined.
856         * ldexp.c: Remove all uses of uses_defined.
857         (fold_name): Test config.sane_expr rather than ld_compatibility.
858         (exp_fold_tree_1): Likewise.  Adjust handling of assignments
859         during first phase.
860         * ldlang.h (ld_compatibility): Delete.
861         (lang_ld_feature): Declare.
862         * ldlang.c (ld_compatibility): Delete.
863         (open_input_bfds): Only handle assignments for --defsym.
864         (lang_ld_feature): New function.
865
866         PR ld/12356
867         * ldexp.h (exp_assop): Delete.
868         (exp_assign, exp_defsym): Declare.
869         * ldexp.c (exp_assop): Make static, handle all assignment variations.
870         (exp_assign, exp_defsym): New functions.
871         (exp_provide): Use exp_assop.
872         * ldgram.y (defsym_expr): Use exp_defsym.
873         * ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
874         * emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
875         * emultempl/xtensaelf.em: Update exp_assop -> exp_assign.
876
877 2011-01-12  Alan Modra  <amodra@gmail.com>
878
879         PR ld/12380
880         * ldexp.h (enum phase_enum): Comment.  Add exp_dataseg_done.
881         * ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code.  Test
882         for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
883         to detect when we've finished sizing sections.
884         (fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
885         (fold_binary <DATA_SEGMENT_RELRO_END>): Likewise.  Also test
886         that we are not inside an output section statement.
887         * ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
888         not exp_dataseg_relro_adjust or exp_dataseg_adjust.  Don't set
889         lang_final_phase_enum here.
890         (lang_process): Set lang_final_phase_enum here.
891
892 2011-01-10  Nick Clifton  <nickc@redhat.com>
893
894         * po/da.po: Updated Danish translation.
895
896 2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>
897
898         * ldlang.c (startup_file): Removed.
899         (lang_startup): Updated.
900
901 2011-01-05  H.J. Lu  <hongjiu.lu@intel.com>
902
903         PR ld/12364
904         * plugin.c (get_symbols): Check if owner_sec->owner is NULL
905         before accessing its flags field.
906
907 2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
908
909         * ldver.c (ldversion): Update copyright to 2011.
910
911 For older changes see ChangeLog-2010
912 \f
913 Local Variables:
914 mode: change-log
915 left-margin: 8
916 fill-column: 74
917 version-control: never
918 End: