1 2015-09-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3 * emulparams/solaris2.sh (GENERATE_PIE_SCRIPT): Set to yes.
5 * emultempl/elf32.em: Include ldlex.h.
6 (gld${EMULATION_NAME}_handle_option) [GENERATE_PIE_SCRIPT]
7 <OPTION_PIE>: Set DF_1_PIE.
9 2015-09-22 Alan Modra <amodra@gmail.com>
11 * ld.texinfo: Put --dotsyms/--no-dotsyms on separate lines.
12 Ditto for --save-restore-funcs and --tls-get-addr-optimize.
14 2015-09-20 Rich Felker <dalias@libc.org>
16 * ld.texinfo (--no-dynamic-linker): Document.
17 * ldlex.h (enum option_values): Add OPTION_NO_DYNAMIC_LINKER.
18 * lexsup.c (ld_options, parse_args): Handle --no-dynamic-linker.
20 2015-09-18 Alan Modra <amodra@gmail.com>
22 * ld.texinfo: Document PowerPC64 --{no-,}save-restore-funcs.
24 2015-09-18 Alan Modra <amodra@gmail.com>
26 * emultempl/ppc64elf.em (params): Init tls_get_addr_opt field to -1.
27 (OPTION_TLS_GET_ADDR_OPT): Define.
28 (PARSE_AND_LIST_LONGOPTS): Handle --tls-get-addr-opt.
29 (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
30 * ld.texinfo: Document --tls-get-addr-optimize and
31 --no-tls-get-addr-optimize.
33 2015-09-18 Alan Modra <amodra@gmail.com>
36 * ldexp.h (struct ldexp_control): Add rel_from_abs.
37 (ldexp_finalize_syms): Declare.
38 * ldexp.c (new_rel_from_abs): Keep absolute for expressions
39 outside of output section statements. Set rel_from_abs.
40 (make_abs, exp_fold_tree, exp_fold_tree_no_dot): Clear rel_from_abs.
41 (struct definedness_hash_entry): Add final_sec, and comment.
42 (update_definedness): Set final_sec.
43 (set_sym_sections, ldexp_finalize_syms): New functions.
44 * ldlang.c (lang_process): Call ldexp_finalize_syms.
46 2015-09-10 Nick Clifton <nickc@redhat.com>
48 * po/zh_CN.po: Updated simplified Chinese translation.
50 2015-09-09 James Bowman <james.bowman@ftdichip.com>
52 * scripttempl/ft32.sc: default linker script RAM and
55 2015-09-09 Nick Clifton <nickc@redhat.com>
57 * po/zh_CN.po: Updated simplified Chinese translation.
59 2015-09-08 Nick Clifton <nickc@redhat.com>
61 * ld.texinfo (Source Code Reference): Extend description to
62 include an example using arrays.
64 2015-07-28 Andrew Burgess <andrew.burgess@embecosm.com>
66 * ld.h (enum orphan_handling_enum): New.
67 (ld_config_type): Remove warn_orphan, add orphan_handling.
68 * ldemul.c (ldemul_place_orphan): Remove warning about orphan
70 * ldlang.c (ldlang_place_orphan): New function.
71 (lang_place_orphans): Call ldlang_place_orphan.
72 * ldlex.h (enum option_values): Remove OPTION_WARN_ORPHAN and
73 OPTION_NO_WARN_ORPHAN, add OPTION_ORPHAN_HANDLING.
74 * lexsup.c (ld_options): Remove 'warn-orphan' and
75 'no-warn-orphan', add 'orphan-handling'.
76 (parse_args): Remove handling for OPTION_WARN_ORPHAN and
77 OPTION_NO_WARN_ORPHAN, add handling for OPTION_ORPHAN_HANDLING.
78 * NEWS: Replace text about --warn-orphan with --orphan-handling.
79 * ld.texinfo (Options): Remove --warn-orphan entry and add
80 entry on --orphan-handling.
81 (Orphan Sections): Add reference to relevant command line options.
83 2015-09-03 Nick Clifton <nickc@redhat.com>
85 * ld.texinfo (--build-id): Fix typo. The COFF/PE build-id section
86 is called .buildid not .build-id.
88 2015-09-03 Nick Clifton <nickc@redhat.com>
90 (Source Code Reference): Fix off-by-one typo in example of how to
91 use linker script symbols in C source code.
93 2015-08-19 Alan Modra <amodra@gmail.com>
95 * emultempl/aix.em: Don't set link_info.pic.
96 * emultempl/pe.em: Likewise.
97 * emultempl/pep.em: Likewise.
98 * emultempl/sunos.em: Likewise.
99 * lexsup.c (parse_args): Likewise. Set type_pie for -pie.
100 * plugin.c (set_tv_header <LDPT_LINKER_OUTPUT>): Simplify.
102 2015-08-18 H.J. Lu <hongjiu.lu@intel.com>
104 * ld/ldctor.c: Replace shared, executable, relocatable and pie
105 fields with bfd_link_executable, bfd_link_dll,
106 bfd_link_relocatable, bfd_link_pic and bfd_link_pie.
107 * ld/ldemul.c: Likewise.
108 * ld/ldfile.c: Likewise.
109 * ld/ldlang.c: Likewise.
110 * ld/ldmain.c: Likewise.
111 * ld/ldwrite.c: Likewise.
112 * ld/lexsup.c: Likewise.
113 * ld/pe-dll.c: Likewise.
114 * ld/plugin.c: Likewise.
115 * ld/emultempl/aarch64elf.em: Likewise.
116 * ld/emultempl/aix.em: Likewise.
117 * ld/emultempl/alphaelf.em: Likewise.
118 * ld/emultempl/armcoff.em: Likewise.
119 * ld/emultempl/armelf.em: Likewise.
120 * ld/emultempl/avrelf.em: Likewise.
121 * ld/emultempl/beos.em: Likewise.
122 * ld/emultempl/cr16elf.em: Likewise.
123 * ld/emultempl/elf-generic.em: Likewise.
124 * ld/emultempl/elf32.em: Likewise.
125 * ld/emultempl/genelf.em: Likewise.
126 * ld/emultempl/generic.em: Likewise.
127 * ld/emultempl/gld960.em: Likewise.
128 * ld/emultempl/gld960c.em: Likewise.
129 * ld/emultempl/hppaelf.em: Likewise.
130 * ld/emultempl/irix.em: Likewise.
131 * ld/emultempl/linux.em: Likewise.
132 * ld/emultempl/lnk960.em: Likewise.
133 * ld/emultempl/m68hc1xelf.em: Likewise.
134 * ld/emultempl/m68kcoff.em: Likewise.
135 * ld/emultempl/m68kelf.em: Likewise.
136 * ld/emultempl/metagelf.em: Likewise.
137 * ld/emultempl/mipself.em: Likewise.
138 * ld/emultempl/mmo.em: Likewise.
139 * ld/emultempl/msp430.em: Likewise.
140 * ld/emultempl/nds32elf.em: Likewise.
141 * ld/emultempl/needrelax.em: Likewise.
142 * ld/emultempl/nios2elf.em: Likewise.
143 * ld/emultempl/pe.em: Likewise.
144 * ld/emultempl/pep.em: Likewise.
145 * ld/emultempl/ppc32elf.em: Likewise.
146 * ld/emultempl/ppc64elf.em: Likewise.
147 * ld/emultempl/sh64elf.em: Likewise.
148 * ld/emultempl/solaris2.em: Likewise.
149 * ld/emultempl/spuelf.em: Likewise.
150 * ld/emultempl/sunos.em: Likewise.
151 * ld/emultempl/tic6xdsbt.em: Likewise.
152 * ld/emultempl/ticoff.em: Likewise.
153 * ld/emultempl/v850elf.em: Likewise.
154 * ld/emultempl/vms.em: Likewise.
155 * ld/emultempl/vxworks.em: Likewise.
157 2015-08-18 Alan Modra <amodra@gmail.com>
159 * ldexp.c (exp_fold_tree_1): Clear linker_def on symbol assignment.
161 2015-08-06 Alan Modra <amodra@gmail.com>
163 * ldexp.c (align_dot_val): Delete.
164 (fold_unary <ALIGN_K, NEXT>): Revert 2015-07-10 change.
165 (is_align_conditional): Revert 2015-07-20 change.
166 (exp_fold_tree_1): Likewise, but keep expanded comment.
167 * scripttempl/elf.sc (.ldata, .bss): Revert 2015-07-20 change.
168 * ld.texinfo (<ALIGN>): Correct description.
170 2015-08-04 Andrew Burgess <andrew.burgess@embecosm.com>
172 * ld.texinfo (Options): Document --require-defined option.
173 * ldlang.c (struct require_defined_symbol): New structure.
174 (require_defined_symbol_list): New variable.
175 (ldlang_add_require_defined): New function.
176 (ldlang_check_require_defined_symbols): New function.
177 (lang_process): Check required symbols are defined.
178 * ldlang.h (ldlang_add_require_defined): Declare.
179 * ldlex.h (enum option_values): Add OPTION_REQUIRE_DEFINED_SYMBOL.
180 * lexsup.c (ld_options): Add '--require-defined' entry.
181 (parse_args): Handle '--requre-defined' entry.
182 * NEWS: Mention new '--require-defined' option.
184 2015-08-03 Andrew Burgess <andrew.burgess@embecosm.com>
186 * ld.texinfo (MEMORY): Explain that multiple MEMORY commands are
189 2015-07-29 H.J. Lu <hongjiu.lu@intel.com>
191 * lexsup.c (parse_args): Don't set link_info.executable to
192 TRUE for link_info.relocatable.
194 2015-07-27 H.J. Lu <hongjiu.lu@intel.com>
196 * configure: Regenerated.
198 2015-07-24 Nick Clifton <nickc@redhat.com>
200 * emulparams/elf32rl78.sh (OTHER_SECTIONS): Provide a value for
201 the _-rl78_abs__ symbol.
203 2015-07-20 Alan Modra <amodra@gmail.com>
205 * emulparams/criself.sh (INIT_ADDR, FINI_ADDR): Define.
206 (INIT_START, FINI_START): Don't ALIGN.
207 * scriptempl/elf.sc (.init, .fini): Apply INIT_ADDR/FINI_ADDR.
209 2015-07-20 Alan Modra <amodra@gmail.com>
211 * scripttempl/elf.sc (.ldata, .bss): Align absolute value of dot.
212 * ldexp.c (is_align_conditional): Handle binary ALIGN.
213 (exp_fold_tree_1): Move code setting SEC_KEEP for assignments to
214 dot inside output sections. Handle absolute expressions.
216 2015-07-14 H.J. Lu <hongjiu.lu@intel.com>
218 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make
219 --compress-debug-sections=zlib the same as
220 --compress-debug-sections=zlib-gabi.
221 * ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi.
223 2015-07-14 Nick Clifton <nickc@redhat.com>
225 * ld.texinfo (Options): Add missing period after @xref.
227 2015-07-10 Alan Modra <amodra@gmail.com>
229 * ldexp.c (align_dot_val): New function.
230 (fold_unary <ALIGN_K, NEXT>): Use it.
232 2015-07-03 Kai Tietz <ktietz@redhat.com>
235 * scripttempl/pep.sc: Mark .idata*, .CRT*, .tls*,
236 .rsrc*, .init, .ctor*, .dtor*, .fini, .jcr,
237 .eh_frame, .pdata. .xdata, and .gcc_except_table sections
239 * scripttempl/pe.sc: Likewise.
240 * ld.texinfo: Document that --gc-sections has experimental support
241 for COFF and PE targets.
242 * NEWS: Mention experimental support.
244 2015-07-03 Alan Modra <amodra@gmail.com>
246 * Makefile.am (eelf32or1k.c, eelf32or1k_linux.c): Depend on ELF_DEPS.
247 * Makefile.in: Regenerate.
249 2015-06-28 H.J. Lu <hongjiu.lu@intel.com>
251 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option):
252 Replace COMPRESS_DEBUG_ZLIB with COMPRESS_DEBUG_GNU_ZLIB.
254 2015-06-26 H.J. Lu <hongjiu.lu@intel.com>
256 * emulparams/elf_iamcu.sh (COMPILE_IN): New.
258 2015-06-15 Nick Clifton <nickc@redhat.com>
261 * emultempl/pe.em (pe_find_data_imports): Generate an error if a
262 symbol name is too long to handle.
263 * emultempl/pep.em (pep_find_data_imports): Likewise.
265 2015-06-12 Tristan Gingold <gingold@adacore.com>
267 * NEWS: Mention new option.
268 * lexsup.c (parse_args): Handle --print-memory-usage.
269 (ld_options): Add --print-memory-usage.
270 * ldmain.c (main): Call lang_print_memory_usage.
271 * ldlex.h (enum option_values): Add OPTION_PRINT_MEMORY_USAGE.
272 * ldlang.h: Add prototype of lang_print_memory_usage.
273 * ldlang.c (lang_print_memory_size, lang_print_memory_usage): New
275 * ld.texinfo (Options): Document --print-memory-usage.
276 * ld.h (args_type): Add print_memory_usage field.
278 2015-06-08 Nick Clifton <nickc@redhat.com>
280 * po/fr.po: Updated French Translation.
282 2015-05-28 Catherine Moore <clm@codesourcery.com>
283 Paul Brook <paul@codesourcery.com>
285 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
286 Add Compact EH support.
287 * scripttempl/elf.sc: Handle .eh_frame_entry and .gnu_extab
290 2015-05-17 Chung-Lin Tang <cltang@codesourcery.com>
292 * configure.ac (AC_PROG_GREP): Check for grep program.
293 (elf_list_options,elf_shlib_list_options,elf_plt_unwind_list_options):
294 Enable ELF option printing for emulations containing
295 'TEMPLATE_NAME=elf32'.
296 * configure: Regenerate.
298 2015-05-14 Nick Clifton <nickc@redhat.com>
300 * ld.texinfo (ASSERT): Describe the interaction with PROVIDEd
303 2015-05-11 H.J. Lu <hongjiu.lu@intel.com>
305 * configure.tgt: Support i[3-7]86-*-elfiamcu target.
307 2015-05-11 H.J. Lu <hongjiu.lu@intel.com>
309 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf_iamcu.c.
311 * configure.tgt (targ_extra_emuls): Add elf_iamcu if elf_i386 is
313 * Makefile.in: Regenerated.
314 * emulparams/elf_iamcu.sh: New file.
316 2015-05-05 Nick Clifton <nickc@redhat.com>
318 * emulparams/msp430elf.sh (TEMPLATE_NAME): Change to msp430.
319 * scripttempl/msp430.sc (.text): Add .lower.text and .either.text.
320 (.data): Add .lower.data and .either.data.
321 (.bss): Add .lower.bss and .either.bss.
322 (.rodata): Add .lower.rodata and .either.rodata.
323 * emultempl/msp430.em: New file. Implements a new orphan
324 placement algorithm that divides sections between lower and upper
326 * Makefile.am (emsp430elf.c): Depend upon msp430.em.
327 *emsp430X.c): Likewise.
328 * Makefine.in: Regenerate.
330 2015-04-28 Andreas Schwab <schwab@linux-m68k.org>
333 * ldlex.l (INPUTLIST): Increment lineno on newline.
335 2015-04-24 Alan Modra <amodra@gmail.com>
337 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
338 Call gld${EMULATION_NAME}_map_segments regardless of need_laying_out.
340 2015-04-24 DJ Delorie <dj@redhat.com>
342 * Makefile.am (msp430): Rename primary emulation to msp430elf.
343 (emsp430.c): Rename to emsp430elf.c, update dependencies
344 (emsp430X.c): Update dependencies.
345 * Makefile.in: Likewise.
346 * configure.tgt (msp430-*-*): Rename primary emulation to msp430elf.
347 * emulparams/msp430.sh: Rename to msp430elf.sh.
348 * emulparams/msp430X.sh: Update.
350 2015-04-23 H.J. Lu <hongjiu.lu@intel.com>
353 * ldfile.c (ldfile_try_open_bfd): Set is_linker_input to 1.
355 2015-04-23 Alan Modra <amodra@gmail.com>
357 * emulparams/elf64ppc.sh (GOT): Align.
359 2015-04-22 Alan Modra <amodra@gmail.com>
361 * ldexp.h (struct ldexp_control): Delete dataseg.min_base. Add
362 data_seg.relro_offset.
363 * ldexp.c (fold_binary <DATA_SEGMENT_ALIGN>): Don't set min_base.
364 (fold_binary <DATA_SEGMENT_RELRO_END>): Do set relro_offset.
365 * ldlang.c (lang_size_sections): Rewrite code adjusting relro
366 segment base to line up last section on page boundary.
368 2015-04-15 H.J. Lu <hongjiu.lu@intel.com>
371 --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi].
373 2015-04-14 H.J. Lu <hongjiu.lu@intel.com>
375 * ld.texinfo: Document --compress-debug-sections=.
376 * ldmain.c (main): Set BFD_COMPRESS on output_bfd if
377 COMPRESS_DEBUG is set. Set BFD_COMPRESS_GABI on output_bfd
378 for COMPRESS_DEBUG_GABI_ZLIB.
379 * lexsup.c (elf_static_list_options): Add
380 --compress-debug-sections=.
381 * emultempl/elf32.em (OPTION_COMPRESS_DEBUG): New.
382 (xtra_long): Add "compress-debug-sections".
383 (gld${EMULATION_NAME}_handle_option): Handle
384 OPTION_COMPRESS_DEBUG.
386 2015-04-14 H.J. Lu <hongjiu.lu@intel.com>
389 * ld.texinfo: Document "-z noextern-protected-data".
390 * ldmain.c (main): Initialize link_info.extern_protected_data
392 * lexsup.c (elf_shlib_list_options): Add
393 "-z [no]extern-protected-data".
394 * emulparams/elf32_x86_64.sh: Source extern_protected_data.sh.
395 * emulparams/elf_i386.sh: Likewise.
396 * emulparams/elf_i386_be.sh: Likewise.
397 * emulparams/elf_i386_chaos.sh: Likewise.
398 * emulparams/elf_i386_ldso.sh: Likewise.
399 * emulparams/elf_i386_vxworks.sh: Likewise.
400 * emulparams/elf_k1om.sh: Likewise.
401 * emulparams/elf_l1om.sh: Likewise.
402 * emulparams/elf_x86_64.sh: Source extern_protected_data.sh.
403 (PARSE_AND_LIST_OPTIONS): Renamed to ...
404 (PARSE_AND_LIST_OPTIONS_BNDPLT): This.
405 (PARSE_AND_LIST_ARGS_CASE_Z): Renamed to ...
406 (PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT): This.
407 (PARSE_AND_LIST_OPTIONS): Append $PARSE_AND_LIST_OPTIONS_BNDPLT.
408 (PARSE_AND_LIST_ARGS_CASE_Z): Append
409 $PARSE_AND_LIST_ARGS_CASE_Z_BNDPLT.
410 * emulparams/extern_protected_data.sh: New file.
412 2015-04-11 H.J. Lu <hongjiu.lu@intel.com>
414 * plugin.c (plugin_load_plugins): Removed an extra ';'.
416 2015-04-10 Nick Clifton <nickc@redhat.com>
419 * ld.texinfo (--be8): Add a note about the interaction of this
420 option with the assembler's -EB option.
422 2015-04-10 Alan Modra <amodra@gmail.com>
424 * configure.ac: Set elf_list_options etc. in proper case.
425 * configure: Regenerate.
427 2015-04-10 Alan Modra <amodra@gmail.com>
430 * ldlang.c (lang_process): Add _init and _fini to gc_sym_list.
432 2015-04-09 H.J. Lu <hongjiu.lu@intel.com>
434 * emulparams/elf_x86_64.sh (BNDPLT): Removed.
435 (PARSE_AND_LIST_OPTIONS): New.
436 (PARSE_AND_LIST_ARGS_CASE_Z): Likewise.
437 * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Remove
438 BNDPLT check. Handle PARSE_AND_LIST_ARGS_CASE_Z.
439 (gld${EMULATION_NAME}_list_options): Remove BNDPLT check.
441 2015-04-09 Nick Clifton <nickc@redhat.com>
443 * po/fr.po: Updated French translation.
445 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
447 * configure.ac (elf_list_options): Set to TRUE for
448 --enable-targets=all.
449 (elf_shlib_list_options): Likewise.
450 (elf_plt_unwind_list_options): Likewise.
451 * configure: Regenerated.
453 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
455 * emulparams/elf32bmipn32-defs.sh: Skip empty EMULATION_NAME.
457 2015-04-08 H.J. Lu <hongjiu.lu@intel.com>
459 * Makefile.am (ELF_CLFAGS): New.
460 (AM_CFLAGS): Add $(ELF_CLFAGS).
461 * configure.ac (elf_list_options): New. AC_SUBST.
462 (elf_shlib_list_options): Likewise.
463 (elf_plt_unwind_list_options): Likewise.
464 * lexsup.c (elf_shlib_list_options): New.
465 (elf_static_list_options): Likewise.
466 (elf_plt_unwind_list_options): Likewise.
467 (ld_list_options): Likewise.
468 (help): Call ld_list_options.
469 * Makefile.in: Regenerated.
470 * configure: Likewise.
471 * emulparams/plt_unwind.sh (PLT_UNWIND): New.
472 (PARSE_AND_LIST_OPTIONS): Removed.
473 * emultempl/elf32.em (gld_list_options): New.
474 (gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
475 PARSE_AND_LIST_OPTIONS is defined.
476 (ld_${EMULATION_NAME}_emulation): Replace
477 gld${EMULATION_NAME}_list_options with ${gld_list_options.
479 2015-04-07 Alan Modra <amodra@gmail.com>
482 * ldlang.c (lang_size_sections): Cast shift expression.
484 2015-04-07 Alan Modra <amodra@gmail.com>
486 * emultempl/ppc32elf.em: Handle --no-pic-fixup.
487 (params): Init new field.
488 (ppc_before_allocation): Enable relaxation for pic_fixup.
490 2015-04-07 Nick Clifton <nickc@redhat.com>
492 * ld.h (struct ld_config_type): Add new field: warn_orphan.
493 * ldlex.h (enum option_values): Add OPTION_WARN_ORPHAN and
494 OPTION_NO_WARN_ORPHAN.
495 * lexsup.c (ld_options): Add --warn-orphan and --no-warn-orphan.
496 (parse_args): Handle the new options.
497 * ldemul.c (ldemul_place_orphan): If requested, generate a warning
498 message when an orphan section is placed in the output file.
499 * ld.texinfo: Document the new option.
500 * NEWS: Mention the new feature.
502 2015-04-02 Andrew Turner <andrew@freebsd.org>
504 * Makefile.am: Add FreeBSD aarch64 files.
505 * Makefile.in: Regenerate.
506 * configure.tgt: Add aarch64-*-freebsd* target triple.
507 * emulparams/aarch64fbsd.sh: New file.
508 * emulparams/aarch64fbsdb.sh: New file.
510 2015-04-01 H.J. Lu <hongjiu.lu@intel.com>
512 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Work
513 around a GCC uninitialized warning bug fixed in GCC 4.6.
515 2015-04-01 Tejas Belagod <tejas.belagod@arm.com>
517 * emultempl/aarch64elf.em
518 (aarch64_elf_create_output_section_statements): Add parameter in
519 bfd_elf${ELFSIZE}_aarch64_set_options call.
520 (OPTION_FIX_ERRATUM_843419): Define.
521 (PARSE_AND_LIST_LONGOPTS): Add fix-cortex-a53-843419.
522 (PARSE_AND_LIST_ARGS_CASES): Add OPTION_FIX_ERRATUM_843419.
524 2015-04-01 Chen Gang <gang.chen.5i5j@gmail.com>
526 * emulparams/elf32_tic6x_le.sh: Skip OTHER_BSS_SECTIONS for
527 relocating operation.
529 2015-04-01 Alan Modra <amodra@gmail.com>
532 * ldlang.c (lang_size_sections): When alignment of sections
533 results in relro base adjustment being too large, don't go lower
534 than the initial value.
535 * ldexp.c (fold_binary <DATA_SEGMENT_RELRO_END>): Comment.
536 * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Omit SEGMENT_SIZE
537 alignment when SEGMENT_SIZE is the same as MAXPAGESIZE.
539 2015-04-01 Alan Modra <amodra@gmail.com>
541 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Don't
542 init ehdr_start_save.
544 2015-04-01 Alan Modra <amodra@gmail.com>
546 * Makefile.am (eelf32ppcvxworks.c): Depend on ppc32elf.em and
548 (eelf32lppc.c, eelf32lppclinux.c, eelf32lppcnto.c, eelf32lppcsim.c,
549 eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppclinux.c, eelf32ppcnto.c,
550 eelf32ppcsim.c): Rearrange deps for consistency.
551 * Makefile.in: Regenerate.
553 2015-04-01 Ed Schouten <ed@nuxi.nl>
555 * emultempl/elf32.em (gld*_before_allocation): Zero-initialize
556 the ehdr_start_save variable.
558 2015-03-31 Ed Schouten <ed@nuxi.nl>
560 * Makefile.am (ALL_64_EMULATION_SOURCES): Add
561 eelf_x86_64_cloudabi.c.
562 (eelf_x86_64_cloudabi.c): New.
563 * configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for
565 * Makefile.in: Regenerated.
566 * emulparams/elf_x86_64_cloudabi.sh: New file.
568 2015-03-31 H.J. Lu <hongjiu.lu@intel.com>
570 * configure.ac (AM_ZLIB): Removed.
571 * Makefile.in: Regenerated.
572 * config.in: Likewise.
573 * configure: Likewise.
575 2015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
577 * emultempl/aarch64elf.em (_aarch64_add_stub_section): Set section
580 2015-03-23 Marcus Shawcroft <marcus.shawcroft@arm.com>
582 * emultempl/aarch64elf.em
583 (elf${ELFSIZE}_aarch64_add_stub_section): Adjust layout.
585 2015-03-18 Chen Gang <gang.chen.5i5j@gmail.com>
587 * ldmain.c (main): Use %F instead of %X for einfo.
589 2015-03-02 Alan Modra <amodra@gmail.com>
591 * ld.texinfo (Options <-z nocopyreloc>): Rewrite.
593 2015-02-27 Nick Clifton <nickc@redhat.com>
596 * ldlang.c (lang_set_flags): Allow exclamation mark to reverse the
597 sense of the following memory region attribute characters.
599 2015-02-27 Alan Modra <amodra@gmail.com>
601 * Makefile.am (ALL_EMULATION_SOURCES): Sort new h8300 entries.
602 (eh8300elf_linux.c, eh8300helf_linux.c, eh8300self_linux.c,
603 eh8300sxelf_linux.c): Do not invoke genscripts here.
604 * Makefile.in: Regenerate.
606 2015-02-24 Nick Clifton <nickc@redhat.com>
608 * Makefile.am (ev850.c): Add dependency upon
609 $(srcdir)/emultempl/v850elf.em.
610 (ev850_rh850.c): Likewise.
611 * Makefile.in: Regenerate.
612 * emultempl/v850elf.em: New file.
613 * emulparams/v850.sh (EXTRA_EM_FILE): Define.
614 * emulparams/v850_rh850.sh (EXTRA_EM_FILE): Define.
615 * scripttempl/v850.sc: Add .note.renesas section.
616 * scripttempl/v850_rh850.sc: Likewise.
618 2015-02-24 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
620 * scripttempl/avr.sc: Add new user_signatures region. Define and
621 use symbols for all region lengths.
622 * scripttempl/avrtiny.sc: Define and use symbols for all region
625 2015-01-21 Yoshinori Sato <ysato@users.sourceforge.jp>
627 * Makefile.am: (ALL_EMULATION_SOURCES): Add new emulations.
628 * Makefile.in: Regenerate.
629 * configure.tgt: Add h8300-*-linux
630 * emulparams/h8300elf_linux.sh: Add new emulation.
631 * emulparams/h8300helf_linux.sh: Likewise.
632 * emulparams/h8300self_linux.sh: Likewise.
633 * emulparams/h8300sxelf_linux.sh: Likewise.
635 2015-02-23 Nick Clifton <nickc@redhat.com>
637 * lexsup.c (parse_args): Produce a more reasonable error message
638 when -ixxx or -rxxx is the last option on the linker command line.
640 2015-02-14 H.J. Lu <hongjiu.lu@intel.com>
643 * testplug2.c (allsymbolsread_silent): New.
644 (set_register_hook): Handle allsymbolsreadsilent.
645 (onall_symbols_read): Skip a message if allsymbolsread_silent is
648 2015-02-14 Alan Modra <amodra@gmail.com>
651 * ldlang.h (struct lang_input_statement_flags): Add lto_output.
652 * ldlang.c (lang_process): Don't set loading_lto_outputs.
653 * ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
655 * plugin.c (add_input_file, add_input_library): Set flags.lto_output.
657 2015-02-13 H.J. Lu <hongjiu.lu@intel.com>
659 * NEWS: Mention support for LLVM plugin.
661 2015-02-13 Alan Modra <amodra@gmail.com>
663 * ld.texinfo (Options <--defsym>): Correct cross reference.
665 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
667 * lexsup.c (ld_options): Add --[no-]map-whole-files for gold
668 option compatibility.
670 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
672 * plugin.c (message): Output "warning:" for LDPL_WARNING. Output
673 "error:" for LDPL_FATAL and LDPL_ERROR.
674 * testplug2.c (parse_option): Handle fatal, error and warning.
676 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
678 * testplug2.c (dump_tv_tag): Removed.
679 (onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
681 * testplug3.c (dump_tv_tag): Removed.
682 (onclaim_file): Fix typo.
684 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
687 * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
689 (libldtestplug2_la_SOURCES): New.
690 (libldtestplug2_la_CFLAGS): Likewise.
691 (libldtestplug2_la_LDFLAGS): Likewise.
692 (libldtestplug3_la_SOURCES): New.
693 (libldtestplug3_la_CFLAGS): Likewise.
694 (libldtestplug3_la_LDFLAGS): Likewise.
695 * Makefile.in: Regenerated.
696 * testplug2.c: New file.
697 * testplug3.c: Likewise.
699 2015-02-11 H.J. Lu <hongjiu.lu@intel.com>
702 * plugin.c: Include ../bfd/plugin.h.
703 (plugin_get_ir_dummy_bfd): Call bfd_create with
704 link_info.output_bfd instead of srctemplate. Copy BFD info
705 from srctemplate only if it doesn't use BFD plugin target
707 (plugin_load_plugins): Call register_ld_plugin_object_p with
709 (plugin_maybe_claim): Renamed to ...
710 (plugin_object_p): This. Return dummy BFD target vector if
711 input is calimed by plugin library, otherwise return NULL.
712 Update plugin_format and plugin_dummy_bfd.
713 (plugin_maybe_claim): New. Use plugin_object_p.
715 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
717 * plugin.c (plugin_maybe_claim): Initialize use_mmap.
719 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
721 * plugin.c (plugin_input_file_t): Add use_mmap.
722 (plugin_pagesize): New.
723 (get_view): Use plugin_pagesize. Set use_mmap if mmap is used.
724 (plugin_load_plugins): Initialize plugin_pagesize.
725 (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
728 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
730 * plugin.c (get_view): Align offset passed to mmap.
732 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
734 * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
735 if plugin isn't active or there is no thing more to claim.
737 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
739 * plugin.c (plugin_maybe_claim): Check format against bfd_object
742 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
744 * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
747 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
749 * plugin.c: Include "libbfd.h".
750 (plugin_strdup): New.
751 (plugin_maybe_claim): Remove the argument of pointer to struct
752 ld_plugin_input_file. Open and handle input entry.
753 * plugin.h (plugin_maybe_claim): Updated.
754 * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
755 without passing a pointer to struct ld_plugin_input_file.
756 * ldmain.c: Don't include "libbfd.h".
757 (add_archive_element): Call plugin_maybe_claim directly without
758 passing a pointer to struct ld_plugin_input_file.
760 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
762 * ld.texinfo: Document -z text, -z notext and -z textoff.
763 * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
764 -z text, -z notext and -z textoff.
766 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
768 * configure.ac: Add AC_FUNC_MMAP.
769 * config.in: Regenerated.
770 * configure: Likewise.
771 * plugin.c: Include <sys/mman.h>.
772 (MAP_FAILED): New. Defined if not defined.
773 (PROT_READ): Likewise.
774 (MAP_PRIVATE): Likewise.
775 (view_buffer_t): New.
776 (plugin_input_file_t): Add view_buffer.
777 (get_view): Try mmap and cache the view buffer.
778 (plugin_maybe_claim): Initialize view_buffer.
780 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
782 * plugin.c (release_input_file): Set fd to -1 after closing it.
783 (plugin_maybe_claim): Close fd only if fd != -1.
785 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
788 * plugin.c: Include <errno.h>.
789 (errno): New. Declare if needed.
790 (plugin_input_file_t): New.
791 (get_input_file): Implemented.
792 (get_view): Likewise.
793 (release_input_file): Likewise.
794 (add_symbols): Updated.
795 (get_symbols): Likewise.
796 (plugin_maybe_claim): Allocate a plugin_input_file_t. Close fd
797 only for a bfd_object input.
799 2015-02-02 Alan Modra <amodra@gmail.com>
801 * emultempl/ppc64elf.em (toc_section_name): New var.
802 (ppc_after_open): Set it.
803 (ppc_before_allocation): Use it.
804 (gld${EMULATION_NAME}_after_allocation): Here too.
806 2015-01-29 H.J. Lu <hongjiu.lu@intel.com>
808 * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
809 with link_info.lto_plugin_active.
810 * ldlang.c (lang_process): Likewise.
811 * ldmain.c (add_archive_element): Likewise.
812 * plugin.c (plugin_active_plugins_p): Removed.
813 * plugin.h (plugin_active_plugins_p): Likewise.
815 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
817 * plugin.h (plugin_get_ir_dummy_bfd): Removed. Move comments to
819 * plugin.c (plugin_get_ir_dummy_bfd): Here. Make it static.
821 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
824 * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
825 (get_view): New function.
826 (set_tv_header): Handle LDPT_GET_VIEW.
827 * testplug.c (tag_names): Add LDPT_GET_VIEW.
829 (dump_tv_tag): Handle LDPT_GET_VIEW.
830 (parse_tv_tag): Likewise.
832 2015-01-28 Alan Modra <amodra@gmail.com>
834 * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
835 * emultempl/ppc64elf.em (params): Init new field.
836 (ppc_after_open): New function.
837 (LDEMUL_AFTER_OPEN): Define.
838 * ldlang.c (lang_final): Whitespace fix.
840 2015-01-28 James Bowman <james.bowman@ftdichip.com>
842 * Makefile.am: Add FT32 files.
843 * configure.tgt: Handle FT32 target.
844 * emulparams/elf32ft32.sh: New file.
845 * scripttempl/ft32.sc: New file.
846 * Makefile.in: Regenerate.
848 2015-01-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
851 * ldexp.c (fold_name): Fold LENGTH only after
852 lang_first_phase_enum.
853 * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
855 * ldlang.h (struct memory_region_struct): Add origin_exp and
857 * ldlang.c (lang_do_memory_regions): New.
858 (lang_memory_region_lookup): Initialize origin_exp and
860 (lang_process): Call lang_do_memory_regions.
862 2015-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
864 * ldlang.c (print_assignment): Only evaluate the expression for a
865 PROVIDE'd assignment when the destination is being defined.
866 Display a special message for PROVIDE'd symbols that are not being
869 2015-01-20 Alan Modra <amodra@gmail.com>
871 * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
872 (OTHER_BSS_SYMBOLS): ..this.
873 (OTHER_PLT_RELOC_SECTIONS): Don't define.
874 (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
875 (OTHER_READWRITE_SECTIONS): Don't define. Move .toc1 to..
876 (OTHER_RELRO_SECTIONS_2): ..here.
877 * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
879 2015-01-20 Alan Modra <amodra@gmail.com>
881 * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
882 (OTHER_READWRITE_SECTIONS): Move .branch_lt to..
883 (OTHER_RELRO_SECTIONS_2): ..here.
884 (DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
885 PLT_BEFORE_GOT): Define.
886 * scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
887 PLT_BEFORE_GOT combination.
888 (DATA_GOT, SDATA_GOT): Don't define if either is already defined.
890 2015-01-20 Alan Modra <amodra@gmail.com>
892 * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
893 (OTHER_RELRO_SECTIONS_2): ..here, new define.
894 * scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.
896 2015-01-19 Alan Modra <amodra@gmail.com>
899 * ldlang.c (lang_process): Run lang_common before lang_gc_sections.
901 2015-01-14 Jiong Wang <jiong.wang@arm.com>
903 * ld-arm/elf32-reject.s: New testcase.
904 * ld-arm/elf32-reject.d: Likewise.
905 * ld-arm/elf32-reject-pie.s: Likewise.
906 * ld-arm/elf32-reject-pie.d: Likewise.
907 * ld-arm/arm-elf.exp: Run new testcases.
908 * ld-arm/ifunc-7.s: Delete f2/f4 test items.
909 * ld-arm/ifunc-7.rd: Likewise.
910 * ld-arm/ifunc-7.gd: Likewise.
911 * ld-arm/ifunc-7.dd: Likewise.
912 * ld-arm/ifunc-8.s: Likewise.
913 * ld-arm/ifunc-8.rd: Likewise.
914 * ld-arm/ifunc-8.gd: Likewise.
915 * ld-arm/ifunc-8.dd: Likewise.
917 2015-01-01 Alan Modra <amodra@gmail.com>
919 * ldver.c (ldversion): Just print current year.
921 2015-01-01 Alan Modra <amodra@gmail.com>
923 Update year range in copyright notice of all files.
925 For older changes see ChangeLog-2014
927 Copyright (C) 2015 Free Software Foundation, Inc.
929 Copying and distribution of this file, with or without modification,
930 are permitted in any medium without royalty provided the copyright
931 notice and this notice are preserved.
937 version-control: never