Implement ELF linker -z global option
[external/binutils.git] / ld / ChangeLog
1 2012-11-20  H.J. Lu  <hongjiu.lu@intel.com>
2
3         * ld.texinfo: Document "-z global".
4
5         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Support
6         "-z global".
7         (gld${EMULATION_NAME}_list_options): Likewise.
8
9 2012-11-15  Maxim Kuvyrkov  <maxim@codesourcery.com>
10
11         Port lib32 arrangement from Debian.
12         * emulparams/elf_i386.sh: Include lib32 directories in library search
13         path.
14
15 2012-11-15  Simon Baldwin  <simonb@google.com>
16
17         * ldmain.c (main): Add start_sbrk set to sbrk(0) on entry.
18         On exit, compute data size as the delta between current
19         sbrk(0) and start_sbrk.
20
21 2012-11-09  Nick Clifton  <nickc@redhat.com>
22
23         * emultempl/rxelf.em (no_flag_mismatch_warnings): Initialise to
24         true.
25         (PARSE_AND_LIST_LONGOPTS): Add flag-mismatch-warnings.
26         (PARSE_AND_LIST_ARG_CASES): Add support for
27         --flag-mismatch-warnings.
28
29         * Makefile.am: (ALL_EMULATION_SOURCES): Add ev850_rh850.c.
30         * Makefile.in: Regenerate.
31         * configure.tgt (v850*-*-*): Make v850_rh850 the default
32         emulation. Add vanilla v850 as an extra emulation.
33         * emulparams/v850_rh850.sh: New file.
34         * scripttempl/v850_rh850.sc: New file.
35
36 2012-11-09  Edgar E. Iglesias <edgar.iglesias@gmail.com>
37
38         * Makefile.am: Add eelf32microblazeel.c and eelf32mbel_linux.c.
39         * Makefile.in: Regenerated.
40         * configure.tgt: Add microblazeel and set endian per target.
41         * emulparams/elf32mb_linux.sh: Add OUTPUT_FORMAT.
42         * emulparams/elf32microblaze.sh: Likewise.
43         * emulparams/elf32mbel_linux.sh: New file.
44         * emulparams/elf32microblazeel.sh: Likewise.
45
46 2012-11-09  H.J. Lu  <hongjiu.lu@intel.com>
47
48         * testplug.c (record_add_file): Remove trailing redundant `;'.
49
50 2012-11-05  Alan Modra  <amodra@gmail.com>
51
52         * configure.in: Apply 2012-09-10 change to config.in here.
53
54 2012-11-01  Nathan Sidwell  <nathan@codesourcery.com>
55
56         * emultempl/elf32.em: Print stacksize help.
57
58 2012-11-01  Alan Modra  <amodra@gmail.com>
59
60         * ldlang.c (insert_pad): Correct output section size calculation.
61         (lang_size_sections_1): Likewise for lang_data_statement and
62         lang_reloc_statement.
63
64 2012-10-29  Alan Modra  <amodra@gmail.com>
65
66         * configure.tgt (powerpcle-pe,winnt,cygwin): Add deffilep.o
67         and pe-dll.o.
68
69 2012-10-24  H.J. Lu  <hongjiu.lu@intel.com>
70
71         * ld.h (command_line): Remove
72         disable_target_specific_optimizations.
73         (RELAXATION_DISABLED_BY_DEFAULT): Removed.
74         (RELAXATION_DISABLED_BY_USER): Likewise.
75         (RELAXATION_ENABLED): Likewise.
76         (DISABLE_RELAXATION): Likewise.
77         (ENABLE_RELAXATION): Likewise.
78
79         * ldmain.c (main): Updated.
80
81         * ldmain.h (RELAXATION_DISABLED_BY_DEFAULT): New macro.
82         (RELAXATION_DISABLED_BY_USER): Likewise.
83         (RELAXATION_ENABLED): Likewise.
84         (DISABLE_RELAXATION): Likewise.
85         (ENABLE_RELAXATION): Likewise.
86
87 2012-10-23  Nathan Sidwell  <nathan@codesourcery.com>
88
89         * ld.texinfo (stack-size): New option.
90         * emultempl/elf32.em: Add stack-size option.
91
92 2012-10-22  Jan Beich  <jbeich@tormail.org>
93             Alan Modra  <amodra@gmail.com>
94
95         PR ld/14426
96         * ldlex.h (option_values): Add OPTION_IGNORE_UNRESOLVED_SYMBOL.
97         * lexsup.c (parse_args): Likewise.
98         (ld_options): Describe --ignore-unresolved-symbol.
99         * ldmain.h (add_ignoresym): Declare.
100         * ldmain.c (add_ignoresym): New function, extracted from..
101         (undefined_symbol): ..here.  Return if the symbol is in ignore_hash.
102         (constructor_callback): Don't use global link_info here.
103         (reloc_overflow): Likewise.
104
105 2012-10-22  Alan Modra  <amodra@gmail.com>
106
107         * plugin.c (plugin_load_plugins): Warning fix.
108
109 2012-10-18  Kai Tietz  <ktietz@redhat.com>
110
111         PR binutils/14067
112         * NEWS: Menition new feature.
113         * scripttempl/pep.sc: Add zdebug sections.
114         * scripttempl/pe.sc: L
115
116 2012-09-19  Steve Ellcey  <sellcey@mips.com>
117
118         * configure.tgt: Add mips*-mti-elf* target.
119
120 2012-09-17  Alan Modra  <amodra@gmail.com>
121
122         * ld.texinfo (Expression Section): Correct description of
123         conversions for a binary operation involving an absolute symbol
124         and a number.
125
126 2012-09-14  David Edelsohn  <dje.gcc@gmail.com>
127
128         * configure: Regenerate.
129
130 2012-09-13  Anthony Green  <green@moxielogic.com>
131
132         * emulparams/elf32moxie.sh (BIG_OUTPUT_FORMAT,
133         LITTLE_OUTPUT_FORMAT): Define.
134         (OUTPUT_FORMAT): Change to elf32-bigmoxie.
135         (EMBEDDED): Define.
136
137 2012-09-12  DJ Delorie  <dj@redhat.com>
138
139         * emulparams/elf32rx.sh (OTHER_READONLY_SECTIONS): Add W_* sections.
140
141 2012-09-10  Matthias Klose  <doko@ubuntu.com>
142
143         * config.in: Disable sanity check for kfreebsd.
144
145 2012-09-10  H.J. Lu  <hongjiu.lu@intel.com>
146
147         * configure: Regenerated.
148
149 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
150             Alan Modra  <amodra@gmail.com>
151
152         * configure.tgt (powerpc-*-elf, et al): Define targ_extra_libpath.
153         Correct whitespace.
154         (powerpcle-*-elf, et al): Likewise.  Correct targ_extra_emuls.
155
156 2012-09-10  Iain Sandoe  <iain@codesourcery.com>
157
158         * configure.tgt (powerpc-*-elf, et al): Define targ64_extra_emuls
159         and targ64_extra_libpath.
160         (powerpcle-*-elf, et al): Likewise.
161
162 2012-09-09  Hans-Peter Nilsson  <hp@bitrange.com>
163
164         * emultempl/mmo.em (mmo_place_orphan): Rewrite to also attach
165         orphan sections to .data and .bss output sections, not just .text.
166         When giving up on finding a suitable output section, attach to any
167         output section other than .MMIX.reg_contents, if it exists.
168         * scripttempl/mmo.sc: Move output debug sections to just before
169         .MMIX.reg_contents.  Add .gnu.attributes.  Add new . = . NOP
170         assignments and move end-of-section provide-symbols after them
171         to force the end-of-section symbols to the address after orphan
172         placement.  Add SORT_NONE to .init and .fini sections.
173
174 2012-08-30  H.J. Lu  <hongjiu.lu@intel.com>
175
176         PR ld/14525
177         * scripttempl/elf.sc: Also provide __executable_start for PIE.
178
179 2012-08-17  Kai Tietz  <ktietz@redhat.com>
180
181         PR ld/14326
182         * scripttempl/pe.sc: Add _etext symbol.
183
184 2012-08-14  Nick Clifton  <nickc@redhat.com>
185
186         * configure.in (ALL_LINGUGAS): Add uk.
187         * configure: Regenerate.
188         * po/uk.po: New Ukranian translation.
189
190 2012-08-13  Ian Bolton  <ian.bolton@arm.com>
191             Laurent Desnogues  <laurent.desnogues@arm.com>
192             Jim MacArthur  <jim.macarthur@arm.com>
193             Marcus Shawcroft  <marcus.shawcroft@arm.com>
194             Nigel Stephens  <nigel.stephens@arm.com>
195             Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
196             Richard Earnshaw  <rearnsha@arm.com>
197             Sofiane Naci  <sofiane.naci@arm.com>
198             Tejas Belagod  <tejas.belagod@arm.com>
199             Yufeng Zhang  <yufeng.zhang@arm.com>
200
201         * Makefile.am: Add AArch64.
202         * Makefile.in: Regenerate.
203         * configure.tgt: Add AArch64.
204         * emulparams/aarch64elf.sh: New file.
205         * emulparams/aarch64elfb.sh: New file.
206         * emulparams/aarch64linux.sh: New file.
207         * emulparams/aarch64linuxb.sh: New file.
208         * emultempl/aarch64elf.em: New file.
209         * NEWS: Mention the new feature.
210
211 2012-08-09  Nick Clifton  <nickc@redhat.com>
212
213         * po/vi.po: Updated Vietnamese translation.
214
215 2012-08-07  Daniel Green  <venix1@gmail.com>
216
217         * scripttempl/pe.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
218         * scripttempl/pep.sc (R_TLS): Add .tls$AAA and .tls$ZZZ.
219
220 2012-08-07  Nick Clifton  <nickc@redhat.com>
221
222         * po/ja.po: Updated Japanese translation.
223
224 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
225
226         * emulparams/elf32bmip.sh: Make _gp hidden.
227         * emulparams/elf32bmipn32-defs.sh: Likewise.
228         * emulparams/elf32mipswindiss.sh: Likewise.
229         * scripttempl/mips.sc: Likewise.
230
231 2012-08-06  Maciej W. Rozycki  <macro@codesourcery.com>
232
233         * ldexp.h (etree_union): Add defsym member to the assign member
234         structure.
235         (exp_assign): Add hidden argument to prototype.
236         * ldexp.c (exp_fold_tree_1): Use the defsym member to handle
237         --defsym symbols.
238         (exp_assop): Add defsym argument, initialize the defsym member
239         of the assign structure.
240         (exp_assign): Handle hidden symbols.
241         (exp_defsym): Update to use the defsym argument to exp_assop.
242         (exp_provide): Update to handle the defsym argument to exp_assop.
243         * ldlex.l (HIDDEN): New token.
244         * ldgram.y (HIDDEN): Likewise.
245         (assignment, section): Update calls to exp_assign.
246         * ldctor.c (ldctor_build_sets): Likewise.
247         * mri.c (mri_format): Likewise.
248         * ldlang.c (lang_insert_orphan, lang_leave_overlay): Likewise.
249         (open_input_bfds): Remove --defsym symbols special case.
250         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Update
251         call to exp_assign.
252         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
253         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
254         * emultempl/spuelf.em (spu_place_special_section): Likewise.
255         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets):
256         Likewise.
257         * ld.texinfo (Assigning Values to Symbols): Add HIDDEN.
258         (HIDDEN): New subsection.
259
260 2012-07-31  H.J. Lu  <hongjiu.lu@intel.com>
261
262         PR ld/14156
263         * ldlang.c (wild_sort): Properly handle by_none.
264
265         * scripttempl/elf.sc: Add SORT_NONE to .init and .fini sections.
266         * scripttempl/elf32msp430.sc: Likewise.
267         * scripttempl/elf32msp430_3.sc: Likewise.
268         * scripttempl/elfd10v.sc: Likewise.
269         * scripttempl/elfd30v.sc: Likewise.
270         * scripttempl/elfxtensa.sc: Likewise.
271
272 2012-07-30  Nick Clifton  <nickc@redhat.com>
273
274         * po/ld.pot: Updated template.
275         * po/bg.po: Updated Bulgarian translation.
276         * po/es.po: Updated Spanish translation.
277         * po/fi.po: Updated Finnish translation.
278
279 2012-07-27  Mike Frysinger  <vapier@gentoo.org>
280
281         * configure.in (BFD_VERSION): Run bfd/configure --version and
282         parse the output of that.
283         * configure: Regenerate.
284
285 2012-07-27  Tristan Gingold  <gingold@adacore.com>
286
287         * NEWS: Add marker for 2.23.
288
289 2012-07-24  Jan Waclawek <konfera@efton.sk>
290
291         PR ld/14058
292         * emultempl/avrelf.em (avr_elf_after_allocation): Call
293         elf32_avr_size_stubs with is_prealloc_run as TRUE.
294
295 2012-07-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
296
297         * emulparams/elf_s390.sh (IREL_IN_PLT): Define.
298         * emulparams/elf64_s390.sh (IREL_IN_PLT): Define.
299
300 2012-07-13  Nick Clifton  <nickc@redhat.com>
301
302         PR ld/14357
303         * ldmain.c (trace_file_tries): Rename to 'verbose'.
304         * ldfile.c: Likewise.
305         * ldlang.c: Likewise.
306         * ldmain.h: Likewise.
307         * lexsup.c: Likewise.
308         * emultempl/elf32.em: Likewise.
309         * emultemp/spuelf.em: Likewise.
310         * pe-dll.c (pe_dll_generate_implib): Only print creation message
311         in verbose mode.
312
313 2012-07-10  H.J. Lu  <hongjiu.lu@intel.com>
314
315         PR ld/14156
316         * NEWS: Mention SORT_NONE.
317
318         * ld.h (sort_type): Add by_none.
319
320         * ld.texinfo: Document SORT_NONE.
321
322         * ldgram.y: Handle SORT_NONE.
323
324         * ldlang.c (update_wild_statements): Handle by_none.  Don't
325         sort .init/.fini sections.
326
327         * ldlex.l: Add SORT_NONE.
328
329 2012-07-02  H.J. Lu  <hongjiu.lu@intel.com>
330
331         * ld.texinfo: Replace __end_SECNAME with __stop_SECNAME.
332
333 2012-06-29  Nick Clifton  <nickc@redhat.com>
334
335         * scripttempl/alphavms.sc: Add .debug_macro section.
336         * scripttempl/elf.sc: Likewise.
337         * scripttempl/elf64hppa.sc: Likewise.
338         * scripttempl/elf_chaos.sc: Likewise.
339         * scripttempl/elfxtensa.sc: Likewise.
340         * scripttempl/ia64vms.sc: Likewise.
341
342         * scripttempl/armbpabi.sc: Add .debug_pubtypes, .debug_ranges and
343         .debug_macro sections.
344         * scripttempl/avr.sc: Likewise.
345         * scripttempl/elf32cr16.sc: Likewise.
346         * scripttempl/elf32crx.sc: Likewise.
347         * scripttempl/elf32msp430.sc: Likewise.
348         * scripttempl/elf32msp430_3.sc: Likewise.
349         * scripttempl/elf32sh-symbian.sc: Likewise.
350         * scripttempl/elfd30v.sc: Likewise.
351         * scripttempl/elfi370.sc: Likewise.
352         * scripttempl/elfm68hc11.sc: Likewise.
353         * scripttempl/elfm68hc12.sc: Likewise.
354         * scripttempl/elfxgate.sc: Likewise.
355         * scripttempl/i386beos.sc: Likewise.
356         * scripttempl/i386go32.sc: Likewise.
357         * scripttempl/ip2k.sc: Likewise.
358         * scripttempl/iq2000.sc: Likewise.
359         * scripttempl/mep.sc: Likewise.
360         * scripttempl/mmo.sc: Likewise.
361         * scripttempl/v850.sc: Likewise.
362         * scripttempl/xstormy16.sc: Likewise.
363
364 2012-06-28  H.J. Lu  <hongjiu.lu@intel.com>
365
366         * ldlang.c (update_wild_statements): Remove redundant statement.
367
368 2012-06-25  Alan Modra  <amodra@gmail.com>
369
370         * ldlang.c (load_symbols): Close file and set flags.loaded
371         after parsing script file.
372         (open_input_bfds): Don't segv on closed script.
373
374 2012-06-24  H.J. Lu  <hongjiu.lu@intel.com>
375
376         * configure.tgt: Enable elf_k1om for x86_64-*-linux-gnux32.
377         Remove x32 in tdir_i386linux and tdir_elf_i386.
378
379 2012-06-22  Roland McGrath  <mcgrathr@google.com>
380
381         * NEWS: Mention __ehdr_start.
382
383 2012-06-21  Alan Modra  <amodra@gmail.com>
384
385         * ldlang.c (lang_insert_orphan): Don't make __start_<sec> symbol
386         absolute, and remove unnecessary alignment.
387
388 2012-06-16  Alan Modra  <amodra@gmail.com>
389
390         * ldlang.h (lang_output_section_statement_type): Add after_end field.
391         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
392         (section_for_dot): Declare.
393         * ldlang.c (lang_size_sections_1): Correct comment.
394         (current_section): Move earlier.
395         (current_assign, prefer_next_section): New static vars.
396         (lang_do_assignments_1): Add found_end param.  Detect _end
397         assignment to set found_end.  Set os->after_end.  Set above statics.
398         (lang_do_assignments): Adjust lang_do_assignments_1 call.  Init
399         vars.
400         (section_for_dot): New function.
401         (lang_set_startof): Don't make an absolute symbol.
402         (lang_abs_symbol_at_beginning_of, lang_abs_symbol_at_end_of): Delete.
403         * ldexp.c (new_rel_from_abs): Use section_for_dot.
404         * emultempl/lnk960.em (symbol_at_beginning_of): New function.
405         (symbol_at_end_of): Likewise.
406         (lnk960_after_allocation): Use them.
407         * scripttempl/elf.sc: Precede OTHER_GOT_SYMBOLS with . = .; and
408         likewise before __bss_start.
409
410 2012-06-14  H.J. Lu  <hongjiu.lu@intel.com>
411
412         * plugin.c (set_tv_header): Handle link_info.pie.
413
414 2012-06-11  Alan Modra  <amodra@gmail.com>
415
416         PR ld/14215
417         * ldexp.c (fold_name <SIZEOF, ALIGNOF>): Allow forward section
418         references.
419         * emulparams/elf32_x86_64.sh (SEPARATE_GOTPLT): Depend on size of
420         .got.plt.
421         * emulparams/elf32mb_linux.sh (SEPARATE_GOTPLT): Likewise.
422         * emulparams/elf32tilegx.sh (SEPARATE_GOTPLT): Likewise.
423         * emulparams/elf32tilepro.sh (SEPARATE_GOTPLT): Likewise.
424         * emulparams/elf64tilegx.sh (SEPARATE_GOTPLT): Likewise.
425         * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Likewise.
426         * emulparams/elf_k1om.sh (SEPARATE_GOTPLT): Likewise.
427         * emulparams/elf_l1om.sh (SEPARATE_GOTPLT): Likewise.
428         * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Likewise.
429
430 2012-06-07  Georg-Johann Lay  <avr@gjlay.de>
431
432         PR 13697
433         * scripttempl/avr.sc (.data): Keep it.
434
435 2012-06-02  Andreas Schwab  <schwab@linux-m68k.org>
436
437         * Makefile.am (TEXINFO_TEX): Remove $(top_srcdir) prefix.
438         * Makefile.in: Regenerate.
439
440 2012-05-30  Alan Modra  <amodra@gmail.com>
441
442         * ldlang.h (lang_output_section_statement_type): Rename
443         "section_relative_symbol" field to "update_dot".
444         * ldlang.c: Update all uses.
445         (strip_excluded_output_sections): Don't test update_dot_tree here..
446         (lang_leave_overlay): ..set update_dot here.
447
448 2012-05-26  Alan Modra  <amodra@gmail.com>
449
450         * ldlex.h (enum option_values): Move from..
451         * lexsup.c: ..here.
452         * emultempl/ppc32elf.em: Include ldlex.h.
453         (PARSE_AND_LIST_ARGS_CASES): Disable optimisations when
454         --traditional-format.
455         * emultempl/ppc64elf.em: Likewise.
456
457 2012-05-25  Alan Modra  <amodra@gmail.com>
458
459         PR ld/13909
460         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Handle
461         multiple .eh_frame sections attached to bfd.
462
463 2012-05-23  Cary Coutant  <ccoutant@google.com>
464
465         * scripttempl/armbpabi.sc: Match .data.rel.ro.* sections more
466         carefully.  Fix typo where .rela.data.rel.ro matches
467         .rel.data.rel.ro.
468         * scripttempl/mep.sc: Likewise.
469         * scripttempl/elf.sc: Match .data.rel.ro.* sections more carefully.
470         * scripttempl/elf64hppa.sc: Likewise.
471         * scripttempl/elfxtensa.sc: Likewise.
472
473 2012-05-17  Daniel Richard G.  <skunk@iskunk.org>
474             Nick Clifton  <nickc@redhat.com>
475
476         PR 14072
477         * configure.in: Add check that sysdep.h has been included before
478         any system header files.
479         * configure: Regenerate.
480         * config.in: Regenerate.
481         * sysdep.h: Generate an error if included before config.h.
482
483 2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
484
485         * emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
486         as the first argument for `bfd_get_section_name'.
487
488 2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
489
490         PR ld/14069
491         * emultempl/elf32.em: Include *-*-gnu* targets in ld.so.conf
492         support.
493
494 2012-05-15  James Murray <jsm@jsm-net.demon.co.uk>
495
496         * NEWS: Mention the support for S12X processors.
497
498 2012-05-14  James Lemke  <jwlemke@codesourcery.com>
499
500         * ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
501         Pass it to callback.
502         (walk_wild_section_general): Pass section_flag_list to callback.
503         (lang_add_section): Add sflag_list parm.
504         Move out logic to keep / omit a section & call bfd_lookup_section_flags.
505         (output_section_callback_fast): Add sflag_list parm.
506         Add new parm to lang_add_section calls.
507         (output_section_callback): Likewise.
508         (check_section_callback): Add sflag_list parm.
509         (lang_place_orphans): Add new parm to lang_add_section calls.
510         (gc_section_callback): Add sflag_list parm.
511         (find_relro_section_callback): Likewise.
512         * ldlang.h (callback_t): Add flag_info parm.
513         (lang_add_section): Add sflag_list parm.
514         * emultempl/armelf.em (elf32_arm_add_stub_section):
515         Add lang_add_section parm.
516         * emultempl/beos.em (gld*_place_orphan): Likewise.
517         * emultempl/elf32.em (gld*_place_orphan): Likewise.
518         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
519         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
520         * emultempl/mipself.em (mips_add_stub_section): Likewise.
521         * emultempl/mmo.em (mmo_place_orphan): Likewise.
522         * emultempl/pe.em (gld_*_place_orphan): Likewise.
523         * emultempl/pep.em (gld_*_place_orphan): Likewise.
524         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
525         * emultempl/spuelf.em (spu_place_special_section): Likewise.
526         * emultempl/vms.em (vms_place_orphan): Likewise.
527
528 2012-05-14  Catherine Moore  <clm@codesourcery.com>
529
530         * NEWS:  Mention PowerPC VLE port.
531
532 2012-05-11  Daniel Richard G.  <skunk@iskunk.org>
533
534         PR binutils/14028
535         * configure.in: Invoke ACX_HEADER_STRING.
536         * configure: Regenerate.
537         * config.in: Regenerate.
538         * sysdep.h: If STRINGS_WITH_STRING is defined then include both
539         string.h and strings.h.
540
541 2012-05-08  Alan Modra  <amodra@gmail.com>
542
543         * Makefile.am (check_DEJAGNU): Export LC_ALL=C in place of other
544         LC and LANG environment vars.
545         * Makefile.in: Regenerate.
546
547 2012-05-07  Tristan Gingold  <gingold@adacore.com>
548
549         * pe-dll.c (udef_table): Make it static.
550
551 2012-05-05  Alan Modra  <amodra@gmail.com>
552
553         * pe-dll.c (process_def_file_and_drectve): Use bfd_und_section_ptr.
554         (generate_reloc): Use bfd_abs_section_ptr.
555
556 2012-05-04  H.J. Lu  <hongjiu.lu@intel.com>
557
558         * configure.tgt: Support x86_64-*-linux-gnux32.
559
560 2012-05-03  Sean Keys  <skeys@ipdatasys.com>
561
562         * Makefile.am (ALL_EMULATIONS): Added new emulation for XGATE
563         and XGATE (elf).
564         * Makefile.in: Rebuild.
565         * configure.tgt: Recognize XGATE.
566         * scripttempl/elfxgate.sc: New file, mostly cloned from m68hc12.
567         * emulparams/xgateelf: New emulation, mostly cloned from m68hc12.
568         * NEWS: Mention new support.
569
570 2012-04-26  Hans-Peter Nilsson  <hp@axis.com>
571
572         Make bfd asserts cause linker errors.
573         * ldmain.c (default_bfd_assert_handler): New variable.
574         (ld_bfd_assert_handler): New function.
575         (main): Call bfd_set_assert_handler.
576
577 2012-04-24  Alan Modra  <amodra@gmail.com>
578
579         * ldlang.c (size_input_section): Use sec_info_type rather than
580         usrdata->flags.just_syms.
581         * ldwrite.c (build_link_order): Likewise.
582         * emultempl/hppaelf.em (build_section_lists): Likewise.
583         * emultempl/ppc64elf.em (build_toc_list): Likewise.
584         * emultempl/armelf.em (build_section_lists): Likewise.
585         (after_allocation): Update for renamed sec_info_type value.
586         * emultempl/tic6xdsbt.em: Likewise.
587
588 2012-04-12  Roland McGrath  <mcgrathr@google.com>
589
590         * configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
591         * emulparams/armelf_nacl.sh: New file.
592         * emulparams/armelfb_nacl.sh: New file.
593         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
594         and earmelfb_nacl.c here.
595         (earmelf_nacl.c, earmelfb_nacl.c): New targets.
596         * Makefile.in: Regenerated.
597
598 2012-04-11  Tristan Gingold  <gingold@adacore.com>
599
600         * scripttempl/ia64vms.sc: New file.
601         * emultempl/vms.em (_before_parse): Support for ia64.
602         (elf64-ia64-vms): New fragment for ia64.
603         * emulparams/elf64_ia64_vms.sh: New file.
604         * configure.tgt (ia64-*-*vms*): Add.
605         * Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
606         (eelf64_ia64_vms.c): New rule.
607         * Makefile.in: Regenerate.
608
609 2012-04-06  Roland McGrath  <mcgrathr@google.com>
610
611         * configure.in (AC_CHECK_HEADERS): Add locale.h.
612         * config.in: Regenerate.
613         * configure: Regenerate.
614
615 2012-04-05  Nick Clifton  <nickc@redhat.com>
616
617         * configure.in (AC_CHECK_FUNCS): Add setlocale.
618         (AM_LC_MESSAGES): Add.
619         * aclocal.m4: Regenerate.
620         * config.in: Regenerate.
621         * configure: Regenerate.
622
623 2012-04-03  Roland McGrath  <mcgrathr@google.com>
624
625         * configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
626         * emulparams/elf_nacl.sh: New file.
627         * emulparams/elf_i386_nacl.sh: New file.
628         * emulparams/elf32_x86_64_nacl.sh: New file.
629         * emulparams/elf_x86_64_nacl.sh: New file.
630         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
631         (ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
632         eelf_x86_64_nacl.c here.
633         (eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
634         New targets.
635         * Makefile.in: Regenerated.
636
637         * scripttempl/elf.sc: Handle SEPARATE_CODE cases.
638
639 2012-04-02  Mike Frysinger  <vapier@gentoo.org>
640
641         * ldmisc.c (vfinfo): Assign new local str to fmt.  Delete
642         putc call.  If str and fmt are different, call fwrite on
643         the difference.
644
645 2012-03-30  Nick Clifton  <nickc@redhat.com>
646
647         * po/vi.po: Updated Vietnamese translation.
648
649 2012-03-27  Roland McGrath  <mcgrathr@google.com>
650
651         * configure.in: Set want64 on a 64-bit host regardless of
652         --enable-targets=all.
653         * configure: Regenerated.
654
655 2012-03-26  Tristan Gingold  <gingold@adacore.com>
656
657         * lexsup.c (parse_args): Add a missing '\n'.
658
659 2012-03-25  Alan Modra  <amodra@gmail.com>
660
661         * ldemul.c (before_allocation_default): Revert last change.
662         * ldlang.c (lang_add_section): Likewise.
663         (strip_excluded_output_sections): Don't strip output sections with
664         user input sections when emitrelocations, unless all are SEC_EXCLUDE.
665
666 2012-03-23  Alan Modra  <amodra@gmail.com>
667
668         * ldemul.c (before_allocation_default): When emitrelocations,
669         don't strip sections..
670         * ldlang.c (lang_add_section): ..and don't set up map_head, map_tail.
671
672 2012-03-14  Kai Tietz  <ktietz@redhat.com>
673             Pascal Obry  <pascal@obry.net>
674
675         * pe-dll.c (found_sym): New static variable.
676         (undef_count): Likewise.
677         (key_value): New structure.
678         (undef_sort_cmp): Compare routine for qsort/bsearch.
679         (pe_find_cdecl_alias_match): Add new argument.
680         (pe_undef_alias_cdecl_match): Removed.
681         (pe_undef_count): New helper routine.
682         (pe_create_undef_table): Likewise.
683         (pe_process_import_defs): Use pe_create_undef_table and
684         new pe_undef_alias_cdecl_match function.
685
686 2012-03-14  Alan Modra  <amodra@gmail.com>
687
688         PR ld/13839
689         * ldexp.c (fold_name): Ignore undefined symbols when assigning to
690         dot in mark phase.
691         (exp_fold_tree_1): Evaluate assignment to dot expressions even when
692         discarding result, for side effects.  Fix typo in error message.
693
694 2012-03-08  Tristan Gingold  <gingold@adacore.com>
695
696         * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
697         (exp_print_token): Constify.
698
699 2012-03-08  Alan Modra  <amodra@gmail.com>
700
701         PR ld/10340
702         * ldfile.c (is_sysrooted_pathname): Remove notsame param.
703         (ldfile_add_library_path): Don't set sysrooted flag.
704         (ldfile_open_file_search): Likewise, and don't copy them.
705         (try_open): Delete exten and code handling such.  Add sysrooted
706         param and return whether path is in sysroot.
707         (ldfile_find_command_file): Delete extend param.  Add sysrooted
708         param.  Rename local var.  Update try_open calls.
709         (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
710         * ldfile.h (search_dirs_type): Remove sysrooted field.
711         * ldlang.c (new_afile): Always set sysrooted from input_flags.
712         (load_symbols): Don't set input_flags.sysrooted.
713         * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
714         comment.
715         * ldlex.h (lex_push_file): Update prototype.
716         * ldlex.l (sysrooted_stack): New array.
717         (EOF): Pop input_flags.sysrooted.
718         (lex_push_file): Add sysrooted param.  Save and set
719         input_flags.sysrooted.
720
721 2012-03-06  Alan Modra  <amodra@gmail.com>
722
723         * ldlang.h (struct lang_input_statement_flags): New, extract from..
724         (lang_input_statement_type): ..here.  New field "flags".
725         (input_flags): Declare.
726         (missing_file): Delete.
727         * ldmain.h (whole_archive): Delete.
728         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
729         * ld.h (ld_config_type <dynamic_link>): Delete.
730         * ldmain.c (whole_archive): Delete.
731         (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
732         * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
733         (input_flags): New variable.  Replace all uses of config.dynamic_link,
734         missing_file, ldlang_sysrooted_script, whole_archive,
735         add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
736         from here.
737         * ldfile.c: Likewise.
738         * ldgram.y: Likewise.
739         * ldmain.c: Likewise.
740         * ldwrite.c: Likewise.
741         * lexsup.c: Likewise.
742         * plugin.c: Likewise.
743         * emultempl/aix.em: Likewise.
744         * emultempl/armelf.em: Likewise.
745         * emultempl/elf32.em: Likewise.
746         * emultempl/hppaelf.em: Likewise.
747         * emultempl/linux.em: Likewise.
748         * emultempl/pe.em: Likewise.
749         * emultempl/pep.em: Likewise.
750         * emultempl/ppc64elf.em: Likewise.
751         * emultempl/scoreelf.em: Likewise.
752         * emultempl/spuelf.em: Likewise.
753         * emultempl/sunos.em: Likewise.
754         * emultempl/vms.em: Likewise.
755         * ldlang.c (new_afile): Use memset to init zero fields.
756         (load_symbols): Simplify save and restore of flags around command
757         file processing.
758         * ldfile.c (is_sysrooted_pathname): Tidy.
759
760 2012-03-05  Hans-Peter Nilsson  <hp@axis.com>
761
762         * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
763         (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
764         replacing trailing "-*" with "*".
765
766 2012-02-25  Walter Lee  <walt@tilera.com>
767
768         * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
769         (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
770         (eelf32tilegx_be.c): Add rule to build this file.
771         (eelf64tilegx_be.c): Ditto.
772         * Makefile.in: Regenerate.
773         * configure.tgt (tilegx-*-*): Support big endian.
774         (tilegxbe-*-*): New.
775         * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
776         (BIG_OUTPUT_FORMAT): Define.
777         (LITTLE_OUTPUT_FORMAT): Define.
778         * emulparams/elf32tilegx_be.sh: New.
779         * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
780         (BIG_OUTPUT_FORMAT): Define.
781         (LITTLE_OUTPUT_FORMAT): Define.
782         * emulparams/elf64tilegx_be.sh: New.
783
784 2012-02-24  Kai Tietz  <ktietz@redhat.com>
785
786         PR binutils/13710
787         * deffilep.y (keyword_as_name): Disable LIBRARY
788         keyword.
789
790 2012-02-22  Alan Modra  <amodra@gmail.com>
791
792         PR ld/13683
793         * ldlang.c (lang_process): Rerun lang_do_assignments before
794         starting garbage collection.
795         * ldexp.c (fold_name): Generate a reloc for defined symbols
796         found without an associated output section during the mark phase.
797         (exp_fold_tree_1): Continue processing an expression, even if we
798         are unable to fold it, if we are in the first two evaluation
799         phases.
800         * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
801
802 2012-02-19  Kai Tietz  <ktietz@redhat.com>
803
804         * deffilep.y (cmp_import_elem): Sort first by module name.
805         * pe-dll.c (process_def_file_and_drectve): Free strings
806         from removed export-element.
807         (add_bfd_to_link): Optimize loop on import-elements and lower
808         allocated memory.
809         (pe_implied_import_dll): Pass NULL instead of 0 for pointer
810         argument.
811
812 2012-02-18  Hans-Peter Nilsson  <hp@axis.com>
813
814         * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
815         temporary variable node used for NULL argument.
816
817 2012-02-18  Alan Modra  <amodra@gmail.com>
818
819         PR ld/13343
820         * ld.h (parsing_defsym): Delete.
821         * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
822         (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
823         exp_get_abs_int): Add tree arg for %S in error messages.  Don't
824         fudge lineno.
825         (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
826         type.filename from sub-tree.
827         (exp_trinop): Likewise, and use "cond" rather than "lhs".
828         * ldexp.h (node_type): Add filename field to struct.
829         * ldfile.c (ldfile_input_filename): Delete.  Remove all refs.
830         * ldfile.h (ldfile_input_filename): Delete.
831         * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
832         %S in error messages.
833         * ldemul.c (syslib_default, hll_default): Likewise.
834         * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
835         lang_get_regions, lang_new_phdr): Likewise.
836         (lang_size_sections_1): Pass addr_tree for %S.
837         * ldlex.h (lex_redirect): Update prototype.
838         (ldlex_filename): Declare.
839         * ldlex.l (<EOF>): Don't set ldfile_input_filename.
840         (lex_redirect): Add fake_filename and count params.  Push
841         fake_filename to file_name_stack and init lineno from count.
842         (ldlex_filename): New function.
843         (lex_warn_invalid): Use above.
844         * ldmain.c (main): Update lex_redirect call.
845         * ldmisc.c (vfinfo <%S>): Take file name and line number from
846         etree_type arg, or use current if arg is NULL.
847         * lexsup.c (parsing_defsym): Delete.
848         (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
849
850 2012-02-13  Kai Tietz  <ktietz@redhat.com>
851
852         * deffilep.y (find_export_in_list): Set is_indent for
853         first or last element, if identical.
854         (find_import_in_list): Likewise.
855
856 2012-02-11  Kai Tietz  <ktietz@redhat.com>
857
858         * deffilep.y (%union): New type id_const.
859         (opt_name2): New rule.
860         (keyword_as_name): New rule.
861         (dot_name): Replaced by opt_name2 rule.
862         (opt_name): Adjust rule.
863         (opt_equal_name): Likewise.
864
865 2012-02-11  Pascal Obry  <pascal@obry.net>
866
867         * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
868         table.
869         (process_def_file_and_drectve): Maintain sorting of exports table
870         after stripping leading @ signs.
871
872 2012-02-09  Alan Modra  <amodra@gmail.com>
873
874         * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
875
876 2012-01-31  H.J. Lu  <hongjiu.lu@intel.com>
877
878         PR ld/13616
879         * emulparams/elf32_x86_64.sh: Remove NOP.
880         * emulparams/elf_i386.sh: Likewise.
881         * emulparams/elf_i386_be.sh: Likewise.
882         * emulparams/elf_i386_ldso.sh: Likewise.
883         * emulparams/elf_i386_vxworks.sh: Likewise.
884         * emulparams/elf_k1om.sh: Likewise.
885         * emulparams/elf_l1om.sh: Likewise.
886         * emulparams/elf_x86_64.sh: Likewise.
887
888         * ldlang.c (zero_fill): Initialized to 0.
889
890         * ldwrite.c (build_link_order): Set data size to linker odrder
891         size when they are the same.
892
893         * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
894
895 2012-01-17  Alan Modra  <amodra@gmail.com>
896
897         * ldver.c (ldversion): Update copyright message year.
898
899 2012-01-15  Alan Modra  <amodra@gmail.com>
900
901         PR ld/12758
902         * ldlang.c (lang_process): Don't reopen all files, just those
903         newly added by plugin.
904
905 2012-01-11  Alan Modra  <amodra@gmail.com>
906
907         * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
908         PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
909         PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
910         --{no-,}plt-align.
911         (plt_thread_safe, plt_stub_align): New vars.
912         (gld${EMULATION_NAME}_after_allocation): Pass them to
913         ppc64_elf_size_stubs.  Align stub sections according to plt_stub_align.
914         * ld.texinfo: Document new command line options, and an old
915         undocumented option.
916
917 2012-01-09  Roland McGrath  <mcgrathr@google.com>
918
919         * configure.in: Use AM_ZLIB.
920         * configure: Regenerated.
921
922 For older changes see ChangeLog-2011
923 \f
924 Local Variables:
925 mode: change-log
926 left-margin: 8
927 fill-column: 74
928 version-control: never
929 End: