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