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