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