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