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