1 2015-04-10 Nick Clifton <nickc@redhat.com>
4 * ld.texinfo (--be8): Add a note about the interaction of this
5 option with the assembler's -EB option.
7 2015-04-10 Alan Modra <amodra@gmail.com>
9 * configure.ac: Set elf_list_options etc. in proper case.
10 * configure: Regenerate.
12 2015-04-10 Alan Modra <amodra@gmail.com>
15 * ldlang.c (lang_process): Add _init and _fini to gc_sym_list.
17 2015-04-09 H.J. Lu <hongjiu.lu@intel.com>
19 * emulparams/elf_x86_64.sh (BNDPLT): Removed.
20 (PARSE_AND_LIST_OPTIONS): New.
21 (PARSE_AND_LIST_ARGS_CASE_Z): Likewise.
22 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Remove
23 BNDPLT check. Handle PARSE_AND_LIST_ARGS_CASE_Z.
24 (gld${EMULATION_NAME}_list_options): Remove BNDPLT check.
26 2015-04-09 Nick Clifton <nickc@redhat.com>
28 * po/fr.po: Updated French translation.
30 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
32 * configure.ac (elf_list_options): Set to TRUE for
34 (elf_shlib_list_options): Likewise.
35 (elf_plt_unwind_list_options): Likewise.
36 * configure: Regenerated.
38 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
40 * emulparams/elf32bmipn32-defs.sh: Skip empty EMULATION_NAME.
42 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
44 * Makefile.am (ELF_CLFAGS): New.
45 (AM_CFLAGS): Add $(ELF_CLFAGS).
46 * configure.ac (elf_list_options): New. AC_SUBST.
47 (elf_shlib_list_options): Likewise.
48 (elf_plt_unwind_list_options): Likewise.
49 * lexsup.c (elf_shlib_list_options): New.
50 (elf_static_list_options): Likewise.
51 (elf_plt_unwind_list_options): Likewise.
52 (ld_list_options): Likewise.
53 (help): Call ld_list_options.
54 * Makefile.in: Regenerated.
55 * configure: Likewise.
56 * emulparams/plt_unwind.sh (PLT_UNWIND): New.
57 (PARSE_AND_LIST_OPTIONS): Removed.
58 * emultempl/elf32.em (gld_list_options): New.
59 (gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
60 PARSE_AND_LIST_OPTIONS is defined.
61 (ld_${EMULATION_NAME}_emulation): Replace
62 gld${EMULATION_NAME}_list_options with ${gld_list_options.
64 2015-04-07 Alan Modra <amodra@gmail.com>
67 * ldlang.c (lang_size_sections): Cast shift expression.
69 2015-04-07 Alan Modra <amodra@gmail.com>
71 * emultempl/ppc32elf.em: Handle --no-pic-fixup.
72 (params): Init new field.
73 (ppc_before_allocation): Enable relaxation for pic_fixup.
75 2015-04-07 Nick Clifton <nickc@redhat.com>
77 * ld.h (struct ld_config_type): Add new field: warn_orphan.
78 * ldlex.h (enum option_values): Add OPTION_WARN_ORPHAN and
79 OPTION_NO_WARN_ORPHAN.
80 * lexsup.c (ld_options): Add --warn-orphan and --no-warn-orphan.
81 (parse_args): Handle the new options.
82 * ldemul.c (ldemul_place_orphan): If requested, generate a warning
83 message when an orphan section is placed in the output file.
84 * ld.texinfo: Document the new option.
85 * NEWS: Mention the new feature.
87 2015-04-02 Andrew Turner <andrew@freebsd.org>
89 * Makefile.am: Add FreeBSD aarch64 files.
90 * Makefile.in: Regenerate.
91 * configure.tgt: Add aarch64-*-freebsd* target triple.
92 * emulparams/aarch64fbsd.sh: New file.
93 * emulparams/aarch64fbsdb.sh: New file.
95 2015-04-01 H.J. Lu <hongjiu.lu@intel.com>
97 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Work
98 around a GCC uninitialized warning bug fixed in GCC 4.6.
100 2015-04-01 Tejas Belagod <tejas.belagod@arm.com>
102 * emultempl/aarch64elf.em
103 (aarch64_elf_create_output_section_statements): Add parameter in
104 bfd_elf${ELFSIZE}_aarch64_set_options call.
105 (OPTION_FIX_ERRATUM_843419): Define.
106 (PARSE_AND_LIST_LONGOPTS): Add fix-cortex-a53-843419.
107 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_FIX_ERRATUM_843419.
109 2015-04-01 Chen Gang <gang.chen.5i5j@gmail.com>
111 * emulparams/elf32_tic6x_le.sh: Skip OTHER_BSS_SECTIONS for
112 relocating operation.
114 2015-04-01 Alan Modra <amodra@gmail.com>
117 * ldlang.c (lang_size_sections): When alignment of sections
118 results in relro base adjustment being too large, don't go lower
119 than the initial value.
120 * ldexp.c (fold_binary <DATA_SEGMENT_RELRO_END>): Comment.
121 * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Omit SEGMENT_SIZE
122 alignment when SEGMENT_SIZE is the same as MAXPAGESIZE.
124 2015-04-01 Alan Modra <amodra@gmail.com>
126 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Don't
127 init ehdr_start_save.
129 2015-04-01 Alan Modra <amodra@gmail.com>
131 * Makefile.am (eelf32ppcvxworks.c): Depend on ppc32elf.em and
133 (eelf32lppc.c, eelf32lppclinux.c, eelf32lppcnto.c, eelf32lppcsim.c,
134 eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppclinux.c, eelf32ppcnto.c,
135 eelf32ppcsim.c): Rearrange deps for consistency.
136 * Makefile.in: Regenerate.
138 2015-04-01 Ed Schouten <ed@nuxi.nl>
140 * emultempl/elf32.em (gld*_before_allocation): Zero-initialize
141 the ehdr_start_save variable.
143 2015-03-31 Ed Schouten <ed@nuxi.nl>
145 * Makefile.am (ALL_64_EMULATION_SOURCES): Add
146 eelf_x86_64_cloudabi.c.
147 (eelf_x86_64_cloudabi.c): New.
148 * configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for
150 * Makefile.in: Regenerated.
151 * emulparams/elf_x86_64_cloudabi.sh: New file.
153 2015-03-31 H.J. Lu <hongjiu.lu@intel.com>
155 * configure.ac (AM_ZLIB): Removed.
156 * Makefile.in: Regenerated.
157 * config.in: Likewise.
158 * configure: Likewise.
160 2015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
162 * emultempl/aarch64elf.em (_aarch64_add_stub_section): Set section
165 2015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
167 * emultempl/aarch64elf.em
168 (elf${ELFSIZE}_aarch64_add_stub_section): Adjust layout.
170 2015-03-18 Chen Gang <gang.chen.5i5j@gmail.com>
172 * ldmain.c (main): Use %F instead of %X for einfo.
174 2015-03-02 Alan Modra <amodra@gmail.com>
176 * ld.texinfo (Options <-z nocopyreloc>): Rewrite.
178 2015-02-27 Nick Clifton <nickc@redhat.com>
181 * ldlang.c (lang_set_flags): Allow exclamation mark to reverse the
182 sense of the following memory region attribute characters.
184 2015-02-27 Alan Modra <amodra@gmail.com>
186 * Makefile.am (ALL_EMULATION_SOURCES): Sort new h8300 entries.
187 (eh8300elf_linux.c, eh8300helf_linux.c, eh8300self_linux.c,
188 eh8300sxelf_linux.c): Do not invoke genscripts here.
189 * Makefile.in: Regenerate.
191 2015-02-24 Nick Clifton <nickc@redhat.com>
193 * Makefile.am (ev850.c): Add dependency upon
194 $(srcdir)/emultempl/v850elf.em.
195 (ev850_rh850.c): Likewise.
196 * Makefile.in: Regenerate.
197 * emultempl/v850elf.em: New file.
198 * emulparams/v850.sh (EXTRA_EM_FILE): Define.
199 * emulparams/v850_rh850.sh (EXTRA_EM_FILE): Define.
200 * scripttempl/v850.sc: Add .note.renesas section.
201 * scripttempl/v850_rh850.sc: Likewise.
203 2015-02-24 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
205 * scripttempl/avr.sc: Add new user_signatures region. Define and
206 use symbols for all region lengths.
207 * scripttempl/avrtiny.sc: Define and use symbols for all region
210 2015-01-21 Yoshinori Sato <ysato@users.sourceforge.jp>
212 * Makefile.am: (ALL_EMULATION_SOURCES): Add new emulations.
213 * Makefile.in: Regenerate.
214 * configure.tgt: Add h8300-*-linux
215 * emulparams/h8300elf_linux.sh: Add new emulation.
216 * emulparams/h8300helf_linux.sh: Likewise.
217 * emulparams/h8300self_linux.sh: Likewise.
218 * emulparams/h8300sxelf_linux.sh: Likewise.
220 2015-02-23 Nick Clifton <nickc@redhat.com>
222 * lexsup.c (parse_args): Produce a more reasonable error message
223 when -ixxx or -rxxx is the last option on the linker command line.
225 2015-02-14 H.J. Lu <hongjiu.lu@intel.com>
228 * testplug2.c (allsymbolsread_silent): New.
229 (set_register_hook): Handle allsymbolsreadsilent.
230 (onall_symbols_read): Skip a message if allsymbolsread_silent is
233 2015-02-14 Alan Modra <amodra@gmail.com>
236 * ldlang.h (struct lang_input_statement_flags): Add lto_output.
237 * ldlang.c (lang_process): Don't set loading_lto_outputs.
238 * ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
240 * plugin.c (add_input_file, add_input_library): Set flags.lto_output.
242 2015-02-13 H.J. Lu <hongjiu.lu@intel.com>
244 * NEWS: Mention support for LLVM plugin.
246 2015-02-13 Alan Modra <amodra@gmail.com>
248 * ld.texinfo (Options <--defsym>): Correct cross reference.
250 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
252 * lexsup.c (ld_options): Add --[no-]map-whole-files for gold
253 option compatibility.
255 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
257 * plugin.c (message): Output "warning:" for LDPL_WARNING. Output
258 "error:" for LDPL_FATAL and LDPL_ERROR.
259 * testplug2.c (parse_option): Handle fatal, error and warning.
261 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
263 * testplug2.c (dump_tv_tag): Removed.
264 (onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
266 * testplug3.c (dump_tv_tag): Removed.
267 (onclaim_file): Fix typo.
269 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
272 * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
274 (libldtestplug2_la_SOURCES): New.
275 (libldtestplug2_la_CFLAGS): Likewise.
276 (libldtestplug2_la_LDFLAGS): Likewise.
277 (libldtestplug3_la_SOURCES): New.
278 (libldtestplug3_la_CFLAGS): Likewise.
279 (libldtestplug3_la_LDFLAGS): Likewise.
280 * Makefile.in: Regenerated.
281 * testplug2.c: New file.
282 * testplug3.c: Likewise.
284 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
287 * plugin.c: Include ../bfd/plugin.h.
288 (plugin_get_ir_dummy_bfd): Call bfd_create with
289 link_info.output_bfd instead of srctemplate. Copy BFD info
290 from srctemplate only if it doesn't use BFD plugin target
292 (plugin_load_plugins): Call register_ld_plugin_object_p with
294 (plugin_maybe_claim): Renamed to ...
295 (plugin_object_p): This. Return dummy BFD target vector if
296 input is calimed by plugin library, otherwise return NULL.
297 Update plugin_format and plugin_dummy_bfd.
298 (plugin_maybe_claim): New. Use plugin_object_p.
300 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
302 * plugin.c (plugin_maybe_claim): Initialize use_mmap.
304 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
306 * plugin.c (plugin_input_file_t): Add use_mmap.
307 (plugin_pagesize): New.
308 (get_view): Use plugin_pagesize. Set use_mmap if mmap is used.
309 (plugin_load_plugins): Initialize plugin_pagesize.
310 (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
313 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
315 * plugin.c (get_view): Align offset passed to mmap.
317 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
319 * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
320 if plugin isn't active or there is no thing more to claim.
322 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
324 * plugin.c (plugin_maybe_claim): Check format against bfd_object
327 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
329 * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
332 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
334 * plugin.c: Include "libbfd.h".
335 (plugin_strdup): New.
336 (plugin_maybe_claim): Remove the argument of pointer to struct
337 ld_plugin_input_file. Open and handle input entry.
338 * plugin.h (plugin_maybe_claim): Updated.
339 * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
340 without passing a pointer to struct ld_plugin_input_file.
341 * ldmain.c: Don't include "libbfd.h".
342 (add_archive_element): Call plugin_maybe_claim directly without
343 passing a pointer to struct ld_plugin_input_file.
345 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
347 * ld.texinfo: Document -z text, -z notext and -z textoff.
348 * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
349 -z text, -z notext and -z textoff.
351 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
353 * configure.ac: Add AC_FUNC_MMAP.
354 * config.in: Regenerated.
355 * configure: Likewise.
356 * plugin.c: Include <sys/mman.h>.
357 (MAP_FAILED): New. Defined if not defined.
358 (PROT_READ): Likewise.
359 (MAP_PRIVATE): Likewise.
360 (view_buffer_t): New.
361 (plugin_input_file_t): Add view_buffer.
362 (get_view): Try mmap and cache the view buffer.
363 (plugin_maybe_claim): Initialize view_buffer.
365 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
367 * plugin.c (release_input_file): Set fd to -1 after closing it.
368 (plugin_maybe_claim): Close fd only if fd != -1.
370 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
373 * plugin.c: Include <errno.h>.
374 (errno): New. Declare if needed.
375 (plugin_input_file_t): New.
376 (get_input_file): Implemented.
377 (get_view): Likewise.
378 (release_input_file): Likewise.
379 (add_symbols): Updated.
380 (get_symbols): Likewise.
381 (plugin_maybe_claim): Allocate a plugin_input_file_t. Close fd
382 only for a bfd_object input.
384 2015-02-02 Alan Modra <amodra@gmail.com>
386 * emultempl/ppc64elf.em (toc_section_name): New var.
387 (ppc_after_open): Set it.
388 (ppc_before_allocation): Use it.
389 (gld${EMULATION_NAME}_after_allocation): Here too.
391 2015-01-29 H.J. Lu <hongjiu.lu@intel.com>
393 * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
394 with link_info.lto_plugin_active.
395 * ldlang.c (lang_process): Likewise.
396 * ldmain.c (add_archive_element): Likewise.
397 * plugin.c (plugin_active_plugins_p): Removed.
398 * plugin.h (plugin_active_plugins_p): Likewise.
400 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
402 * plugin.h (plugin_get_ir_dummy_bfd): Removed. Move comments to
404 * plugin.c (plugin_get_ir_dummy_bfd): Here. Make it static.
406 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
409 * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
410 (get_view): New function.
411 (set_tv_header): Handle LDPT_GET_VIEW.
412 * testplug.c (tag_names): Add LDPT_GET_VIEW.
414 (dump_tv_tag): Handle LDPT_GET_VIEW.
415 (parse_tv_tag): Likewise.
417 2015-01-28 Alan Modra <amodra@gmail.com>
419 * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
420 * emultempl/ppc64elf.em (params): Init new field.
421 (ppc_after_open): New function.
422 (LDEMUL_AFTER_OPEN): Define.
423 * ldlang.c (lang_final): Whitespace fix.
425 2015-01-28 James Bowman <james.bowman@ftdichip.com>
427 * Makefile.am: Add FT32 files.
428 * configure.tgt: Handle FT32 target.
429 * emulparams/elf32ft32.sh: New file.
430 * scripttempl/ft32.sc: New file.
431 * Makefile.in: Regenerate.
433 2015-01-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
436 * ldexp.c (fold_name): Fold LENGTH only after
437 lang_first_phase_enum.
438 * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
440 * ldlang.h (struct memory_region_struct): Add origin_exp and
442 * ldlang.c (lang_do_memory_regions): New.
443 (lang_memory_region_lookup): Initialize origin_exp and
445 (lang_process): Call lang_do_memory_regions.
447 2015-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
449 * ldlang.c (print_assignment): Only evaluate the expression for a
450 PROVIDE'd assignment when the destination is being defined.
451 Display a special message for PROVIDE'd symbols that are not being
454 2015-01-20 Alan Modra <amodra@gmail.com>
456 * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
457 (OTHER_BSS_SYMBOLS): ..this.
458 (OTHER_PLT_RELOC_SECTIONS): Don't define.
459 (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
460 (OTHER_READWRITE_SECTIONS): Don't define. Move .toc1 to..
461 (OTHER_RELRO_SECTIONS_2): ..here.
462 * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
464 2015-01-20 Alan Modra <amodra@gmail.com>
466 * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
467 (OTHER_READWRITE_SECTIONS): Move .branch_lt to..
468 (OTHER_RELRO_SECTIONS_2): ..here.
469 (DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
470 PLT_BEFORE_GOT): Define.
471 * scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
472 PLT_BEFORE_GOT combination.
473 (DATA_GOT, SDATA_GOT): Don't define if either is already defined.
475 2015-01-20 Alan Modra <amodra@gmail.com>
477 * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
478 (OTHER_RELRO_SECTIONS_2): ..here, new define.
479 * scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.
481 2015-01-19 Alan Modra <amodra@gmail.com>
484 * ldlang.c (lang_process): Run lang_common before lang_gc_sections.
486 2015-01-14 Jiong Wang <jiong.wang@arm.com>
488 * ld-arm/elf32-reject.s: New testcase.
489 * ld-arm/elf32-reject.d: Likewise.
490 * ld-arm/elf32-reject-pie.s: Likewise.
491 * ld-arm/elf32-reject-pie.d: Likewise.
492 * ld-arm/arm-elf.exp: Run new testcases.
493 * ld-arm/ifunc-7.s: Delete f2/f4 test items.
494 * ld-arm/ifunc-7.rd: Likewise.
495 * ld-arm/ifunc-7.gd: Likewise.
496 * ld-arm/ifunc-7.dd: Likewise.
497 * ld-arm/ifunc-8.s: Likewise.
498 * ld-arm/ifunc-8.rd: Likewise.
499 * ld-arm/ifunc-8.gd: Likewise.
500 * ld-arm/ifunc-8.dd: Likewise.
502 2015-01-01 Alan Modra <amodra@gmail.com>
504 * ldver.c (ldversion): Just print current year.
506 2015-01-01 Alan Modra <amodra@gmail.com>
508 Update year range in copyright notice of all files.
510 For older changes see ChangeLog-2014
512 Copyright (C) 2015 Free Software Foundation, Inc.
514 Copying and distribution of this file, with or without modification,
515 are permitted in any medium without royalty provided the copyright
516 notice and this notice are preserved.
522 version-control: never