1 2014-04-09 Nick Clifton <nickc@redhat.com>
3 * Makefile.am (default-manifest.o): Remove rule.
4 (EMUL_EXTRA_BINARIES): Delete.
5 (ALL_EMUL_EXTRA_BINARIES): Delete.
6 (ld_new_DEPENDENCIES): Remove EMUL_EXTRA_BINARIES.
7 (install-data-local): Remove EMUL_EXTRA_BINARIES.
8 * Makefile.in: Regenerate.
9 * configure.in (all_emul_extra_binaries): Delete.
10 (EMUL_EXTRA_BINARIES): Remove.
11 * configure: Regenerate.
12 * configure.tgt (target_extra_binaries): Delete.
13 * emultempl/default-manifest.rc: Delete.
14 * ld.texinfo: Remove discussion of default manifest.
15 * emulparams/i386pe.sh (DEFAULT_MANIFEST): Delete.
16 * emulparams/i386pep.sh (DEFAULT_MANIFEST): Delete.
18 2014-04-09 Alan Modra <amodra@gmail.com>
20 * emultempl/spuelf.em: Include safe-ctype.h, remove duplicate errno.h.
21 * emultempl/nds32elf.em: Include bfd_stdint.h.
22 * po/POTFILES.in: Regenerate.
24 2014-04-09 Alan Modra <amodra@gmail.com>
26 * emultempl/ppc32elf.em (no_zero_padding, ppc_finish): New functions.
27 (LDEMUL_FINISH): Define.
29 2014-04-08 Nick Clifton <nickc@redhat.com>
31 * scripttempl/pe.sc (R_RSRC): Remove default manifest.
32 * scripttempl/pep.sc (R_RSRC): Remove default manifest.
34 2014-04-08 Jon TURNEY <jon.turney@dronecode.org.uk>
36 * emultempl/elf32.em (id_note_section_size, read_hex, write_build_id):
37 Move code for parsing build-id option and calculating the build-id to...
38 * ldbuildid.c: New file.
39 * ldbuildid.h: New file.
40 * Makefile.am (CFILES, HFILES, OFILES, ld_new_SOURCES): Add new
42 * Makefile.in: Regenerate.
43 * ld.texinfo: Update --build-id description to mention COFF
45 * NEWS: Mention support for COFF build ids.
46 * emultempl/pe.em (gld${EMULATION_NAME}_handle_option):
47 (pecoff_checksum_contents, write_build_id, setup_build_id)
48 (gld_${EMULATION_NAME}_after_open): Handle and implement
50 * emultempl/pep.em: Likewise.
52 2014-04-04 Cary Coutant <ccoutant@google.com>
55 * ld.texinfo: Document optional comma following output section
56 command and overlay command.
58 2014-04-04 Alan Modra <amodra@gmail.com>
60 * ldlang.c (lang_size_sections_1 <lang_input_section_enum>): Use
61 current "fill", not "output_section_statement->fill".
63 2014-03-31 Nick Clifton <nickc@redhat.com>
66 * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
67 section when performing a relocatable link with -z [no]execstack
70 2014-03-27 H.J. Lu <hongjiu.lu@intel.com>
73 * ldmain.c (symbol_warning): New function.
74 (warning_callback): Use it. Scan all input files for a reference
77 2014-03-21 Christopher Faylor <me.cygwin2013@cgf.cx>
79 * ld.texinfo: Document change in handling of --enable-auto-image-base.
80 * emultempl/pe.em (pe_auto_image_base): Set to default base.
81 (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
82 optional --enable-auto-image-base argument.
83 (gld${EMULATION_NAME}_handle_option): Handle optional
84 --enable-auto-image-base argument.
85 (compute_dll_image_base): Eliminate constant. Use pe_auto_image_base.
87 2014-03-19 Nick Clifton <nickc@redhat.com>
89 * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
90 * Makefile.in: Regenerate.
91 * emultempl/default-manifest.rc: Fix typo.
92 * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
93 (.rsrc): Add SUBALIGN(4). Remove SORT.
94 * scripttempl/pep.sc: Likewise.
96 2014-03-17 Christopher Faylor <me.cygwin2014@cgf.cx>
98 * Makefile.am: Use host version of windres.
99 * Makefile.in: Regenerate.
101 2014-03-14 Romain Geissler <romain.geissler@amadeus.com>
102 Alan Modra <amodra@gmail.com>
104 * ldlang.h (full_name_provided): New input flag.
105 * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
106 for -l:namespec. Instead use lang_input_file_is_l_enum with
107 full_name_provided flag.
108 * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
109 full_name_provided flag is set.
110 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
111 Handle full_name_provided libraries. Tidy EXTRA_SHLIB_EXTENSION
112 support. Set DT_NEEDED for -l:namespec as namespec.
113 * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
114 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
115 Don't handle full_name_provided libraries.
116 * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
117 * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
118 * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
120 2014-03-12 Alan Modra <amodra@gmail.com>
122 * Makefile.in: Regenerate.
124 2014-03-05 Alan Modra <amodra@gmail.com>
126 Update copyright years.
128 2014-03-04 Nick Clifton <nickc@redhat.com>
130 * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
131 * Makefile.in: Regenerate.
133 2014-02-27 Yuri Gribov <y.gribov@samsung.com>
135 * emultempl/armelf.em (OPTION_LONG_PLT): Define.
136 (PARSE_AND_LIST_LONGOPTS): Add long-plt.
137 (PARSE_AND_LIST_OPTIONS): Likewise.
138 (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
139 * ld.texinfo: Document --long-plt.
141 2014-02-27 Alan Modra <amodra@gmail.com>
143 * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
145 * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
147 (LDEMUL_AFTER_OPEN): Don't set for vxworks.
148 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
149 -secure-plt, -bss-plt and -sdata-got when vxworks.
151 2014-02-27 Nick Clifton <nickc@redhat.com>
153 * configure.in (all_emul_extra_binaries): New variable. Populated
154 by invoking configure.tgt.
155 (EMUL_EXTRA_BINARIES): New substitution.
156 * configure: Regenerate.
157 * configure.tgt (target_extra_binaries): New variable. Set to
158 default-manifest.o for Cygwin and MinGW targets.
159 * Makefile.am (EMUL_EXTRA_BINARIES): New variable. Initialised
160 by the configure script.
161 (ALL_EMUL_EXTRA_BINARIES): New variable.
162 (default-manifest.o): New rule to build the default manifest.
163 (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
164 (install-data-local): Add EMUL_EXTRA_BINARIES.
165 * Makefile.in: Regenerate.
166 * ld.texinfo: Document default manifest support.
167 * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
168 * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
169 * emultempl/default-manifest.rc: New file.
170 * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
171 * scripttempl/pep.sc (R_RSRC): Likewise.
173 2014-02-26 Dan Mick <dan.mick@inktank.com>
176 * ldcref.c (cref_sort_array): Compare unmangled names unless
177 demanglng has been requiested.
178 (output_one_cref): Output unmangled name unless demangling has
181 2014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
182 H.J. Lu <hongjiu.lu@intel.com>
184 * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
186 2014-02-19 Alan Modra <amodra@gmail.com>
188 * emultempl/ppc64elf.em (params): Init new field.
189 (ppc_create_output_section_statements): Set params.save_restore_funcs
191 (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
192 --no-save-restore-funcs.
194 2014-02-17 Alan Modra <amodra@gmail.com>
196 * emultemps/ppc64elf.em (params): New static struct replacing
197 various other static vars. Adjust code throughout file.
199 2014-02-17 Alan Modra <amodra@gmail.com>
201 * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
202 ppc476 workaround for ld -r.
204 2014-02-12 Alan Modra <amodra@gmail.com>
206 * emultempl/ppc32elf.em (pagesize): New static var.
207 (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
208 (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
210 2014-02-11 Andrew Pinski <apinski@cavium.com>
212 * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
213 (ELF_INTERPRETER_NAME): Define.
214 * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
216 2014-02-10 Alan Modra <amodra@gmail.com>
218 * po/ld.pot: Regenerate.
220 2014-02-03 Alan Modra <amodra@gmail.com>
222 * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
223 plt_style): Delete. Adjust all refs to instead use..
224 (params): ..this. New variable.
225 (ppc_after_open_output): New function. Tweak params and pass to
227 (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
228 (ppc_before_allocation): Adjust ppc_elf_tls_setup call. Enable
229 relaxation for ppc476 workaround.
230 (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
231 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
233 2014-02-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
235 * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
236 * ld/ldlang.c (lang_size_sections_1): Add dotdelta
237 variable which reflects the VMA change due to alignment
238 requirements. Use dotdelta do change the LMA if
239 ALIGN_WITH_INPUT is requested.
241 2014-02-01 Hans-Peter Nilsson <hp@bitrange.com>
243 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
244 call to bfd_set_section_vma exposed by recent bfd_set_section_vma
247 2014-01-30 Sandra Loosemore <sandra@codesourcery.com>
249 * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
250 * Makefile.in: Regenerated.
251 * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
252 * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
253 * emultempl/nios2elf.em: New file.
254 * gen-doc.texi (NIOSII): Set.
255 * ld.texinfo (NIOSII): Set.
257 2014-01-28 Nick Clifton <nickc@redhat.com>
259 * Makefile.am: Remove obsolete MSP430 emulations.
260 * configure.tgt: Likewise.
261 * emulparams/msp430all.sh: Likewise.
262 * Makefile.in: Regenerate.
264 2014-01-24 H.J. Lu <hongjiu.lu@intel.com>
267 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
268 orphaned TLS section handling.
270 2014-01-24 Alan Modra <amodra@gmail.com>
272 * ldlang.c (lang_output_section_find_by_flags): Be careful to
273 test look->bfd_section->flags if available rather than
274 look->flags. Separate SEC_THREAD_LOCAL handling from
275 SEC_READONLY loop, and rewrite.
277 2014-01-22 Alan Modra <amodra@gmail.com>
279 * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
280 (lang_init): Initialise them.
281 (lang_print_asneeded): New function.
282 (lang_process): Call lang_print_asneeded.
283 * ldlang.h (struct asneeded_minfo): New.
284 (asneeded_list_tail): Declare.
285 * ldmain.c (add_archive_element): Improve archive map heading.
286 * ldmisc.c (minfo): Stash --as-needed info.
288 2014-01-22 Alan Modra <amodra@gmail.com>
290 * ld.h (struct map_symbol_def): Move to..
292 * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
294 2014-01-22 Alan Modra <amodra@gmail.com>
296 * ld.texinfo (Output Section Discarding): Mention assigning to dot
297 as a way of keeping otherwise empty sections.
298 * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
299 is_dot_plus_0, is_align_conditional): New predicates.
300 (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
301 output section, except for some special cases.
302 * scripttempl/elfmicroblaze.sc: Use canonical form to align at
303 end of .heap and .stack.
305 2014-01-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
307 * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
309 2014-01-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
311 * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
313 2014-01-20 Alan Modra <amodra@gmail.com>
315 * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
316 by_script. Make iteration a single bit field.
317 (lang_track_definedness, lang_symbol_definition_iteration): Delete.
318 (lang_symbol_defined): Declare.
319 * ldlang.c (lang_statement_iteration): Expand comment a little.
320 (lang_init <lang_definedness_table>): Make it bigger.
321 (lang_track_definedness, lang_symbol_definition): Delete.
322 (lang_definedness_newfunc): Update.
323 (lang_symbol_defined): New function.
324 (lang_update_definedness): Create entries here. Do track whether
325 script definition of symbol is valid, even when also defined in
327 * ldexp.c (fold_name <DEFINED>): Update.
328 (fold_name <NAME>): Allow self-assignment for absolute symbols
329 defined in a linker script.
331 2014-01-20 Guy Martin <gmsoft@tuxicoman.be>
332 Alan Modra <amodra@gmail.com>
334 * ldlang.h (lang_output_section_get): Define.
335 * ldlang.c (lang_output_section_get): Likewise.
336 (init_os): Set the output_section userdata to the output
338 * emultempl/hppaelf.em: Use lang_output_section_get instead of
339 lang_output_section_find where applicable.
340 * emultempl/aarch64elf.em: Likewise.
341 * emultempl/aix.em: Likewise.
342 * emultempl/armelf.em: Likewise.
343 * emultempl/m68hc1xelf.em: Likewise.
344 * emultempl/metagelf.em: Likewise.
345 * emultempl/mipself.em: Likewise.
346 * emultempl/ppc64elf.em: Likewise.
347 * emultempl/spuelf.em: Likewise.
349 2014-01-17 Alan Modra <amodra@gmail.com>
351 * genscripts.sh (COMPILE_IN): Don't set if already set.
352 * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
354 * emulparams/nds32elf16m.sh: Likewise.
355 * emulparams/nds32elf_linux.sh: Likewise.
356 * emultempl/aix.em: Test COMPILE_IN value is "yes".
357 * emultempl/armcoff.em: Likewise.
358 * emultempl/elf32.em: Likewise.
359 * emultempl/generic.em: Likewise.
360 * emultempl/gld960.em: Likewise.
361 * emultempl/gld960c.em: Likewise.
362 * emultempl/linux.em: Likewise.
363 * emultempl/lnk960.em: Likewise.
364 * emultempl/m68kcoff.em: Likewise.
365 * emultempl/sunos.em: Likewise.
366 * emultempl/ticoff.em: Likewise.
368 2014-01-16 H.J. Lu <hongjiu.lu@intel.com>
371 * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
373 * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
374 for elf32_x86_64 emulation.
375 * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
376 for elf_i386 emulation.
378 2014-01-16 Alan Modra <amodra@gmail.com>
380 * ld.h (fat_section_userdata_type, get_userdata): Move to..
381 * ldlang.h (input_section_userdata_type, get_userdata): ..here.
382 * ldlang.c (init_map_userdata): Delete. Fold into..
383 (sort_def_symbol): ..here. Don't attach input section userdata
384 to output sections or global bfd sections.
385 (lang_map): Don't pre-allocate input section userdata.
386 (init_os): Don't allocate userdata for output sections.
387 (print_all_symbols): Update.
389 2014-01-15 H.J. Lu <hongjiu.lu@intel.com>
391 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
392 Silence uninitialized warning on ehdr_start_save with older
395 2014-01-15 Alan Modra <amodra@gmail.com>
397 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
398 __ehdr_start before size_dynamic_sections and restore afterwards.
400 2014-01-10 Alan Modra <amodra@gmail.com>
405 * ldlang.c (lang_size_sections): Remove unneeded RELRO base
406 adjust. Tidy comments.
407 * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
409 2014-01-10 Hans-Peter Nilsson <hp@axis.com>
411 * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
413 2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
418 * ldlang.c (lang_size_sections): Properly align RELRO base.
420 2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
422 * ldver.c (ldversion): Update copyright year to 2014.
424 For older changes see ChangeLog-2013
426 Copyright (C) 2014 Free Software Foundation, Inc.
428 Copying and distribution of this file, with or without modification,
429 are permitted in any medium without royalty provided the copyright
430 notice and this notice are preserved.
436 version-control: never