6d495f789def4843870ec7cb857cd136e5ef2212
[external/binutils.git] / ld / ChangeLog
1 2014-10-24  Tejas Belagod  <tejas.belagod@arm.com>
2
3         * emultempl/aarch64elf.em: Add command-line option for erratum 835769.
4
5 2014-10-17  Hans-Peter Nilsson  <hp@axis.com>
6
7         Implement --print-sysroot in ld.
8         * ldlex.h (enum option_values): Add entry OPTION_PRINT_SYSROOT.
9         * lexsup.c (ld_options): Add entry for --print-sysroot.
10         (parse_args) <OPTION_PRINT_SYSROOT>: Print sysroot and exit early.
11
12 2014-10-16  Alan Modra  <amodra@gmail.com>
13
14         PR 17488
15         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Don't attempt
16         to access ELF header e_flags when not ppc64 ELF output.
17
18 2014-10-15  Tristan Gingold  <gingold@adacore.com>
19
20         * configure: Regenerate.
21
22 2014-10-15  Hans-Peter Nilsson  <hp@axis.com>
23
24         * ldlex.l (INPUTLIST): New start condition.
25         (comment pattern, ",", "(", ")", "AS_NEEDED")
26         ({FILENAMECHAR1}{FILENAMECHAR}*, "-l"{FILENAMECHAR}+)
27         (quoted string pattern, whitespace pattern): Add INPUTLIST to
28         valid start conditions.
29         (<INPUTLIST>"="{FILENAMECHAR1}{FILENAMECHAR}*): New NAME rule.
30         (ldlex_inputlist): New start-condition-setter function.
31         * ldgram.y (input_list1): Rename from input_list.  All recursive
32         use changed.
33         (input_list): New wrapper rule for input_list1, setting
34         INPUTLIST lexer state for the duration of parsing input_list1.
35         * ldlang.c (lang_add_input_file): If the first character in the
36         filename is '=', prepend the sysroot and force the context of that
37         input file to non-sysroot.
38         * ld.texinfo (Options): When mentioning "=" and sysroot, mention
39         that --sysroot controls it, not only through the configuration.
40         (input files in linker scripts): When mentioning
41         behavior of first character "/" on scripts within sysroot, also
42         mention that effect can be forced by prefixing with "=" and
43         refer to SEARCH_DIR.
44
45 2014-10-14  Tristan Gingold  <gingold@adacore.com>
46
47         * NEWS: Add marker for 2.25.
48
49 2014-10-13  Alan Modra  <amodra@gmail.com>
50
51         * ldlang.c (lang_add_section): Set up map_head.s and map_tail.s when
52         relocatable.
53
54 2014-09-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
55
56         * emultempl/nds32elf.em (nds32_elf_after_open): Do not keep
57         ex9 234th entry.
58         (nds32_elf_after_allocation): Move all optimizations into
59         nds32_elf_relax_section.
60
61 2014-09-15  Andrew Bennett  <andrew.bennett@imgtec.com>
62             Matthew Fortune  <matthew.fortune@imgtec.com>
63
64         * ldmain.c (get_emulation): Add support for -mips32r6 and -mips64r6.
65
66 2014-09-12  Andrew Bennett  <andrew.bennett@imgtec.com>
67
68         * configure.tgt: Add mips*-img-elf* target triple.
69
70 2014-09-01  Jon TURNEY  <jon.turney@dronecode.org.uk>
71
72         * emultempl/pe.em (write_build_id, setup_build_id): Change pe/coff
73         build-id section name from '.build-id' to '.buildid'.
74         * emultempl/pep.em (write_build_id, setup_build_id): Ditto.
75
76 2014-08-22  Andreas Tobler  <andreast@fgznet.ch>
77
78         * emulparams/armelf_fbsd.sh (TEXT_START_ADDR): Increase alignment to
79         64kB boundary like in armelf_linux.sh.
80
81 2014-08-22  Alan Modra  <amodra@gmail.com>
82
83         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): Call
84         bfd_elf_discard_info after generating glink .eh_frame.  Delete
85         redundant test on ppc64_elf_setup_section_lists status.
86
87 2014-08-20  Maciej W. Rozycki  <macro@codesourcery.com>
88
89         * emultempl/armelf.em (OPTION_STUBGROUP_SIZE): Fix formatting.
90         (OPTION_NO_MERGE_EXIDX_ENTRIES, OPTION_LONG_PLT): Likewise.
91
92 2014-08-20  Will Newton  <will.newton@linaro.org>
93
94         * configure.tgt: Default armeb-*-eabi* to big endian.
95
96 2014-08-20  Daniel Micay  <danielmicay@gmail.com>
97
98         * emultempl/pep.em: Add --high-entropy-va switch.
99         * ld.texinfo: Document the --high-entropy-va switch.
100
101 2014-08-20  Nick Clifton  <nickc@redhat.com>
102
103         * scripttempl/DWARF.sc: Add copyright notice.
104         * scripttempl/aix.sc: Likewise.
105         * scripttempl/alpha.sc: Likewise.
106         * scripttempl/alphavms.sc: Likewise.
107         * scripttempl/aout.sc: Likewise.
108         * scripttempl/armaout.sc: Likewise.
109         * scripttempl/armbpabi.sc: Likewise.
110         * scripttempl/armcoff.sc: Likewise.
111         * scripttempl/avr.sc: Likewise.
112         * scripttempl/avrtiny.sc: Likewise.
113         * scripttempl/crisaout.sc: Likewise.
114         * scripttempl/delta68.sc: Likewise.
115         * scripttempl/dlx.sc: Likewise.
116         * scripttempl/elf.sc: Likewise.
117         * scripttempl/elf32cr16.sc: Likewise.
118         * scripttempl/elf32cr16c.sc: Likewise.
119         * scripttempl/elf32crx.sc: Likewise.
120         * scripttempl/elf32msp430.sc: Likewise.
121         * scripttempl/elf32msp430_3.sc: Likewise.
122         * scripttempl/elf32sh-symbian.sc: Likewise.
123         * scripttempl/elf32xc16x.sc: Likewise.
124         * scripttempl/elf32xc16xl.sc: Likewise.
125         * scripttempl/elf32xc16xs.sc: Likewise.
126         * scripttempl/elf64hppa.sc: Likewise.
127         * scripttempl/elf_chaos.sc: Likewise.
128         * scripttempl/elfd10v.sc: Likewise.
129         * scripttempl/elfd30v.sc: Likewise.
130         * scripttempl/elfi370.sc: Likewise.
131         * scripttempl/elfm68hc11.sc: Likewise.
132         * scripttempl/elfm68hc12.sc: Likewise.
133         * scripttempl/elfmicroblaze.sc: Likewise.
134         * scripttempl/elfxgate.sc: Likewise.
135         * scripttempl/elfxtensa.sc: Likewise.
136         * scripttempl/epiphany_4x4.sc: Likewise.
137         * scripttempl/epocpe.sc: Likewise.
138         * scripttempl/h8300.sc: Likewise.
139         * scripttempl/h8300h.sc: Likewise.
140         * scripttempl/h8300hn.sc: Likewise.
141         * scripttempl/h8300s.sc: Likewise.
142         * scripttempl/h8300sn.sc: Likewise.
143         * scripttempl/h8300sx.sc: Likewise.
144         * scripttempl/h8300sxn.sc: Likewise.
145         * scripttempl/h8500.sc: Likewise.
146         * scripttempl/h8500b.sc: Likewise.
147         * scripttempl/h8500c.sc: Likewise.
148         * scripttempl/h8500m.sc: Likewise.
149         * scripttempl/h8500s.sc: Likewise.
150         * scripttempl/hppaelf.sc: Likewise.
151         * scripttempl/i386beos.sc: Likewise.
152         * scripttempl/i386coff.sc: Likewise.
153         * scripttempl/i386go32.sc: Likewise.
154         * scripttempl/i386msdos.sc: Likewise.
155         * scripttempl/i860coff.sc: Likewise.
156         * scripttempl/i960.sc: Likewise.
157         * scripttempl/ia64vms.sc: Likewise.
158         * scripttempl/ip2k.sc: Likewise.
159         * scripttempl/iq2000.sc: Likewise.
160         * scripttempl/m68kaux.sc: Likewise.
161         * scripttempl/m68kcoff.sc: Likewise.
162         * scripttempl/m88kbcs.sc: Likewise.
163         * scripttempl/mcorepe.sc: Likewise.
164         * scripttempl/mep.sc: Likewise.
165         * scripttempl/mips.sc: Likewise.
166         * scripttempl/mipsbsd.sc: Likewise.
167         * scripttempl/mmo.sc: Likewise.
168         * scripttempl/moxie.sc: Likewise.
169         * scripttempl/nds32elf.sc: Likewise.
170         * scripttempl/nw.sc: Likewise.
171         * scripttempl/pe.sc: Likewise.
172         * scripttempl/pep.sc: Likewise.
173         * scripttempl/pj.sc: Likewise.
174         * scripttempl/ppcpe.sc: Likewise.
175         * scripttempl/psos.sc: Likewise.
176         * scripttempl/riscix.sc: Likewise.
177         * scripttempl/sh.sc: Likewise.
178         * scripttempl/sparccoff.sc: Likewise.
179         * scripttempl/st2000.sc: Likewise.
180         * scripttempl/tic30aout.sc: Likewise.
181         * scripttempl/tic30coff.sc: Likewise.
182         * scripttempl/tic4xcoff.sc: Likewise.
183         * scripttempl/tic54xcoff.sc: Likewise.
184         * scripttempl/tic80coff.sc: Likewise.
185         * scripttempl/v850.sc: Likewise.
186         * scripttempl/v850_rh850.sc: Likewise.
187         * scripttempl/vanilla.sc: Likewise.
188         * scripttempl/w65.sc: Likewise.
189         * scripttempl/xstormy16.sc: Likewise.
190         * scripttempl/z80.sc: Likewise.
191         * scripttempl/z8000.sc: Likewise.
192
193 2014-08-19  Alan Modra  <amodra@gmail.com>
194
195         * configure: Regenerate.
196
197 2014-08-18  Alan Modra  <amodra@gmail.com>
198
199         * ld.texinfo (--as-needed): Clarify that references from libraries
200         must be from needed libraries.
201
202 2014-08-18  Alan Modra  <amodra@gmail.com>
203
204         * emultempl/aarch64elf.em (gld${EMULATION_NAME}_after_allocation):
205         Handle error status from bfd_elf_discard_info.
206         * emultempl/armelf.em: Likewise.
207         * emultempl/elf32.em: Likewise.
208         * emultempl/hppaelf.em: Likewise.
209         * emultempl/metagelf.em: Likewise.
210         * emultempl/nios2elf.em: Likewise.
211         * emultempl/ppc64elf.em: Likewise.
212         * emultempl/tic6xdsbt.em: Likewise.
213         * emultempl/vms.em: Likewise.
214
215 2014-08-14  Alan Modra  <amodra@gmail.com>
216
217         PR 16563
218         * ldlang.c (map_head_is_link_order): Rename from
219         stripped_excluded_sections.
220         (lang_clear_os_map): New function, extracted from..
221         (strip_excluded_output_sections): ..here.
222         * ldlang.h (lang_clear_os_map): Declare.
223         * ldwrite.c (ldwrite): Call lang_clear_os_map.
224         * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
225         Likewise.
226
227 2014-08-14  Alan Modra  <amodra@gmail.com>
228
229         * configure.ac: Move AC_PROG_CC and other macros earlier.  Delete
230         plugin checks now done in config/plugins.m4.
231         * config.in: Regenerate.
232         * configure: Regenerate.
233
234 2014-08-14  Alan Modra  <amodra@gmail.com>
235
236         * plugin.c (is_ir_dummy_bfd): Test BFD_PLUGIN flag rather than
237         flags.claimed.
238
239 2014-08-13  Yaakov Selkowitz  <yselkowi@redhat.com>
240
241         * pe-dll.c (autofilter_entry_type autofilter_symbollist_i386): Add
242         __dso_handle.
243
244 2014-08-13  Alan Modra  <amodra@gmail.com>
245
246         * ldlang.c (open_input_bfds): Don't use bfd_elf_get_dyn_lib_class.
247
248 2014-08-12  Alan Modra  <amodra@gmail.com>
249
250         * ldlang.h (struct lang_input_statement_flags): Don't make "reload"
251         field conditional on ENABLE_PLUGINS.
252         * ldlang.c (open_input_bfds): Expand plugin_should_reload.
253         * plugin.h (plugin_should_reload): Delete.
254         * plugin.c (plugin_should_reload): Delete.
255
256 2014-08-12  Alan Modra  <amodra@gmail.com>
257
258         * ldmain.c (notice): Update args.
259         * plugin.c (plugin_notice): Likewise.  Follow warning sym link.
260         Handle new indirect symbol.
261
262 2014-08-12  Alan Modra  <amodra@gmail.com>
263
264         * plugin.c (plugin_load_plugins): Set link_info.lto_plugin_active.
265
266 2014-08-08  Ulrich Drepper  <drepper@gmail.com>
267
268         * ldlang.h (struct lang_input_statement_flags): Add pushed
269         member.
270         * ldlex.h (enum option_values): Add OPTION_PUSH_STATE and
271         OPTION_POP_STATE.
272         * lexsup.c (ld_options): Add entries for --push-state and
273         --pop-state.
274         (parse_args): Handle OPTION_PUSH_STATE and OPTION_POP_STATE.
275         * ld.texinfo: Document --push-state and --pop-state.
276
277 2014-08-06  H.J. Lu  <hongjiu.lu@intel.com>
278
279         PR14918
280         * plugin.c (plugin_opt_plugin_arg): Drop --pass-through.
281
282 2014-08-05  Alan Modra  <amodra@gmail.com>
283
284         * Makefile.in: Regenerate.
285
286 2014-07-29  Matthew Fortune  <matthew.fortune@imgtec.com>
287
288         * emulparams/elf32bmip.sh: Add .MIPS.abiflags.
289         * emulparams/elf32bmipn32-defs.sh: Likewise.
290         * emulparams/elf64bmip-defs.sh: Likewise.
291
292 2014-07-27  Anthony Green  <green@moxielogic.com>
293
294         * Makefile.am (ALL_EMULATION_SOURCES): Add moxiebox support.
295         (emoxiebox.c): Build.
296         * configure.tgt (targ_extra_ofiles): Add moxie-*-moxiebox*.
297         * emulparams/moxiebox.sh (TEXT_START_ADDR): New file.
298         * Makefile.in: Rebuilt.
299
300 2014-07-17  Stefan Kristiansson  <stefan.kristiansson@saunalahti.fi>
301
302         * emulparams/elf32or1k_linux.sh (TEXT_START_ADDR): Increase from
303         0x0 to first page boundary at 0x2000.
304
305 2014-07-10  Max Filippov  <jcmvbkbc@gmail.com>
306
307         * emultempl/xtensaelf.em (is_inconsistent_linkonce_section):
308         correctly handle missing dot in section name after
309         ".gnu.linkonce.prop.".
310
311 2014-07-08  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
312
313         * scripttempl/avr.sc: Remove KEEP for .data and
314         force .bss VMA to end of .data VMA.
315
316 2014-07-08  Will Newton  <will.newton@linaro.org>
317
318         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Increase
319         alignment to 64kB boundary.
320
321 2014-07-04  Alan Modra  <amodra@gmail.com>
322
323         * configure.ac: Update "configure.in" comments.
324         * configure: Regenerate.
325
326 2014-07-04  Alan Modra  <amodra@gmail.com>
327
328         * configure.ac: Rename from configure.in.
329         * Makefile.in: Regenerate.
330         * config.in: Regenerate.
331
332 2014-07-04  Alan Modra  <amodra@gmail.com>
333
334         * configure.in: Include bfd/version.m4.
335         (AC_INIT, AM_INIT_AUTOMAKE): Use modern form.
336         (BFD_VERSION): Delete.
337         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove bfd/configure.in.
338         * configure: Regenerate.
339         * Makefile.in: Regenerate.
340
341 2014-07-03  Alan Modra  <amodra@gmail.com>
342
343         PR 17068
344         * ldlang.c (load_symbols): Always check flags.reload.
345         (open_input_bfds): Always reload --as-needed shared libraries,
346         not just when rescanning.
347         * ldlang.h (struct lang_input_statement_flags): Update reload comment.
348         * plugin.c (plugin_should_reload): Assume shared library arg.
349         * plugin.h (plugin_should_reload): Update comment.
350
351 2014-07-01  Alan Modra  <amodra@gmail.com>
352
353         * emultempl/ppc64elf.em (stub_added): Delete.
354         (gld${EMULATION_NAME}_finish): Call ppc64_elf_build_stubs even when
355         none of the usual stubs have been added.  Only change entry_section
356         for ELFv1.
357
358 2014-07-01  Alan Modra  <amodra@gmail.com>
359
360         * sysdep.h: Don't include limits.h and sys/param.h.  Don't
361         include unistd.h twice.
362         (LD_PATHMAX): Don't define.
363         * ldlang.c (lang_common): Don't use UINT_MAX.
364
365 2014-07-01  Barney Stratford  <barney_stratford@fastmail.fm>
366             Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
367             Pitchumani Sivanupandi  <pitchumani.s@atmel.com>
368             Soundararajan  <Sounderarajan.D@atmel.com>
369
370         * Makefile.am (ALL_EMULATION_SOURCES): Add avrtiny emulation source.
371         (eavrtiny.c): Add rules for avrtiny emulation source.
372         * Makefile.in: Regenerate.
373         * configure.tgt: Add avrtiny to avr target emulations.
374         * scripttempl/avrtiny.sc: New file.  Linker script template for
375         avrtiny arch.
376         * emulparams/avrtiny.sh: New file.  Emulation parameters for
377         avrtiny arch.
378
379 2014-06-30  Ulrich Drepper  <drepper@gmail.com>
380
381         * lexsup.c (parse_args): Check whether provided SONAME is empty
382         string.  If yes, warn and ignore it.  Don't overwrite valid SONAME
383         with empty string.
384
385 2014-06-26  Linda Zhang  <lindasc@qq.com>
386
387         * emultempl/pe.em: Initialise insert_timestamp to true.
388         Add a --no-insert-timestamp command line option.
389         * emultempl/pep.em: Likewise.
390         * ld.texinfo: Document that --insert-timestamp is enabled by
391         default and that it now has an inverse command line option.
392         * NEWS: Mention the new behaviour.
393
394 2014-06-25  Nick Clifton  <nickc@redhat.com>
395
396         * Makefile.am (ALL_EMULATION_SOURCES): Move ei386pep.c from
397         here...
398         (ALL_64_EMULATION_SOURCES): ... to here.
399         (ALL_EMUL_EXTRA_OFILES): Move pep-dll.o from here...
400         (ALL_64_EMUL_EXTRA_OFILES): New.  ... to here.
401         * configure.in (EMUL_EXTRA_OFILES): Include
402         ALL_64_EMUL_EXTRA_OFILES when making a 64-bit enabled build.
403         * Makefile.in: Regenerate.
404         * configure: Regenerate.
405
406 2014-06-18  Andreas Tobler  <andreast@fgznet.ch>
407
408         * configure.tgt (arm*-*-freebsd*): Update targ_extra_emuls.
409         (arm*b-*-freebsd*): Add target.
410         * emulparams/armelfb_fbsd.sh: Added.
411         * emulparams/armelf_fbsd.sh: Updated.
412         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelfb_fbsd.c.
413         * Makefile.in: Regenerate.
414
415 2014-06-16  Alan Modra  <amodra@gmail.com>
416
417         * scripttempl/elf.sc: Edit out __rela_iplt symbol assignments from
418         .rel sections, and __rel_iplt from .rela sections.
419         * scripttempl/nds32elf.sc: Likewise.
420         * Makefile.am (ends32*.c) Depend on nds32elf.sc.
421         * Makefile.in: Regenerate.
422
423 2014-06-13  Alan Modra  <amodra@gmail.com>
424
425         PR 17047
426         * ldlang.c (output_bfd_hash_table_free_fn): Delete.
427         (open_output): Don't set it..
428         * ldmain.c (ld_cleanup): ..or call it.
429
430 2014-06-13  Alan Modra  <amodra@gmail.com>
431
432         * emultempl/cr16elf.em, * emultempl/elf32.em, * emultempl/genelf.em,
433         * emultempl/m68kcoff.em, * emultempl/m68kelf.em,
434         * emultempl/nds32elf.em, * emultempl/pe.em, * emultempl/pep.em,
435         * ldlang.c, * ldmain.c, * pe-dll.c: Update for bfd.link_next change.
436
437 2014-06-13  Alan Modra  <amodra@gmail.com>
438
439         * Makefile.am (ALL_EMULATION_SOURCES): Add enios2elf.c, enios2linux.c.
440         * Makefile.in: Regenerate.
441
442 2014-06-07  Alan Modra  <amodra@gmail.com>
443
444         * ldexp.c (exp_fold_tree_1 <etree_provide>): Make PROVIDEd
445         linker script symbol value override a built-in linker symbol.
446
447 2014-06-05  Joel Brobecker  <brobecker@adacore.com>
448
449         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
450         bfd's development.sh.
451         * Makefile.in, configure: Regenerate.
452
453 2014-06-02  Alan Modra  <amodra@gmail.com>
454
455         * emulparams/elf32bfin.sh: Rename from bfin.sh.
456         * emulparams/elf32bfinfd.sh: Update to suit.
457         * emulparams/msp430.sh: Rename from msp430all.sh.  Remove
458         MSP430_NAME and msp430X vars.
459         * emulparams/msp430X.sh: New.
460         * emulparams/score3_elf.sh: Rename from scoreelf.sh.  Remove
461         SCORE_NAME and score7_elf ARCH setting.
462         * emulparams/score7_elf.sh: New.
463         * Makefile.am (eelf32bfin.c, eelf32bfinfd.c): Update dependencies.
464         (emsp430.c, emsp430X.c, escore3_elf.c, escore7_elf.c): Likewise.
465         * Makefile.in: Regenerate.
466         * genscripts.sh: Delete customizer_script param.
467
468 2014-05-28  Hans-Peter Nilsson  <hp@axis.com>
469
470         * Makefile.am: Change all rules with ${GENSCRIPTS}
471         invocations to be just dependencies.
472         ($(ALL_EMULATION_SOURCES) $(ALL_64_EMULATION_SOURCES))
473         (run-genscripts): New rules.
474         * Makefile.in: Regenerate.
475
476 2014-05-27  DJ Delorie  <dj@redhat.com>
477
478         * ld/ldemul.h (extra_map_file_text): New field.
479         (ldemul_extra_map_file_text): Declare.
480         * ld/ldemul.c (ldemul_extra_map_file_text): Define.
481         * ld/ldlang.c (lang_map): Call it.
482
483         * ld/emultempl/rxelf.em: Add extra_map_file_text hook.
484         * ld/emultempl/aix.em: Add NULL extra_map_file_text hook.
485         * ld/emultempl/armcoff.em: Likewise.
486         * ld/emultempl/beos.em: Likewise.
487         * ld/emultempl/elf32.em: Likewise.
488         * ld/emultempl/generic.em: Likewise.
489         * ld/emultempl/gld960.em: Likewise.
490         * ld/emultempl/gld960c.em: Likewise.
491         * ld/emultempl/linux.em: Likewise.
492         * ld/emultempl/lnk960.em: Likewise.
493         * ld/emultempl/m68kcoff.em: Likewise.
494         * ld/emultempl/pe.em: Likewise.
495         * ld/emultempl/pep.em: Likewise.
496         * ld/emultempl/sunos.em: Likewise.
497         * ld/emultempl/ticoff.em: Likewise.
498         * ld/emultempl/vanilla.em: Likewise.
499
500 2014-05-24  Alan Modra  <amodra@gmail.com>
501
502         * ldlang.c (base): Move variable to..
503         * mri.c: ..here, and make static.
504         * ldlang.h (base): Delete declaration.
505
506 2014-05-20  Hans-Peter Nilsson  <hp@axis.com>
507
508         * Makefile.am (ALL_EMULATION_SOURCES): Add missing eelf32mbel_linux.c.
509         * Makefile.in: Regenerate.
510
511 2014-05-20  Alan Modra  <amodra@gmail.com>
512
513         PR 16952
514         * emulparams/elf32ppccommon.sh (_SDA_BASE_, _SDA2_BASE_): Delete.
515         * emultempl/ppc32elf.em (ppc_before_allocation): Call
516         ppc_elf_maybe_strip_sdata_syms.
517         * ldlang.c (size_input_section): Correct output_offset value
518         for excluded input sections.
519
520 2014-05-16  John Marino  <binutils@marino.st>
521
522         * configure.tgt: Add /lib to dragonfly NATIVE_LIB_DIRS.
523
524 2014-05-11  Chung-Lin Tang  <cltang@codesourcery.com>
525
526         * emulparams/nios2linux.sh (OTHER_GOT_SYMBOLS): Wrap _gp in HIDDEN(),
527         and gp in PROVIDE_HIDDEN.
528
529 2014-05-10  Hans-Peter Nilsson  <hp@bitrange.com>
530
531         * ldlang.c (lang_finish): Don't call bfd_link_hash_table_free here.
532         (output_bfd_hash_table_free_fn): New variable.
533         (open_output): Save the _bfd_link_hash_table_free function for the
534         output_bfd into output_bfd_hash_table_free_fn.
535         * ldmain.c (ld_cleanup): If set, call output_bfd_hash_table_free_fn
536         on link_info.hash.
537         * ldlang.h (output_bfd_hash_table_free_fn): Declare.
538
539 2014-05-02  Alan Modra  <amodra@gmail.com>
540
541         * emultempl/metagelf.em: Update bfd target vector naming.
542         * emultempl/nios2elf.em: Likewise.
543         * emultempl/spuelf.em: Likewise.
544         * emultempl/tic6xdsbt.em: Likewise.
545
546 2014-04-22  Christian Svensson  <blue@cmd.nu>
547
548         * Makefile.am: Remove openrisc and or32 support.  Add support for or1k.
549         * configure.tgt: Likewise.
550         * emulparams/elf32or1k.sh: New file.
551         * emulparams/elf32or1k_linux.sh: New file.
552         * emulparams/elf32openrisc.sh: Delete.
553         * emulparams/or32.sh: Delete.
554         * emulparams/or32elf.sh: Delete.
555         * scripttempl/or32.sc: Delete.
556         * Makefile.in: Regenerate.
557
558 2014-04-21  Richard Henderson  <rth@redhat.com>
559
560         * emultempl/alphaelf.em (alpha_after_parse): Enable 2 relax passes.
561
562 2014-04-16  Steve Ellcey  <sellcey@mips.com>
563
564         * emultempl/elf32.em: Include safe-ctype.h.
565
566 2014-04-16  Steve Ellcey  <sellcey@mips.com>
567
568         * ldbuildid.c (generate_build_id): Add ATTRIBUTE_UNUSED to size arg.
569
570 2014-04-09  Nick Clifton  <nickc@redhat.com>
571
572         * Makefile.am (default-manifest.o): Remove rule.
573         (EMUL_EXTRA_BINARIES): Delete.
574         (ALL_EMUL_EXTRA_BINARIES): Delete.
575         (ld_new_DEPENDENCIES): Remove EMUL_EXTRA_BINARIES.
576         (install-data-local): Remove EMUL_EXTRA_BINARIES.
577         * Makefile.in: Regenerate.
578         * configure.in (all_emul_extra_binaries): Delete.
579         (EMUL_EXTRA_BINARIES): Remove.
580         * configure: Regenerate.
581         * configure.tgt (target_extra_binaries): Delete.
582         * emultempl/default-manifest.rc: Delete.
583         * ld.texinfo: Remove discussion of default manifest.
584         * emulparams/i386pe.sh (DEFAULT_MANIFEST): Delete.
585         * emulparams/i386pep.sh (DEFAULT_MANIFEST): Delete.
586
587 2014-04-09  Alan Modra  <amodra@gmail.com>
588
589         * emultempl/spuelf.em: Include safe-ctype.h, remove duplicate errno.h.
590         * emultempl/nds32elf.em: Include bfd_stdint.h.
591         * po/POTFILES.in: Regenerate.
592
593 2014-04-09  Alan Modra  <amodra@gmail.com>
594
595         * emultempl/ppc32elf.em (no_zero_padding, ppc_finish): New functions.
596         (LDEMUL_FINISH): Define.
597
598 2014-04-08  Nick Clifton  <nickc@redhat.com>
599
600         * scripttempl/pe.sc (R_RSRC): Remove default manifest.
601         * scripttempl/pep.sc (R_RSRC): Remove default manifest.
602
603 2014-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
604
605         * emultempl/elf32.em (id_note_section_size, read_hex, write_build_id):
606         Move code for parsing build-id option and calculating the build-id to...
607         * ldbuildid.c: New file.
608         * ldbuildid.h: New file.
609         * Makefile.am (CFILES, HFILES, OFILES, ld_new_SOURCES): Add new
610         files.
611         * Makefile.in: Regenerate.
612         * ld.texinfo: Update --build-id description to mention COFF
613         support.
614         * NEWS: Mention support for COFF build ids.
615         * emultempl/pe.em (gld${EMULATION_NAME}_handle_option):
616         (pecoff_checksum_contents, write_build_id, setup_build_id)
617         (gld_${EMULATION_NAME}_after_open):  Handle and implement
618         build-id option.
619         * emultempl/pep.em: Likewise.
620
621 2014-04-04  Cary Coutant  <ccoutant@google.com>
622
623         PR gold/16804
624         * ld.texinfo: Document optional comma following output section
625         command and overlay command.
626
627 2014-04-04  Alan Modra  <amodra@gmail.com>
628
629         * ldlang.c (lang_size_sections_1 <lang_input_section_enum>): Use
630         current "fill", not "output_section_statement->fill".
631
632 2014-03-31  Nick Clifton  <nickc@redhat.com>
633
634         PR ld/16744
635         * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
636         section when performing a relocatable link with -z [no]execstack
637         specified.
638
639 2014-03-27  H.J. Lu  <hongjiu.lu@intel.com>
640
641         PR ld/16756
642         * ldmain.c (symbol_warning): New function.
643         (warning_callback): Use it.  Scan all input files for a reference
644         to SYMBOL.
645
646 2014-03-21  Christopher Faylor  <me.cygwin2013@cgf.cx>
647
648         * ld.texinfo: Document change in handling of --enable-auto-image-base.
649         * emultempl/pe.em (pe_auto_image_base): Set to default base.
650         (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
651         optional --enable-auto-image-base argument.
652         (gld${EMULATION_NAME}_handle_option): Handle optional
653         --enable-auto-image-base argument.
654         (compute_dll_image_base): Eliminate constant.  Use pe_auto_image_base.
655
656 2014-03-19  Nick Clifton  <nickc@redhat.com>
657
658         * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
659         * Makefile.in: Regenerate.
660         * emultempl/default-manifest.rc: Fix typo.
661         * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
662         (.rsrc): Add SUBALIGN(4).  Remove SORT.
663         * scripttempl/pep.sc: Likewise.
664
665 2014-03-17  Christopher Faylor  <me.cygwin2014@cgf.cx>
666
667         * Makefile.am: Use host version of windres.
668         * Makefile.in: Regenerate.
669
670 2014-03-14  Romain Geissler  <romain.geissler@amadeus.com>
671             Alan Modra  <amodra@gmail.com>
672
673         * ldlang.h (full_name_provided): New input flag.
674         * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
675         for -l:namespec.  Instead use lang_input_file_is_l_enum with
676         full_name_provided flag.
677         * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
678         full_name_provided flag is set.
679         * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
680         Handle full_name_provided libraries.  Tidy EXTRA_SHLIB_EXTENSION
681         support.  Set DT_NEEDED for -l:namespec as namespec.
682         * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
683         * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
684         Don't handle full_name_provided libraries.
685         * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
686         * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
687         * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
688
689 2014-03-12  Alan Modra  <amodra@gmail.com>
690
691         * Makefile.in: Regenerate.
692
693 2014-03-05  Alan Modra  <amodra@gmail.com>
694
695         Update copyright years.
696
697 2014-03-04  Nick Clifton  <nickc@redhat.com>
698
699         * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
700         * Makefile.in: Regenerate.
701
702 2014-02-27  Yuri Gribov  <y.gribov@samsung.com>
703
704         * emultempl/armelf.em (OPTION_LONG_PLT): Define.
705         (PARSE_AND_LIST_LONGOPTS): Add long-plt.
706         (PARSE_AND_LIST_OPTIONS): Likewise.
707         (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
708         * ld.texinfo: Document --long-plt.
709
710 2014-02-27  Alan Modra  <amodra@gmail.com>
711
712         * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
713         use ppc32elf.em.
714         * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
715         vxworks.
716         (LDEMUL_AFTER_OPEN): Don't set for vxworks.
717         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
718         -secure-plt, -bss-plt and -sdata-got when vxworks.
719
720 2014-02-27  Nick Clifton  <nickc@redhat.com>
721
722         * configure.in (all_emul_extra_binaries): New variable.  Populated
723         by invoking configure.tgt.
724         (EMUL_EXTRA_BINARIES): New substitution.
725         * configure: Regenerate.
726         * configure.tgt (target_extra_binaries): New variable.  Set to
727         default-manifest.o for Cygwin and MinGW targets.
728         * Makefile.am (EMUL_EXTRA_BINARIES): New variable.  Initialised
729         by the configure script.
730         (ALL_EMUL_EXTRA_BINARIES): New variable.
731         (default-manifest.o): New rule to build the default manifest.
732         (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
733         (install-data-local): Add EMUL_EXTRA_BINARIES.
734         * Makefile.in: Regenerate.
735         * ld.texinfo: Document default manifest support.
736         * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
737         * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
738         * emultempl/default-manifest.rc: New file.
739         * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
740         * scripttempl/pep.sc (R_RSRC): Likewise.
741
742 2014-02-26  Dan Mick  <dan.mick@inktank.com>
743
744         PR ld/16569
745         * ldcref.c (cref_sort_array): Compare unmangled names unless
746         demanglng has been requiested.
747         (output_one_cref): Output unmangled name unless demangling has
748         been requested.
749
750 2014-02-19  Igor Zamyatin  <igor.zamyatin@intel.com>
751             H.J. Lu  <hongjiu.lu@intel.com>
752
753         * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
754
755 2014-02-19  Alan Modra  <amodra@gmail.com>
756
757         * emultempl/ppc64elf.em (params): Init new field.
758         (ppc_create_output_section_statements): Set params.save_restore_funcs
759         default.
760         (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
761         --no-save-restore-funcs.
762
763 2014-02-17  Alan Modra  <amodra@gmail.com>
764
765         * emultemps/ppc64elf.em (params): New static struct replacing
766         various other static vars.  Adjust code throughout file.
767
768 2014-02-17  Alan Modra  <amodra@gmail.com>
769
770         * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
771         ppc476 workaround for ld -r.
772
773 2014-02-12  Alan Modra  <amodra@gmail.com>
774
775         * emultempl/ppc32elf.em (pagesize): New static var.
776         (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
777         (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
778
779 2014-02-11  Andrew Pinski  <apinski@cavium.com>
780
781         * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
782         (ELF_INTERPRETER_NAME): Define.
783         * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
784
785 2014-02-10  Alan Modra  <amodra@gmail.com>
786
787         * po/ld.pot: Regenerate.
788
789 2014-02-03  Alan Modra  <amodra@gmail.com>
790
791         * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
792         plt_style): Delete.  Adjust all refs to instead use..
793         (params): ..this.  New variable.
794         (ppc_after_open_output): New function.  Tweak params and pass to
795         ppc_elf_link_params.
796         (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
797         (ppc_before_allocation): Adjust ppc_elf_tls_setup call.  Enable
798         relaxation for ppc476 workaround.
799         (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
800         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
801
802 2014-02-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
803
804         * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
805         * ld/ldlang.c (lang_size_sections_1): Add dotdelta
806         variable which reflects the VMA change due to alignment
807         requirements.  Use dotdelta do change the LMA if
808         ALIGN_WITH_INPUT is requested.
809
810 2014-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
811
812         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
813         call to bfd_set_section_vma exposed by recent bfd_set_section_vma
814         change.
815
816 2014-01-30  Sandra Loosemore  <sandra@codesourcery.com>
817
818         * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
819         * Makefile.in: Regenerated.
820         * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
821         * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
822         * emultempl/nios2elf.em: New file.
823         * gen-doc.texi (NIOSII): Set.
824         * ld.texinfo (NIOSII): Set.
825
826 2014-01-28  Nick Clifton  <nickc@redhat.com>
827
828         * Makefile.am: Remove obsolete MSP430 emulations.
829         * configure.tgt: Likewise.
830         * emulparams/msp430all.sh: Likewise.
831         * Makefile.in: Regenerate.
832
833 2014-01-24  H.J. Lu  <hongjiu.lu@intel.com>
834
835         PR ld/16498
836         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
837         orphaned TLS section handling.
838
839 2014-01-24  Alan Modra  <amodra@gmail.com>
840
841         * ldlang.c (lang_output_section_find_by_flags): Be careful to
842         test look->bfd_section->flags if available rather than
843         look->flags.  Separate SEC_THREAD_LOCAL handling from
844         SEC_READONLY loop, and rewrite.
845
846 2014-01-22  Alan Modra  <amodra@gmail.com>
847
848         * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
849         (lang_init): Initialise them.
850         (lang_print_asneeded): New function.
851         (lang_process): Call lang_print_asneeded.
852         * ldlang.h (struct asneeded_minfo): New.
853         (asneeded_list_tail): Declare.
854         * ldmain.c (add_archive_element): Improve archive map heading.
855         * ldmisc.c (minfo): Stash --as-needed info.
856
857 2014-01-22  Alan Modra  <amodra@gmail.com>
858
859         * ld.h (struct map_symbol_def): Move to..
860         * ldlang.h: ..here.
861         * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
862
863 2014-01-22  Alan Modra  <amodra@gmail.com>
864
865         * ld.texinfo (Output Section Discarding): Mention assigning to dot
866         as a way of keeping otherwise empty sections.
867         * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
868         is_dot_plus_0, is_align_conditional): New predicates.
869         (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
870         output section, except for some special cases.
871         * scripttempl/elfmicroblaze.sc: Use canonical form to align at
872         end of .heap and .stack.
873
874 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
875
876         * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
877
878 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
879
880         * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
881
882 2014-01-20  Alan Modra  <amodra@gmail.com>
883
884         * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
885         by_script.  Make iteration a single bit field.
886         (lang_track_definedness, lang_symbol_definition_iteration): Delete.
887         (lang_symbol_defined): Declare.
888         * ldlang.c (lang_statement_iteration): Expand comment a little.
889         (lang_init <lang_definedness_table>): Make it bigger.
890         (lang_track_definedness, lang_symbol_definition): Delete.
891         (lang_definedness_newfunc): Update.
892         (lang_symbol_defined): New function.
893         (lang_update_definedness): Create entries here.  Do track whether
894         script definition of symbol is valid, even when also defined in
895         an object file.
896         * ldexp.c (fold_name <DEFINED>): Update.
897         (fold_name <NAME>): Allow self-assignment for absolute symbols
898         defined in a linker script.
899
900 2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
901             Alan Modra  <amodra@gmail.com>
902
903         * ldlang.h (lang_output_section_get): Define.
904         * ldlang.c (lang_output_section_get): Likewise.
905         (init_os): Set the output_section userdata to the output
906         section statement.
907         * emultempl/hppaelf.em: Use lang_output_section_get instead of
908         lang_output_section_find where applicable.
909         * emultempl/aarch64elf.em: Likewise.
910         * emultempl/aix.em: Likewise.
911         * emultempl/armelf.em: Likewise.
912         * emultempl/m68hc1xelf.em: Likewise.
913         * emultempl/metagelf.em: Likewise.
914         * emultempl/mipself.em: Likewise.
915         * emultempl/ppc64elf.em: Likewise.
916         * emultempl/spuelf.em: Likewise.
917
918 2014-01-17  Alan Modra  <amodra@gmail.com>
919
920         * genscripts.sh (COMPILE_IN): Don't set if already set.
921         * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
922         COMPILE_IN=no.
923         * emulparams/nds32elf16m.sh: Likewise.
924         * emulparams/nds32elf_linux.sh: Likewise.
925         * emultempl/aix.em: Test COMPILE_IN value is "yes".
926         * emultempl/armcoff.em: Likewise.
927         * emultempl/elf32.em: Likewise.
928         * emultempl/generic.em: Likewise.
929         * emultempl/gld960.em: Likewise.
930         * emultempl/gld960c.em: Likewise.
931         * emultempl/linux.em: Likewise.
932         * emultempl/lnk960.em: Likewise.
933         * emultempl/m68kcoff.em: Likewise.
934         * emultempl/sunos.em: Likewise.
935         * emultempl/ticoff.em: Likewise.
936
937 2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
938
939         PR ld/16456
940         * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
941         suffix.
942         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
943         for elf32_x86_64 emulation.
944         * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
945         for elf_i386 emulation.
946
947 2014-01-16  Alan Modra  <amodra@gmail.com>
948
949         * ld.h (fat_section_userdata_type, get_userdata): Move to..
950         * ldlang.h (input_section_userdata_type, get_userdata): ..here.
951         * ldlang.c (init_map_userdata): Delete.  Fold into..
952         (sort_def_symbol): ..here.  Don't attach input section userdata
953         to output sections or global bfd sections.
954         (lang_map): Don't pre-allocate input section userdata.
955         (init_os): Don't allocate userdata for output sections.
956         (print_all_symbols): Update.
957
958 2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
959
960         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
961         Silence uninitialized warning on ehdr_start_save with older
962         GCC.
963
964 2014-01-15  Alan Modra  <amodra@gmail.com>
965
966         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
967         __ehdr_start before size_dynamic_sections and restore afterwards.
968
969 2014-01-10  Alan Modra  <amodra@gmail.com>
970
971         PR ld/14207
972         PR ld/16322
973         PR binutils/16323
974         * ldlang.c (lang_size_sections): Remove unneeded RELRO base
975         adjust.  Tidy comments.
976         * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
977
978 2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
979
980         * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
981
982 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
983
984         PR ld/14207
985         PR ld/16322
986         PR binutils/16323
987         * ldlang.c (lang_size_sections): Properly align RELRO base.
988
989 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
990
991         * ldver.c (ldversion): Update copyright year to 2014.
992
993 For older changes see ChangeLog-2013
994 \f
995 Copyright (C) 2014 Free Software Foundation, Inc.
996
997 Copying and distribution of this file, with or without modification,
998 are permitted in any medium without royalty provided the copyright
999 notice and this notice are preserved.
1000
1001 Local Variables:
1002 mode: change-log
1003 left-margin: 8
1004 fill-column: 74
1005 version-control: never
1006 End: