Add symbols for global entry stub, and report stats
[platform/upstream/binutils.git] / ld / ChangeLog
1 2014-07-01  Alan Modra  <amodra@gmail.com>
2
3         * emultempl/ppc64elf.em (stub_added): Delete.
4         (gld${EMULATION_NAME}_finish): Call ppc64_elf_build_stubs even when
5         none of the usual stubs have been added.  Only change entry_section
6         for ELFv1.
7
8 2014-07-01  Alan Modra  <amodra@gmail.com>
9
10         * sysdep.h: Don't include limits.h and sys/param.h.  Don't
11         include unistd.h twice.
12         (LD_PATHMAX): Don't define.
13         * ldlang.c (lang_common): Don't use UINT_MAX.
14
15 2014-07-01  Barney Stratford  <barney_stratford@fastmail.fm>
16             Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
17             Pitchumani Sivanupandi  <pitchumani.s@atmel.com>
18             Soundararajan  <Sounderarajan.D@atmel.com>
19
20         * Makefile.am (ALL_EMULATION_SOURCES): Add avrtiny emulation source.
21         (eavrtiny.c): Add rules for avrtiny emulation source.
22         * Makefile.in: Regenerate.
23         * configure.tgt: Add avrtiny to avr target emulations.
24         * scripttempl/avrtiny.sc: New file.  Linker script template for
25         avrtiny arch.
26         * emulparams/avrtiny.sh: New file.  Emulation parameters for
27         avrtiny arch.
28
29 2014-06-30  Ulrich Drepper  <drepper@gmail.com>
30
31         * lexsup.c (parse_args): Check whether provided SONAME is empty
32         string.  If yes, warn and ignore it.  Don't overwrite valid SONAME
33         with empty string.
34
35 2014-06-26  Linda Zhang  <lindasc@qq.com>
36
37         * emultempl/pe.em: Initialise insert_timestamp to true.
38         Add a --no-insert-timestamp command line option.
39         * emultempl/pep.em: Likewise.
40         * ld.texinfo: Document that --insert-timestamp is enabled by
41         default and that it now has an inverse command line option.
42         * NEWS: Mention the new behaviour.
43
44 2014-06-25  Nick Clifton  <nickc@redhat.com>
45
46         * Makefile.am (ALL_EMULATION_SOURCES): Move ei386pep.c from
47         here...
48         (ALL_64_EMULATION_SOURCES): ... to here.
49         (ALL_EMUL_EXTRA_OFILES): Move pep-dll.o from here...
50         (ALL_64_EMUL_EXTRA_OFILES): New.  ... to here.
51         * configure.in (EMUL_EXTRA_OFILES): Include
52         ALL_64_EMUL_EXTRA_OFILES when making a 64-bit enabled build.
53         * Makefile.in: Regenerate.
54         * configure: Regenerate.
55
56 2014-06-18  Andreas Tobler  <andreast@fgznet.ch>
57
58         * configure.tgt (arm*-*-freebsd*): Update targ_extra_emuls.
59         (arm*b-*-freebsd*): Add target.
60         * emulparams/armelfb_fbsd.sh: Added.
61         * emulparams/armelf_fbsd.sh: Updated.
62         * Makefile.am (ALL_EMULATION_SOURCES): Add earmelfb_fbsd.c.
63         * Makefile.in: Regenerate.
64
65 2014-06-16  Alan Modra  <amodra@gmail.com>
66
67         * scripttempl/elf.sc: Edit out __rela_iplt symbol assignments from
68         .rel sections, and __rel_iplt from .rela sections.
69         * scripttempl/nds32elf.sc: Likewise.
70         * Makefile.am (ends32*.c) Depend on nds32elf.sc.
71         * Makefile.in: Regenerate.
72
73 2014-06-13  Alan Modra  <amodra@gmail.com>
74
75         PR 17047
76         * ldlang.c (output_bfd_hash_table_free_fn): Delete.
77         (open_output): Don't set it..
78         * ldmain.c (ld_cleanup): ..or call it.
79
80 2014-06-13  Alan Modra  <amodra@gmail.com>
81
82         * emultempl/cr16elf.em, * emultempl/elf32.em, * emultempl/genelf.em,
83         * emultempl/m68kcoff.em, * emultempl/m68kelf.em,
84         * emultempl/nds32elf.em, * emultempl/pe.em, * emultempl/pep.em,
85         * ldlang.c, * ldmain.c, * pe-dll.c: Update for bfd.link_next change.
86
87 2014-06-13  Alan Modra  <amodra@gmail.com>
88
89         * Makefile.am (ALL_EMULATION_SOURCES): Add enios2elf.c, enios2linux.c.
90         * Makefile.in: Regenerate.
91
92 2014-06-07  Alan Modra  <amodra@gmail.com>
93
94         * ldexp.c (exp_fold_tree_1 <etree_provide>): Make PROVIDEd
95         linker script symbol value override a built-in linker symbol.
96
97 2014-06-05  Joel Brobecker  <brobecker@adacore.com>
98
99         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
100         bfd's development.sh.
101         * Makefile.in, configure: Regenerate.
102
103 2014-06-02  Alan Modra  <amodra@gmail.com>
104
105         * emulparams/elf32bfin.sh: Rename from bfin.sh.
106         * emulparams/elf32bfinfd.sh: Update to suit.
107         * emulparams/msp430.sh: Rename from msp430all.sh.  Remove
108         MSP430_NAME and msp430X vars.
109         * emulparams/msp430X.sh: New.
110         * emulparams/score3_elf.sh: Rename from scoreelf.sh.  Remove
111         SCORE_NAME and score7_elf ARCH setting.
112         * emulparams/score7_elf.sh: New.
113         * Makefile.am (eelf32bfin.c, eelf32bfinfd.c): Update dependencies.
114         (emsp430.c, emsp430X.c, escore3_elf.c, escore7_elf.c): Likewise.
115         * Makefile.in: Regenerate.
116         * genscripts.sh: Delete customizer_script param.
117
118 2014-05-28  Hans-Peter Nilsson  <hp@axis.com>
119
120         * Makefile.am: Change all rules with ${GENSCRIPTS}
121         invocations to be just dependencies.
122         ($(ALL_EMULATION_SOURCES) $(ALL_64_EMULATION_SOURCES))
123         (run-genscripts): New rules.
124         * Makefile.in: Regenerate.
125
126 2014-05-27  DJ Delorie  <dj@redhat.com>
127
128         * ld/ldemul.h (extra_map_file_text): New field.
129         (ldemul_extra_map_file_text): Declare.
130         * ld/ldemul.c (ldemul_extra_map_file_text): Define.
131         * ld/ldlang.c (lang_map): Call it.
132
133         * ld/emultempl/rxelf.em: Add extra_map_file_text hook.
134         * ld/emultempl/aix.em: Add NULL extra_map_file_text hook.
135         * ld/emultempl/armcoff.em: Likewise.
136         * ld/emultempl/beos.em: Likewise.
137         * ld/emultempl/elf32.em: Likewise.
138         * ld/emultempl/generic.em: Likewise.
139         * ld/emultempl/gld960.em: Likewise.
140         * ld/emultempl/gld960c.em: Likewise.
141         * ld/emultempl/linux.em: Likewise.
142         * ld/emultempl/lnk960.em: Likewise.
143         * ld/emultempl/m68kcoff.em: Likewise.
144         * ld/emultempl/pe.em: Likewise.
145         * ld/emultempl/pep.em: Likewise.
146         * ld/emultempl/sunos.em: Likewise.
147         * ld/emultempl/ticoff.em: Likewise.
148         * ld/emultempl/vanilla.em: Likewise.
149
150 2014-05-24  Alan Modra  <amodra@gmail.com>
151
152         * ldlang.c (base): Move variable to..
153         * mri.c: ..here, and make static.
154         * ldlang.h (base): Delete declaration.
155
156 2014-05-20  Hans-Peter Nilsson  <hp@axis.com>
157
158         * Makefile.am (ALL_EMULATION_SOURCES): Add missing eelf32mbel_linux.c.
159         * Makefile.in: Regenerate.
160
161 2014-05-20  Alan Modra  <amodra@gmail.com>
162
163         PR 16952
164         * emulparams/elf32ppccommon.sh (_SDA_BASE_, _SDA2_BASE_): Delete.
165         * emultempl/ppc32elf.em (ppc_before_allocation): Call
166         ppc_elf_maybe_strip_sdata_syms.
167         * ldlang.c (size_input_section): Correct output_offset value
168         for excluded input sections.
169
170 2014-05-16  John Marino  <binutils@marino.st>
171
172         * configure.tgt: Add /lib to dragonfly NATIVE_LIB_DIRS.
173
174 2014-05-11  Chung-Lin Tang  <cltang@codesourcery.com>
175
176         * emulparams/nios2linux.sh (OTHER_GOT_SYMBOLS): Wrap _gp in HIDDEN(),
177         and gp in PROVIDE_HIDDEN.
178
179 2014-05-10  Hans-Peter Nilsson  <hp@bitrange.com>
180
181         * ldlang.c (lang_finish): Don't call bfd_link_hash_table_free here.
182         (output_bfd_hash_table_free_fn): New variable.
183         (open_output): Save the _bfd_link_hash_table_free function for the
184         output_bfd into output_bfd_hash_table_free_fn.
185         * ldmain.c (ld_cleanup): If set, call output_bfd_hash_table_free_fn
186         on link_info.hash.
187         * ldlang.h (output_bfd_hash_table_free_fn): Declare.
188
189 2014-05-02  Alan Modra  <amodra@gmail.com>
190
191         * emultempl/metagelf.em: Update bfd target vector naming.
192         * emultempl/nios2elf.em: Likewise.
193         * emultempl/spuelf.em: Likewise.
194         * emultempl/tic6xdsbt.em: Likewise.
195
196 2014-04-22  Christian Svensson  <blue@cmd.nu>
197
198         * Makefile.am: Remove openrisc and or32 support.  Add support for or1k.
199         * configure.tgt: Likewise.
200         * emulparams/elf32or1k.sh: New file.
201         * emulparams/elf32or1k_linux.sh: New file.
202         * emulparams/elf32openrisc.sh: Delete.
203         * emulparams/or32.sh: Delete.
204         * emulparams/or32elf.sh: Delete.
205         * scripttempl/or32.sc: Delete.
206         * Makefile.in: Regenerate.
207
208 2014-04-21  Richard Henderson  <rth@redhat.com>
209
210         * emultempl/alphaelf.em (alpha_after_parse): Enable 2 relax passes.
211
212 2014-04-16  Steve Ellcey  <sellcey@mips.com>
213
214         * emultempl/elf32.em: Include safe-ctype.h.
215
216 2014-04-16  Steve Ellcey  <sellcey@mips.com>
217
218         * ldbuildid.c (generate_build_id): Add ATTRIBUTE_UNUSED to size arg.
219
220 2014-04-09  Nick Clifton  <nickc@redhat.com>
221
222         * Makefile.am (default-manifest.o): Remove rule.
223         (EMUL_EXTRA_BINARIES): Delete.
224         (ALL_EMUL_EXTRA_BINARIES): Delete.
225         (ld_new_DEPENDENCIES): Remove EMUL_EXTRA_BINARIES.
226         (install-data-local): Remove EMUL_EXTRA_BINARIES.
227         * Makefile.in: Regenerate.
228         * configure.in (all_emul_extra_binaries): Delete.
229         (EMUL_EXTRA_BINARIES): Remove.
230         * configure: Regenerate.
231         * configure.tgt (target_extra_binaries): Delete.
232         * emultempl/default-manifest.rc: Delete.
233         * ld.texinfo: Remove discussion of default manifest.
234         * emulparams/i386pe.sh (DEFAULT_MANIFEST): Delete.
235         * emulparams/i386pep.sh (DEFAULT_MANIFEST): Delete.
236
237 2014-04-09  Alan Modra  <amodra@gmail.com>
238
239         * emultempl/spuelf.em: Include safe-ctype.h, remove duplicate errno.h.
240         * emultempl/nds32elf.em: Include bfd_stdint.h.
241         * po/POTFILES.in: Regenerate.
242
243 2014-04-09  Alan Modra  <amodra@gmail.com>
244
245         * emultempl/ppc32elf.em (no_zero_padding, ppc_finish): New functions.
246         (LDEMUL_FINISH): Define.
247
248 2014-04-08  Nick Clifton  <nickc@redhat.com>
249
250         * scripttempl/pe.sc (R_RSRC): Remove default manifest.
251         * scripttempl/pep.sc (R_RSRC): Remove default manifest.
252
253 2014-04-08  Jon TURNEY  <jon.turney@dronecode.org.uk>
254
255         * emultempl/elf32.em (id_note_section_size, read_hex, write_build_id):
256         Move code for parsing build-id option and calculating the build-id to...
257         * ldbuildid.c: New file.
258         * ldbuildid.h: New file.
259         * Makefile.am (CFILES, HFILES, OFILES, ld_new_SOURCES): Add new
260         files.
261         * Makefile.in: Regenerate.
262         * ld.texinfo: Update --build-id description to mention COFF
263         support.
264         * NEWS: Mention support for COFF build ids.
265         * emultempl/pe.em (gld${EMULATION_NAME}_handle_option):
266         (pecoff_checksum_contents, write_build_id, setup_build_id)
267         (gld_${EMULATION_NAME}_after_open):  Handle and implement
268         build-id option.
269         * emultempl/pep.em: Likewise.
270
271 2014-04-04  Cary Coutant  <ccoutant@google.com>
272
273         PR gold/16804
274         * ld.texinfo: Document optional comma following output section
275         command and overlay command.
276
277 2014-04-04  Alan Modra  <amodra@gmail.com>
278
279         * ldlang.c (lang_size_sections_1 <lang_input_section_enum>): Use
280         current "fill", not "output_section_statement->fill".
281
282 2014-03-31  Nick Clifton  <nickc@redhat.com>
283
284         PR ld/16744
285         * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
286         section when performing a relocatable link with -z [no]execstack
287         specified.
288
289 2014-03-27  H.J. Lu  <hongjiu.lu@intel.com>
290
291         PR ld/16756
292         * ldmain.c (symbol_warning): New function.
293         (warning_callback): Use it.  Scan all input files for a reference
294         to SYMBOL.
295
296 2014-03-21  Christopher Faylor  <me.cygwin2013@cgf.cx>
297
298         * ld.texinfo: Document change in handling of --enable-auto-image-base.
299         * emultempl/pe.em (pe_auto_image_base): Set to default base.
300         (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
301         optional --enable-auto-image-base argument.
302         (gld${EMULATION_NAME}_handle_option): Handle optional
303         --enable-auto-image-base argument.
304         (compute_dll_image_base): Eliminate constant.  Use pe_auto_image_base.
305
306 2014-03-19  Nick Clifton  <nickc@redhat.com>
307
308         * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
309         * Makefile.in: Regenerate.
310         * emultempl/default-manifest.rc: Fix typo.
311         * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
312         (.rsrc): Add SUBALIGN(4).  Remove SORT.
313         * scripttempl/pep.sc: Likewise.
314
315 2014-03-17  Christopher Faylor  <me.cygwin2014@cgf.cx>
316
317         * Makefile.am: Use host version of windres.
318         * Makefile.in: Regenerate.
319
320 2014-03-14  Romain Geissler  <romain.geissler@amadeus.com>
321             Alan Modra  <amodra@gmail.com>
322
323         * ldlang.h (full_name_provided): New input flag.
324         * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
325         for -l:namespec.  Instead use lang_input_file_is_l_enum with
326         full_name_provided flag.
327         * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
328         full_name_provided flag is set.
329         * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
330         Handle full_name_provided libraries.  Tidy EXTRA_SHLIB_EXTENSION
331         support.  Set DT_NEEDED for -l:namespec as namespec.
332         * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
333         * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
334         Don't handle full_name_provided libraries.
335         * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
336         * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
337         * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
338
339 2014-03-12  Alan Modra  <amodra@gmail.com>
340
341         * Makefile.in: Regenerate.
342
343 2014-03-05  Alan Modra  <amodra@gmail.com>
344
345         Update copyright years.
346
347 2014-03-04  Nick Clifton  <nickc@redhat.com>
348
349         * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
350         * Makefile.in: Regenerate.
351
352 2014-02-27  Yuri Gribov  <y.gribov@samsung.com>
353
354         * emultempl/armelf.em (OPTION_LONG_PLT): Define.
355         (PARSE_AND_LIST_LONGOPTS): Add long-plt.
356         (PARSE_AND_LIST_OPTIONS): Likewise.
357         (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
358         * ld.texinfo: Document --long-plt.
359
360 2014-02-27  Alan Modra  <amodra@gmail.com>
361
362         * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
363         use ppc32elf.em.
364         * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
365         vxworks.
366         (LDEMUL_AFTER_OPEN): Don't set for vxworks.
367         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
368         -secure-plt, -bss-plt and -sdata-got when vxworks.
369
370 2014-02-27  Nick Clifton  <nickc@redhat.com>
371
372         * configure.in (all_emul_extra_binaries): New variable.  Populated
373         by invoking configure.tgt.
374         (EMUL_EXTRA_BINARIES): New substitution.
375         * configure: Regenerate.
376         * configure.tgt (target_extra_binaries): New variable.  Set to
377         default-manifest.o for Cygwin and MinGW targets.
378         * Makefile.am (EMUL_EXTRA_BINARIES): New variable.  Initialised
379         by the configure script.
380         (ALL_EMUL_EXTRA_BINARIES): New variable.
381         (default-manifest.o): New rule to build the default manifest.
382         (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
383         (install-data-local): Add EMUL_EXTRA_BINARIES.
384         * Makefile.in: Regenerate.
385         * ld.texinfo: Document default manifest support.
386         * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
387         * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
388         * emultempl/default-manifest.rc: New file.
389         * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
390         * scripttempl/pep.sc (R_RSRC): Likewise.
391
392 2014-02-26  Dan Mick  <dan.mick@inktank.com>
393
394         PR ld/16569
395         * ldcref.c (cref_sort_array): Compare unmangled names unless
396         demanglng has been requiested.
397         (output_one_cref): Output unmangled name unless demangling has
398         been requested.
399
400 2014-02-19  Igor Zamyatin  <igor.zamyatin@intel.com>
401             H.J. Lu  <hongjiu.lu@intel.com>
402
403         * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
404
405 2014-02-19  Alan Modra  <amodra@gmail.com>
406
407         * emultempl/ppc64elf.em (params): Init new field.
408         (ppc_create_output_section_statements): Set params.save_restore_funcs
409         default.
410         (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
411         --no-save-restore-funcs.
412
413 2014-02-17  Alan Modra  <amodra@gmail.com>
414
415         * emultemps/ppc64elf.em (params): New static struct replacing
416         various other static vars.  Adjust code throughout file.
417
418 2014-02-17  Alan Modra  <amodra@gmail.com>
419
420         * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
421         ppc476 workaround for ld -r.
422
423 2014-02-12  Alan Modra  <amodra@gmail.com>
424
425         * emultempl/ppc32elf.em (pagesize): New static var.
426         (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
427         (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
428
429 2014-02-11  Andrew Pinski  <apinski@cavium.com>
430
431         * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
432         (ELF_INTERPRETER_NAME): Define.
433         * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
434
435 2014-02-10  Alan Modra  <amodra@gmail.com>
436
437         * po/ld.pot: Regenerate.
438
439 2014-02-03  Alan Modra  <amodra@gmail.com>
440
441         * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
442         plt_style): Delete.  Adjust all refs to instead use..
443         (params): ..this.  New variable.
444         (ppc_after_open_output): New function.  Tweak params and pass to
445         ppc_elf_link_params.
446         (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
447         (ppc_before_allocation): Adjust ppc_elf_tls_setup call.  Enable
448         relaxation for ppc476 workaround.
449         (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
450         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
451
452 2014-02-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
453
454         * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
455         * ld/ldlang.c (lang_size_sections_1): Add dotdelta
456         variable which reflects the VMA change due to alignment
457         requirements.  Use dotdelta do change the LMA if
458         ALIGN_WITH_INPUT is requested.
459
460 2014-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
461
462         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
463         call to bfd_set_section_vma exposed by recent bfd_set_section_vma
464         change.
465
466 2014-01-30  Sandra Loosemore  <sandra@codesourcery.com>
467
468         * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
469         * Makefile.in: Regenerated.
470         * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
471         * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
472         * emultempl/nios2elf.em: New file.
473         * gen-doc.texi (NIOSII): Set.
474         * ld.texinfo (NIOSII): Set.
475
476 2014-01-28  Nick Clifton  <nickc@redhat.com>
477
478         * Makefile.am: Remove obsolete MSP430 emulations.
479         * configure.tgt: Likewise.
480         * emulparams/msp430all.sh: Likewise.
481         * Makefile.in: Regenerate.
482
483 2014-01-24  H.J. Lu  <hongjiu.lu@intel.com>
484
485         PR ld/16498
486         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
487         orphaned TLS section handling.
488
489 2014-01-24  Alan Modra  <amodra@gmail.com>
490
491         * ldlang.c (lang_output_section_find_by_flags): Be careful to
492         test look->bfd_section->flags if available rather than
493         look->flags.  Separate SEC_THREAD_LOCAL handling from
494         SEC_READONLY loop, and rewrite.
495
496 2014-01-22  Alan Modra  <amodra@gmail.com>
497
498         * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
499         (lang_init): Initialise them.
500         (lang_print_asneeded): New function.
501         (lang_process): Call lang_print_asneeded.
502         * ldlang.h (struct asneeded_minfo): New.
503         (asneeded_list_tail): Declare.
504         * ldmain.c (add_archive_element): Improve archive map heading.
505         * ldmisc.c (minfo): Stash --as-needed info.
506
507 2014-01-22  Alan Modra  <amodra@gmail.com>
508
509         * ld.h (struct map_symbol_def): Move to..
510         * ldlang.h: ..here.
511         * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
512
513 2014-01-22  Alan Modra  <amodra@gmail.com>
514
515         * ld.texinfo (Output Section Discarding): Mention assigning to dot
516         as a way of keeping otherwise empty sections.
517         * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
518         is_dot_plus_0, is_align_conditional): New predicates.
519         (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
520         output section, except for some special cases.
521         * scripttempl/elfmicroblaze.sc: Use canonical form to align at
522         end of .heap and .stack.
523
524 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
525
526         * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
527
528 2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>
529
530         * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
531
532 2014-01-20  Alan Modra  <amodra@gmail.com>
533
534         * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
535         by_script.  Make iteration a single bit field.
536         (lang_track_definedness, lang_symbol_definition_iteration): Delete.
537         (lang_symbol_defined): Declare.
538         * ldlang.c (lang_statement_iteration): Expand comment a little.
539         (lang_init <lang_definedness_table>): Make it bigger.
540         (lang_track_definedness, lang_symbol_definition): Delete.
541         (lang_definedness_newfunc): Update.
542         (lang_symbol_defined): New function.
543         (lang_update_definedness): Create entries here.  Do track whether
544         script definition of symbol is valid, even when also defined in
545         an object file.
546         * ldexp.c (fold_name <DEFINED>): Update.
547         (fold_name <NAME>): Allow self-assignment for absolute symbols
548         defined in a linker script.
549
550 2014-01-20  Guy Martin <gmsoft@tuxicoman.be>
551             Alan Modra  <amodra@gmail.com>
552
553         * ldlang.h (lang_output_section_get): Define.
554         * ldlang.c (lang_output_section_get): Likewise.
555         (init_os): Set the output_section userdata to the output
556         section statement.
557         * emultempl/hppaelf.em: Use lang_output_section_get instead of
558         lang_output_section_find where applicable.
559         * emultempl/aarch64elf.em: Likewise.
560         * emultempl/aix.em: Likewise.
561         * emultempl/armelf.em: Likewise.
562         * emultempl/m68hc1xelf.em: Likewise.
563         * emultempl/metagelf.em: Likewise.
564         * emultempl/mipself.em: Likewise.
565         * emultempl/ppc64elf.em: Likewise.
566         * emultempl/spuelf.em: Likewise.
567
568 2014-01-17  Alan Modra  <amodra@gmail.com>
569
570         * genscripts.sh (COMPILE_IN): Don't set if already set.
571         * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
572         COMPILE_IN=no.
573         * emulparams/nds32elf16m.sh: Likewise.
574         * emulparams/nds32elf_linux.sh: Likewise.
575         * emultempl/aix.em: Test COMPILE_IN value is "yes".
576         * emultempl/armcoff.em: Likewise.
577         * emultempl/elf32.em: Likewise.
578         * emultempl/generic.em: Likewise.
579         * emultempl/gld960.em: Likewise.
580         * emultempl/gld960c.em: Likewise.
581         * emultempl/linux.em: Likewise.
582         * emultempl/lnk960.em: Likewise.
583         * emultempl/m68kcoff.em: Likewise.
584         * emultempl/sunos.em: Likewise.
585         * emultempl/ticoff.em: Likewise.
586
587 2014-01-16  H.J. Lu  <hongjiu.lu@intel.com>
588
589         PR ld/16456
590         * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
591         suffix.
592         * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
593         for elf32_x86_64 emulation.
594         * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
595         for elf_i386 emulation.
596
597 2014-01-16  Alan Modra  <amodra@gmail.com>
598
599         * ld.h (fat_section_userdata_type, get_userdata): Move to..
600         * ldlang.h (input_section_userdata_type, get_userdata): ..here.
601         * ldlang.c (init_map_userdata): Delete.  Fold into..
602         (sort_def_symbol): ..here.  Don't attach input section userdata
603         to output sections or global bfd sections.
604         (lang_map): Don't pre-allocate input section userdata.
605         (init_os): Don't allocate userdata for output sections.
606         (print_all_symbols): Update.
607
608 2014-01-15  H.J. Lu  <hongjiu.lu@intel.com>
609
610         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
611         Silence uninitialized warning on ehdr_start_save with older
612         GCC.
613
614 2014-01-15  Alan Modra  <amodra@gmail.com>
615
616         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
617         __ehdr_start before size_dynamic_sections and restore afterwards.
618
619 2014-01-10  Alan Modra  <amodra@gmail.com>
620
621         PR ld/14207
622         PR ld/16322
623         PR binutils/16323
624         * ldlang.c (lang_size_sections): Remove unneeded RELRO base
625         adjust.  Tidy comments.
626         * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
627
628 2014-01-10  Hans-Peter Nilsson  <hp@axis.com>
629
630         * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
631
632 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
633
634         PR ld/14207
635         PR ld/16322
636         PR binutils/16323
637         * ldlang.c (lang_size_sections): Properly align RELRO base.
638
639 2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
640
641         * ldver.c (ldversion): Update copyright year to 2014.
642
643 For older changes see ChangeLog-2013
644 \f
645 Copyright (C) 2014 Free Software Foundation, Inc.
646
647 Copying and distribution of this file, with or without modification,
648 are permitted in any medium without royalty provided the copyright
649 notice and this notice are preserved.
650
651 Local Variables:
652 mode: change-log
653 left-margin: 8
654 fill-column: 74
655 version-control: never
656 End: