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