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