1 2014-04-04 Cary Coutant <ccoutant@google.com>
4 * ld.texinfo: Document optional comma following output section
5 command and overlay command.
7 2014-04-04 Alan Modra <amodra@gmail.com>
9 * ldlang.c (lang_size_sections_1 <lang_input_section_enum>): Use
10 current "fill", not "output_section_statement->fill".
12 2014-03-31 Nick Clifton <nickc@redhat.com>
15 * emultempl/elf32.em (_after_open): Create a .note.GNU-stack
16 section when performing a relocatable link with -z [no]execstack
19 2014-03-27 H.J. Lu <hongjiu.lu@intel.com>
22 * ldmain.c (symbol_warning): New function.
23 (warning_callback): Use it. Scan all input files for a reference
26 2014-03-21 Christopher Faylor <me.cygwin2013@cgf.cx>
28 * ld.texinfo: Document change in handling of --enable-auto-image-base.
29 * emultempl/pe.em (pe_auto_image_base): Set to default base.
30 (gld_${EMULATION_NAME}_list_options): Change usage message to reflect
31 optional --enable-auto-image-base argument.
32 (gld${EMULATION_NAME}_handle_option): Handle optional
33 --enable-auto-image-base argument.
34 (compute_dll_image_base): Eliminate constant. Use pe_auto_image_base.
36 2014-03-19 Nick Clifton <nickc@redhat.com>
38 * Makefile.am (default-manifest.o): Use WINDRES_FOR_TARGET.
39 * Makefile.in: Regenerate.
40 * emultempl/default-manifest.rc: Fix typo.
41 * scripttempl/pe.sc (R_RSRC): Fix default-manifest exclusion.
42 (.rsrc): Add SUBALIGN(4). Remove SORT.
43 * scripttempl/pep.sc: Likewise.
45 2014-03-17 Christopher Faylor <me.cygwin2014@cgf.cx>
47 * Makefile.am: Use host version of windres.
48 * Makefile.in: Regenerate.
50 2014-03-14 Romain Geissler <romain.geissler@amadeus.com>
51 Alan Modra <amodra@gmail.com>
53 * ldlang.h (full_name_provided): New input flag.
54 * ldlang.c (new_afile): Don't use lang_input_file_is_search_file_enum
55 for -l:namespec. Instead use lang_input_file_is_l_enum with
56 full_name_provided flag.
57 * ldlfile.c (ldfile_open_file_search): Don't complete lib name if
58 full_name_provided flag is set.
59 * emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
60 Handle full_name_provided libraries. Tidy EXTRA_SHLIB_EXTENSION
61 support. Set DT_NEEDED for -l:namespec as namespec.
62 * emultempl/aix.em (ppc_after_open_output): Handle full_name_provided.
63 * emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
64 Don't handle full_name_provided libraries.
65 * emultempl/pe.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
66 * emultempl/pep.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
67 * emultempl/vms.em (gld${EMULATION_NAME}_open_dynamic_archive): Ditto.
69 2014-03-12 Alan Modra <amodra@gmail.com>
71 * Makefile.in: Regenerate.
73 2014-03-05 Alan Modra <amodra@gmail.com>
75 Update copyright years.
77 2014-03-04 Nick Clifton <nickc@redhat.com>
79 * Makefile.am (ALL_EMUL_EXTRA_BINARIES): Remove default-manifest.
80 * Makefile.in: Regenerate.
82 2014-02-27 Yuri Gribov <y.gribov@samsung.com>
84 * emultempl/armelf.em (OPTION_LONG_PLT): Define.
85 (PARSE_AND_LIST_LONGOPTS): Add long-plt.
86 (PARSE_AND_LIST_OPTIONS): Likewise.
87 (PARSE_AND_LIST_ARGS_CASES): Handle long-plt.
88 * ld.texinfo: Document --long-plt.
90 2014-02-27 Alan Modra <amodra@gmail.com>
92 * emulparams/elf32ppcvxworks.sh: Source plt_unwind.sh and
94 * emultempl/ppc32elf.em (ppc_after_open): Don't compile for
96 (LDEMUL_AFTER_OPEN): Don't set for vxworks.
97 (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Exclude
98 -secure-plt, -bss-plt and -sdata-got when vxworks.
100 2014-02-27 Nick Clifton <nickc@redhat.com>
102 * configure.in (all_emul_extra_binaries): New variable. Populated
103 by invoking configure.tgt.
104 (EMUL_EXTRA_BINARIES): New substitution.
105 * configure: Regenerate.
106 * configure.tgt (target_extra_binaries): New variable. Set to
107 default-manifest.o for Cygwin and MinGW targets.
108 * Makefile.am (EMUL_EXTRA_BINARIES): New variable. Initialised
109 by the configure script.
110 (ALL_EMUL_EXTRA_BINARIES): New variable.
111 (default-manifest.o): New rule to build the default manifest.
112 (ld_new_DEPENDENCIES): Add EMUL_EXTRA_BINARIES.
113 (install-data-local): Add EMUL_EXTRA_BINARIES.
114 * Makefile.in: Regenerate.
115 * ld.texinfo: Document default manifest support.
116 * emulparams/i386pe.sh (DEFAULT_MANIFEST): Define.
117 * emulparams/i386pep.sh (DEFAULT_MANIFEST): Define.
118 * emultempl/default-manifest.rc: New file.
119 * scripttempl/pe.sc (R_RSRC): Include DEFAULT_MANIFEST, if defined.
120 * scripttempl/pep.sc (R_RSRC): Likewise.
122 2014-02-26 Dan Mick <dan.mick@inktank.com>
125 * ldcref.c (cref_sort_array): Compare unmangled names unless
126 demanglng has been requiested.
127 (output_one_cref): Output unmangled name unless demangling has
130 2014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
131 H.J. Lu <hongjiu.lu@intel.com>
133 * emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): New.
135 2014-02-19 Alan Modra <amodra@gmail.com>
137 * emultempl/ppc64elf.em (params): Init new field.
138 (ppc_create_output_section_statements): Set params.save_restore_funcs
140 (PARSE_AND_LIST_*): Add support for --save-restore-funcs and
141 --no-save-restore-funcs.
143 2014-02-17 Alan Modra <amodra@gmail.com>
145 * emultemps/ppc64elf.em (params): New static struct replacing
146 various other static vars. Adjust code throughout file.
148 2014-02-17 Alan Modra <amodra@gmail.com>
150 * emultempl/ppc32elf.em (ppc_after_open_output): Really enable
151 ppc476 workaround for ld -r.
153 2014-02-12 Alan Modra <amodra@gmail.com>
155 * emultempl/ppc32elf.em (pagesize): New static var.
156 (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
157 (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.
159 2014-02-11 Andrew Pinski <apinski@cavium.com>
161 * emulparams/aarch64linux32.sh (LIBPATH_SUFFIX): Change to ilp32.
162 (ELF_INTERPRETER_NAME): Define.
163 * emulparams/aarch64linux32b.sh (ELF_INTERPRETER_NAME): Define.
165 2014-02-10 Alan Modra <amodra@gmail.com>
167 * po/ld.pot: Regenerate.
169 2014-02-03 Alan Modra <amodra@gmail.com>
171 * emultempl/ppc32elf.em (no_tls_get_addr_opt, emit_stub_syms)
172 plt_style): Delete. Adjust all refs to instead use..
173 (params): ..this. New variable.
174 (ppc_after_open_output): New function. Tweak params and pass to
176 (ppc_after_open): Adjust ppc_elf_select_plt_layout call.
177 (ppc_before_allocation): Adjust ppc_elf_tls_setup call. Enable
178 relaxation for ppc476 workaround.
179 (PARSE_AND_LIST_*): Add --{no-,}ppc476-workaround support.
180 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
182 2014-02-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
184 * ld/ld.texinfo: Change ALIGN_WITH_INPUT documentation.
185 * ld/ldlang.c (lang_size_sections_1): Add dotdelta
186 variable which reflects the VMA change due to alignment
187 requirements. Use dotdelta do change the LMA if
188 ALIGN_WITH_INPUT is requested.
190 2014-02-01 Hans-Peter Nilsson <hp@bitrange.com>
192 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
193 call to bfd_set_section_vma exposed by recent bfd_set_section_vma
196 2014-01-30 Sandra Loosemore <sandra@codesourcery.com>
198 * Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
199 * Makefile.in: Regenerated.
200 * emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
201 * emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
202 * emultempl/nios2elf.em: New file.
203 * gen-doc.texi (NIOSII): Set.
204 * ld.texinfo (NIOSII): Set.
206 2014-01-28 Nick Clifton <nickc@redhat.com>
208 * Makefile.am: Remove obsolete MSP430 emulations.
209 * configure.tgt: Likewise.
210 * emulparams/msp430all.sh: Likewise.
211 * Makefile.in: Regenerate.
213 2014-01-24 H.J. Lu <hongjiu.lu@intel.com>
216 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Improve
217 orphaned TLS section handling.
219 2014-01-24 Alan Modra <amodra@gmail.com>
221 * ldlang.c (lang_output_section_find_by_flags): Be careful to
222 test look->bfd_section->flags if available rather than
223 look->flags. Separate SEC_THREAD_LOCAL handling from
224 SEC_READONLY loop, and rewrite.
226 2014-01-22 Alan Modra <amodra@gmail.com>
228 * ldlang.c (asneeded_list_head, asneeded_list_tail): New vars.
229 (lang_init): Initialise them.
230 (lang_print_asneeded): New function.
231 (lang_process): Call lang_print_asneeded.
232 * ldlang.h (struct asneeded_minfo): New.
233 (asneeded_list_tail): Declare.
234 * ldmain.c (add_archive_element): Improve archive map heading.
235 * ldmisc.c (minfo): Stash --as-needed info.
237 2014-01-22 Alan Modra <amodra@gmail.com>
239 * ld.h (struct map_symbol_def): Move to..
241 * ldlang.c (print_assignment): Don't set expld.assign_name to dot.
243 2014-01-22 Alan Modra <amodra@gmail.com>
245 * ld.texinfo (Output Section Discarding): Mention assigning to dot
246 as a way of keeping otherwise empty sections.
247 * ldexp.c (is_dot, is_value, is_sym_value, is_dot_ne_0,
248 is_dot_plus_0, is_align_conditional): New predicates.
249 (exp_fold_tree_1): Set SEC_KEEP when assigning to dot inside an
250 output section, except for some special cases.
251 * scripttempl/elfmicroblaze.sc: Use canonical form to align at
252 end of .heap and .stack.
254 2014-01-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
256 * emulparams/aarch64linuxb.sh (ELF_INTERPRETER_NAME): Define.
258 2014-01-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
260 * emulparams/aarch64linux.sh (ELF_INTERPRETER_NAME): Define.
262 2014-01-20 Alan Modra <amodra@gmail.com>
264 * ldlang.h (struct lang_definedness_hash_entry): Add by_object and
265 by_script. Make iteration a single bit field.
266 (lang_track_definedness, lang_symbol_definition_iteration): Delete.
267 (lang_symbol_defined): Declare.
268 * ldlang.c (lang_statement_iteration): Expand comment a little.
269 (lang_init <lang_definedness_table>): Make it bigger.
270 (lang_track_definedness, lang_symbol_definition): Delete.
271 (lang_definedness_newfunc): Update.
272 (lang_symbol_defined): New function.
273 (lang_update_definedness): Create entries here. Do track whether
274 script definition of symbol is valid, even when also defined in
276 * ldexp.c (fold_name <DEFINED>): Update.
277 (fold_name <NAME>): Allow self-assignment for absolute symbols
278 defined in a linker script.
280 2014-01-20 Guy Martin <gmsoft@tuxicoman.be>
281 Alan Modra <amodra@gmail.com>
283 * ldlang.h (lang_output_section_get): Define.
284 * ldlang.c (lang_output_section_get): Likewise.
285 (init_os): Set the output_section userdata to the output
287 * emultempl/hppaelf.em: Use lang_output_section_get instead of
288 lang_output_section_find where applicable.
289 * emultempl/aarch64elf.em: Likewise.
290 * emultempl/aix.em: Likewise.
291 * emultempl/armelf.em: Likewise.
292 * emultempl/m68hc1xelf.em: Likewise.
293 * emultempl/metagelf.em: Likewise.
294 * emultempl/mipself.em: Likewise.
295 * emultempl/ppc64elf.em: Likewise.
296 * emultempl/spuelf.em: Likewise.
298 2014-01-17 Alan Modra <amodra@gmail.com>
300 * genscripts.sh (COMPILE_IN): Don't set if already set.
301 * emulparams/nds32elf.sh: Don't clear EMULATION_LIBPATH, set
303 * emulparams/nds32elf16m.sh: Likewise.
304 * emulparams/nds32elf_linux.sh: Likewise.
305 * emultempl/aix.em: Test COMPILE_IN value is "yes".
306 * emultempl/armcoff.em: Likewise.
307 * emultempl/elf32.em: Likewise.
308 * emultempl/generic.em: Likewise.
309 * emultempl/gld960.em: Likewise.
310 * emultempl/gld960c.em: Likewise.
311 * emultempl/linux.em: Likewise.
312 * emultempl/lnk960.em: Likewise.
313 * emultempl/m68kcoff.em: Likewise.
314 * emultempl/sunos.em: Likewise.
315 * emultempl/ticoff.em: Likewise.
317 2014-01-16 H.J. Lu <hongjiu.lu@intel.com>
320 * genscripts.sh: Don't search directory with LIBPATH_SUFFIX_SKIP
322 * emulparams/elf32_x86_64.sh (LIBPATH_SUFFIX_SKIP): Set to 64
323 for elf32_x86_64 emulation.
324 * emulparams/elf_i386.sh (LIBPATH_SUFFIX_SKIP): Set to 64
325 for elf_i386 emulation.
327 2014-01-16 Alan Modra <amodra@gmail.com>
329 * ld.h (fat_section_userdata_type, get_userdata): Move to..
330 * ldlang.h (input_section_userdata_type, get_userdata): ..here.
331 * ldlang.c (init_map_userdata): Delete. Fold into..
332 (sort_def_symbol): ..here. Don't attach input section userdata
333 to output sections or global bfd sections.
334 (lang_map): Don't pre-allocate input section userdata.
335 (init_os): Don't allocate userdata for output sections.
336 (print_all_symbols): Update.
338 2014-01-15 H.J. Lu <hongjiu.lu@intel.com>
340 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
341 Silence uninitialized warning on ehdr_start_save with older
344 2014-01-15 Alan Modra <amodra@gmail.com>
346 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
347 __ehdr_start before size_dynamic_sections and restore afterwards.
349 2014-01-10 Alan Modra <amodra@gmail.com>
354 * ldlang.c (lang_size_sections): Remove unneeded RELRO base
355 adjust. Tidy comments.
356 * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description.
358 2014-01-10 Hans-Peter Nilsson <hp@axis.com>
360 * emulparams/crislinux.sh (COMMONPAGESIZE): Define.
362 2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
367 * ldlang.c (lang_size_sections): Properly align RELRO base.
369 2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
371 * ldver.c (ldversion): Update copyright year to 2014.
373 For older changes see ChangeLog-2013
375 Copyright (C) 2014 Free Software Foundation, Inc.
377 Copying and distribution of this file, with or without modification,
378 are permitted in any medium without royalty provided the copyright
379 notice and this notice are preserved.
385 version-control: never