1 2015-04-11 H.J. Lu <hongjiu.lu@intel.com>
3 * plugin.c (plugin_load_plugins): Removed an extra ';'.
5 2015-04-10 Nick Clifton <nickc@redhat.com>
8 * ld.texinfo (--be8): Add a note about the interaction of this
9 option with the assembler's -EB option.
11 2015-04-10 Alan Modra <amodra@gmail.com>
13 * configure.ac: Set elf_list_options etc. in proper case.
14 * configure: Regenerate.
16 2015-04-10 Alan Modra <amodra@gmail.com>
19 * ldlang.c (lang_process): Add _init and _fini to gc_sym_list.
21 2015-04-09 H.J. Lu <hongjiu.lu@intel.com>
23 * emulparams/elf_x86_64.sh (BNDPLT): Removed.
24 (PARSE_AND_LIST_OPTIONS): New.
25 (PARSE_AND_LIST_ARGS_CASE_Z): Likewise.
26 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Remove
27 BNDPLT check. Handle PARSE_AND_LIST_ARGS_CASE_Z.
28 (gld${EMULATION_NAME}_list_options): Remove BNDPLT check.
30 2015-04-09 Nick Clifton <nickc@redhat.com>
32 * po/fr.po: Updated French translation.
34 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
36 * configure.ac (elf_list_options): Set to TRUE for
38 (elf_shlib_list_options): Likewise.
39 (elf_plt_unwind_list_options): Likewise.
40 * configure: Regenerated.
42 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
44 * emulparams/elf32bmipn32-defs.sh: Skip empty EMULATION_NAME.
46 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
48 * Makefile.am (ELF_CLFAGS): New.
49 (AM_CFLAGS): Add $(ELF_CLFAGS).
50 * configure.ac (elf_list_options): New. AC_SUBST.
51 (elf_shlib_list_options): Likewise.
52 (elf_plt_unwind_list_options): Likewise.
53 * lexsup.c (elf_shlib_list_options): New.
54 (elf_static_list_options): Likewise.
55 (elf_plt_unwind_list_options): Likewise.
56 (ld_list_options): Likewise.
57 (help): Call ld_list_options.
58 * Makefile.in: Regenerated.
59 * configure: Likewise.
60 * emulparams/plt_unwind.sh (PLT_UNWIND): New.
61 (PARSE_AND_LIST_OPTIONS): Removed.
62 * emultempl/elf32.em (gld_list_options): New.
63 (gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
64 PARSE_AND_LIST_OPTIONS is defined.
65 (ld_${EMULATION_NAME}_emulation): Replace
66 gld${EMULATION_NAME}_list_options with ${gld_list_options.
68 2015-04-07 Alan Modra <amodra@gmail.com>
71 * ldlang.c (lang_size_sections): Cast shift expression.
73 2015-04-07 Alan Modra <amodra@gmail.com>
75 * emultempl/ppc32elf.em: Handle --no-pic-fixup.
76 (params): Init new field.
77 (ppc_before_allocation): Enable relaxation for pic_fixup.
79 2015-04-07 Nick Clifton <nickc@redhat.com>
81 * ld.h (struct ld_config_type): Add new field: warn_orphan.
82 * ldlex.h (enum option_values): Add OPTION_WARN_ORPHAN and
83 OPTION_NO_WARN_ORPHAN.
84 * lexsup.c (ld_options): Add --warn-orphan and --no-warn-orphan.
85 (parse_args): Handle the new options.
86 * ldemul.c (ldemul_place_orphan): If requested, generate a warning
87 message when an orphan section is placed in the output file.
88 * ld.texinfo: Document the new option.
89 * NEWS: Mention the new feature.
91 2015-04-02 Andrew Turner <andrew@freebsd.org>
93 * Makefile.am: Add FreeBSD aarch64 files.
94 * Makefile.in: Regenerate.
95 * configure.tgt: Add aarch64-*-freebsd* target triple.
96 * emulparams/aarch64fbsd.sh: New file.
97 * emulparams/aarch64fbsdb.sh: New file.
99 2015-04-01 H.J. Lu <hongjiu.lu@intel.com>
101 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Work
102 around a GCC uninitialized warning bug fixed in GCC 4.6.
104 2015-04-01 Tejas Belagod <tejas.belagod@arm.com>
106 * emultempl/aarch64elf.em
107 (aarch64_elf_create_output_section_statements): Add parameter in
108 bfd_elf${ELFSIZE}_aarch64_set_options call.
109 (OPTION_FIX_ERRATUM_843419): Define.
110 (PARSE_AND_LIST_LONGOPTS): Add fix-cortex-a53-843419.
111 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_FIX_ERRATUM_843419.
113 2015-04-01 Chen Gang <gang.chen.5i5j@gmail.com>
115 * emulparams/elf32_tic6x_le.sh: Skip OTHER_BSS_SECTIONS for
116 relocating operation.
118 2015-04-01 Alan Modra <amodra@gmail.com>
121 * ldlang.c (lang_size_sections): When alignment of sections
122 results in relro base adjustment being too large, don't go lower
123 than the initial value.
124 * ldexp.c (fold_binary <DATA_SEGMENT_RELRO_END>): Comment.
125 * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Omit SEGMENT_SIZE
126 alignment when SEGMENT_SIZE is the same as MAXPAGESIZE.
128 2015-04-01 Alan Modra <amodra@gmail.com>
130 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Don't
131 init ehdr_start_save.
133 2015-04-01 Alan Modra <amodra@gmail.com>
135 * Makefile.am (eelf32ppcvxworks.c): Depend on ppc32elf.em and
137 (eelf32lppc.c, eelf32lppclinux.c, eelf32lppcnto.c, eelf32lppcsim.c,
138 eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppclinux.c, eelf32ppcnto.c,
139 eelf32ppcsim.c): Rearrange deps for consistency.
140 * Makefile.in: Regenerate.
142 2015-04-01 Ed Schouten <ed@nuxi.nl>
144 * emultempl/elf32.em (gld*_before_allocation): Zero-initialize
145 the ehdr_start_save variable.
147 2015-03-31 Ed Schouten <ed@nuxi.nl>
149 * Makefile.am (ALL_64_EMULATION_SOURCES): Add
150 eelf_x86_64_cloudabi.c.
151 (eelf_x86_64_cloudabi.c): New.
152 * configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for
154 * Makefile.in: Regenerated.
155 * emulparams/elf_x86_64_cloudabi.sh: New file.
157 2015-03-31 H.J. Lu <hongjiu.lu@intel.com>
159 * configure.ac (AM_ZLIB): Removed.
160 * Makefile.in: Regenerated.
161 * config.in: Likewise.
162 * configure: Likewise.
164 2015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
166 * emultempl/aarch64elf.em (_aarch64_add_stub_section): Set section
169 2015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
171 * emultempl/aarch64elf.em
172 (elf${ELFSIZE}_aarch64_add_stub_section): Adjust layout.
174 2015-03-18 Chen Gang <gang.chen.5i5j@gmail.com>
176 * ldmain.c (main): Use %F instead of %X for einfo.
178 2015-03-02 Alan Modra <amodra@gmail.com>
180 * ld.texinfo (Options <-z nocopyreloc>): Rewrite.
182 2015-02-27 Nick Clifton <nickc@redhat.com>
185 * ldlang.c (lang_set_flags): Allow exclamation mark to reverse the
186 sense of the following memory region attribute characters.
188 2015-02-27 Alan Modra <amodra@gmail.com>
190 * Makefile.am (ALL_EMULATION_SOURCES): Sort new h8300 entries.
191 (eh8300elf_linux.c, eh8300helf_linux.c, eh8300self_linux.c,
192 eh8300sxelf_linux.c): Do not invoke genscripts here.
193 * Makefile.in: Regenerate.
195 2015-02-24 Nick Clifton <nickc@redhat.com>
197 * Makefile.am (ev850.c): Add dependency upon
198 $(srcdir)/emultempl/v850elf.em.
199 (ev850_rh850.c): Likewise.
200 * Makefile.in: Regenerate.
201 * emultempl/v850elf.em: New file.
202 * emulparams/v850.sh (EXTRA_EM_FILE): Define.
203 * emulparams/v850_rh850.sh (EXTRA_EM_FILE): Define.
204 * scripttempl/v850.sc: Add .note.renesas section.
205 * scripttempl/v850_rh850.sc: Likewise.
207 2015-02-24 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
209 * scripttempl/avr.sc: Add new user_signatures region. Define and
210 use symbols for all region lengths.
211 * scripttempl/avrtiny.sc: Define and use symbols for all region
214 2015-01-21 Yoshinori Sato <ysato@users.sourceforge.jp>
216 * Makefile.am: (ALL_EMULATION_SOURCES): Add new emulations.
217 * Makefile.in: Regenerate.
218 * configure.tgt: Add h8300-*-linux
219 * emulparams/h8300elf_linux.sh: Add new emulation.
220 * emulparams/h8300helf_linux.sh: Likewise.
221 * emulparams/h8300self_linux.sh: Likewise.
222 * emulparams/h8300sxelf_linux.sh: Likewise.
224 2015-02-23 Nick Clifton <nickc@redhat.com>
226 * lexsup.c (parse_args): Produce a more reasonable error message
227 when -ixxx or -rxxx is the last option on the linker command line.
229 2015-02-14 H.J. Lu <hongjiu.lu@intel.com>
232 * testplug2.c (allsymbolsread_silent): New.
233 (set_register_hook): Handle allsymbolsreadsilent.
234 (onall_symbols_read): Skip a message if allsymbolsread_silent is
237 2015-02-14 Alan Modra <amodra@gmail.com>
240 * ldlang.h (struct lang_input_statement_flags): Add lto_output.
241 * ldlang.c (lang_process): Don't set loading_lto_outputs.
242 * ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
244 * plugin.c (add_input_file, add_input_library): Set flags.lto_output.
246 2015-02-13 H.J. Lu <hongjiu.lu@intel.com>
248 * NEWS: Mention support for LLVM plugin.
250 2015-02-13 Alan Modra <amodra@gmail.com>
252 * ld.texinfo (Options <--defsym>): Correct cross reference.
254 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
256 * lexsup.c (ld_options): Add --[no-]map-whole-files for gold
257 option compatibility.
259 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
261 * plugin.c (message): Output "warning:" for LDPL_WARNING. Output
262 "error:" for LDPL_FATAL and LDPL_ERROR.
263 * testplug2.c (parse_option): Handle fatal, error and warning.
265 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
267 * testplug2.c (dump_tv_tag): Removed.
268 (onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
270 * testplug3.c (dump_tv_tag): Removed.
271 (onclaim_file): Fix typo.
273 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
276 * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
278 (libldtestplug2_la_SOURCES): New.
279 (libldtestplug2_la_CFLAGS): Likewise.
280 (libldtestplug2_la_LDFLAGS): Likewise.
281 (libldtestplug3_la_SOURCES): New.
282 (libldtestplug3_la_CFLAGS): Likewise.
283 (libldtestplug3_la_LDFLAGS): Likewise.
284 * Makefile.in: Regenerated.
285 * testplug2.c: New file.
286 * testplug3.c: Likewise.
288 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
291 * plugin.c: Include ../bfd/plugin.h.
292 (plugin_get_ir_dummy_bfd): Call bfd_create with
293 link_info.output_bfd instead of srctemplate. Copy BFD info
294 from srctemplate only if it doesn't use BFD plugin target
296 (plugin_load_plugins): Call register_ld_plugin_object_p with
298 (plugin_maybe_claim): Renamed to ...
299 (plugin_object_p): This. Return dummy BFD target vector if
300 input is calimed by plugin library, otherwise return NULL.
301 Update plugin_format and plugin_dummy_bfd.
302 (plugin_maybe_claim): New. Use plugin_object_p.
304 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
306 * plugin.c (plugin_maybe_claim): Initialize use_mmap.
308 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
310 * plugin.c (plugin_input_file_t): Add use_mmap.
311 (plugin_pagesize): New.
312 (get_view): Use plugin_pagesize. Set use_mmap if mmap is used.
313 (plugin_load_plugins): Initialize plugin_pagesize.
314 (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
317 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
319 * plugin.c (get_view): Align offset passed to mmap.
321 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
323 * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
324 if plugin isn't active or there is no thing more to claim.
326 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
328 * plugin.c (plugin_maybe_claim): Check format against bfd_object
331 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
333 * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
336 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
338 * plugin.c: Include "libbfd.h".
339 (plugin_strdup): New.
340 (plugin_maybe_claim): Remove the argument of pointer to struct
341 ld_plugin_input_file. Open and handle input entry.
342 * plugin.h (plugin_maybe_claim): Updated.
343 * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
344 without passing a pointer to struct ld_plugin_input_file.
345 * ldmain.c: Don't include "libbfd.h".
346 (add_archive_element): Call plugin_maybe_claim directly without
347 passing a pointer to struct ld_plugin_input_file.
349 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
351 * ld.texinfo: Document -z text, -z notext and -z textoff.
352 * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
353 -z text, -z notext and -z textoff.
355 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
357 * configure.ac: Add AC_FUNC_MMAP.
358 * config.in: Regenerated.
359 * configure: Likewise.
360 * plugin.c: Include <sys/mman.h>.
361 (MAP_FAILED): New. Defined if not defined.
362 (PROT_READ): Likewise.
363 (MAP_PRIVATE): Likewise.
364 (view_buffer_t): New.
365 (plugin_input_file_t): Add view_buffer.
366 (get_view): Try mmap and cache the view buffer.
367 (plugin_maybe_claim): Initialize view_buffer.
369 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
371 * plugin.c (release_input_file): Set fd to -1 after closing it.
372 (plugin_maybe_claim): Close fd only if fd != -1.
374 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
377 * plugin.c: Include <errno.h>.
378 (errno): New. Declare if needed.
379 (plugin_input_file_t): New.
380 (get_input_file): Implemented.
381 (get_view): Likewise.
382 (release_input_file): Likewise.
383 (add_symbols): Updated.
384 (get_symbols): Likewise.
385 (plugin_maybe_claim): Allocate a plugin_input_file_t. Close fd
386 only for a bfd_object input.
388 2015-02-02 Alan Modra <amodra@gmail.com>
390 * emultempl/ppc64elf.em (toc_section_name): New var.
391 (ppc_after_open): Set it.
392 (ppc_before_allocation): Use it.
393 (gld${EMULATION_NAME}_after_allocation): Here too.
395 2015-01-29 H.J. Lu <hongjiu.lu@intel.com>
397 * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
398 with link_info.lto_plugin_active.
399 * ldlang.c (lang_process): Likewise.
400 * ldmain.c (add_archive_element): Likewise.
401 * plugin.c (plugin_active_plugins_p): Removed.
402 * plugin.h (plugin_active_plugins_p): Likewise.
404 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
406 * plugin.h (plugin_get_ir_dummy_bfd): Removed. Move comments to
408 * plugin.c (plugin_get_ir_dummy_bfd): Here. Make it static.
410 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
413 * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
414 (get_view): New function.
415 (set_tv_header): Handle LDPT_GET_VIEW.
416 * testplug.c (tag_names): Add LDPT_GET_VIEW.
418 (dump_tv_tag): Handle LDPT_GET_VIEW.
419 (parse_tv_tag): Likewise.
421 2015-01-28 Alan Modra <amodra@gmail.com>
423 * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
424 * emultempl/ppc64elf.em (params): Init new field.
425 (ppc_after_open): New function.
426 (LDEMUL_AFTER_OPEN): Define.
427 * ldlang.c (lang_final): Whitespace fix.
429 2015-01-28 James Bowman <james.bowman@ftdichip.com>
431 * Makefile.am: Add FT32 files.
432 * configure.tgt: Handle FT32 target.
433 * emulparams/elf32ft32.sh: New file.
434 * scripttempl/ft32.sc: New file.
435 * Makefile.in: Regenerate.
437 2015-01-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
440 * ldexp.c (fold_name): Fold LENGTH only after
441 lang_first_phase_enum.
442 * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
444 * ldlang.h (struct memory_region_struct): Add origin_exp and
446 * ldlang.c (lang_do_memory_regions): New.
447 (lang_memory_region_lookup): Initialize origin_exp and
449 (lang_process): Call lang_do_memory_regions.
451 2015-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
453 * ldlang.c (print_assignment): Only evaluate the expression for a
454 PROVIDE'd assignment when the destination is being defined.
455 Display a special message for PROVIDE'd symbols that are not being
458 2015-01-20 Alan Modra <amodra@gmail.com>
460 * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
461 (OTHER_BSS_SYMBOLS): ..this.
462 (OTHER_PLT_RELOC_SECTIONS): Don't define.
463 (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
464 (OTHER_READWRITE_SECTIONS): Don't define. Move .toc1 to..
465 (OTHER_RELRO_SECTIONS_2): ..here.
466 * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
468 2015-01-20 Alan Modra <amodra@gmail.com>
470 * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
471 (OTHER_READWRITE_SECTIONS): Move .branch_lt to..
472 (OTHER_RELRO_SECTIONS_2): ..here.
473 (DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
474 PLT_BEFORE_GOT): Define.
475 * scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
476 PLT_BEFORE_GOT combination.
477 (DATA_GOT, SDATA_GOT): Don't define if either is already defined.
479 2015-01-20 Alan Modra <amodra@gmail.com>
481 * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
482 (OTHER_RELRO_SECTIONS_2): ..here, new define.
483 * scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.
485 2015-01-19 Alan Modra <amodra@gmail.com>
488 * ldlang.c (lang_process): Run lang_common before lang_gc_sections.
490 2015-01-14 Jiong Wang <jiong.wang@arm.com>
492 * ld-arm/elf32-reject.s: New testcase.
493 * ld-arm/elf32-reject.d: Likewise.
494 * ld-arm/elf32-reject-pie.s: Likewise.
495 * ld-arm/elf32-reject-pie.d: Likewise.
496 * ld-arm/arm-elf.exp: Run new testcases.
497 * ld-arm/ifunc-7.s: Delete f2/f4 test items.
498 * ld-arm/ifunc-7.rd: Likewise.
499 * ld-arm/ifunc-7.gd: Likewise.
500 * ld-arm/ifunc-7.dd: Likewise.
501 * ld-arm/ifunc-8.s: Likewise.
502 * ld-arm/ifunc-8.rd: Likewise.
503 * ld-arm/ifunc-8.gd: Likewise.
504 * ld-arm/ifunc-8.dd: Likewise.
506 2015-01-01 Alan Modra <amodra@gmail.com>
508 * ldver.c (ldversion): Just print current year.
510 2015-01-01 Alan Modra <amodra@gmail.com>
512 Update year range in copyright notice of all files.
514 For older changes see ChangeLog-2014
516 Copyright (C) 2015 Free Software Foundation, Inc.
518 Copying and distribution of this file, with or without modification,
519 are permitted in any medium without royalty provided the copyright
520 notice and this notice are preserved.
526 version-control: never