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