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