Add extern_protected_data and set it for x86
[external/binutils.git] / ld / ChangeLog
1 2015-04-10  Nick Clifton  <nickc@redhat.com>
2
3         PR binutils/18198
4         * ld.texinfo (--be8): Add a note about the interaction of this
5         option with the assembler's -EB option.
6
7 2015-04-10  Alan Modra  <amodra@gmail.com>
8
9         * configure.ac: Set elf_list_options etc. in proper case.
10         * configure: Regenerate.
11
12 2015-04-10  Alan Modra  <amodra@gmail.com>
13
14         PR ld/18223
15         * ldlang.c (lang_process): Add _init and _fini to gc_sym_list.
16
17 2015-04-09  H.J. Lu  <hongjiu.lu@intel.com>
18
19         * emulparams/elf_x86_64.sh (BNDPLT): Removed.
20         (PARSE_AND_LIST_OPTIONS): New.
21         (PARSE_AND_LIST_ARGS_CASE_Z): Likewise.
22         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Remove
23         BNDPLT check.  Handle PARSE_AND_LIST_ARGS_CASE_Z.
24         (gld${EMULATION_NAME}_list_options): Remove BNDPLT check.
25
26 2015-04-09  Nick Clifton  <nickc@redhat.com>
27
28         * po/fr.po: Updated French translation.
29
30 2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>
31
32         * configure.ac (elf_list_options): Set to TRUE for
33         --enable-targets=all.
34         (elf_shlib_list_options): Likewise.
35         (elf_plt_unwind_list_options): Likewise.
36         * configure: Regenerated.
37
38 2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>
39
40         * emulparams/elf32bmipn32-defs.sh: Skip empty EMULATION_NAME.
41
42 2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>
43
44         * Makefile.am (ELF_CLFAGS): New.
45         (AM_CFLAGS): Add $(ELF_CLFAGS).
46         * configure.ac (elf_list_options): New.  AC_SUBST.
47         (elf_shlib_list_options): Likewise.
48         (elf_plt_unwind_list_options): Likewise.
49         * lexsup.c (elf_shlib_list_options): New.
50         (elf_static_list_options): Likewise.
51         (elf_plt_unwind_list_options): Likewise.
52         (ld_list_options): Likewise.
53         (help): Call ld_list_options.
54         * Makefile.in: Regenerated.
55         * configure: Likewise.
56         * emulparams/plt_unwind.sh (PLT_UNWIND): New.
57         (PARSE_AND_LIST_OPTIONS): Removed.
58         * emultempl/elf32.em (gld_list_options): New.
59         (gld${EMULATION_NAME}_list_options): Define only if BNDPLT or
60         PARSE_AND_LIST_OPTIONS is defined.
61         (ld_${EMULATION_NAME}_emulation): Replace
62         gld${EMULATION_NAME}_list_options with ${gld_list_options.
63
64 2015-04-07  Alan Modra  <amodra@gmail.com>
65
66         PR ld/18176
67         * ldlang.c (lang_size_sections): Cast shift expression.
68
69 2015-04-07  Alan Modra  <amodra@gmail.com>
70
71         * emultempl/ppc32elf.em: Handle --no-pic-fixup.
72         (params): Init new field.
73         (ppc_before_allocation): Enable relaxation for pic_fixup.
74
75 2015-04-07  Nick Clifton  <nickc@redhat.com>
76
77         * ld.h (struct ld_config_type): Add new field: warn_orphan.
78         * ldlex.h (enum option_values): Add OPTION_WARN_ORPHAN and
79         OPTION_NO_WARN_ORPHAN.
80         * lexsup.c (ld_options): Add --warn-orphan and --no-warn-orphan.
81         (parse_args): Handle the new options.
82         * ldemul.c (ldemul_place_orphan): If requested, generate a warning
83         message when an orphan section is placed in the output file.
84         * ld.texinfo: Document the new option.
85         * NEWS: Mention the new feature.
86
87 2015-04-02  Andrew Turner <andrew@freebsd.org>
88
89         * Makefile.am: Add FreeBSD aarch64 files.
90         * Makefile.in: Regenerate.
91         * configure.tgt: Add aarch64-*-freebsd* target triple.
92         * emulparams/aarch64fbsd.sh: New file.
93         * emulparams/aarch64fbsdb.sh: New file.
94
95 2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>
96
97         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Work
98         around a GCC uninitialized warning bug fixed in GCC 4.6.
99
100 2015-04-01  Tejas Belagod  <tejas.belagod@arm.com>
101
102         * emultempl/aarch64elf.em
103         (aarch64_elf_create_output_section_statements): Add parameter in
104         bfd_elf${ELFSIZE}_aarch64_set_options call.
105         (OPTION_FIX_ERRATUM_843419): Define.
106         (PARSE_AND_LIST_LONGOPTS): Add fix-cortex-a53-843419.
107         (PARSE_AND_LIST_ARGS_CASES): Add OPTION_FIX_ERRATUM_843419.
108
109 2015-04-01  Chen Gang  <gang.chen.5i5j@gmail.com>
110
111         * emulparams/elf32_tic6x_le.sh: Skip OTHER_BSS_SECTIONS for
112         relocating operation.
113
114 2015-04-01  Alan Modra  <amodra@gmail.com>
115
116         PR ld/18176
117         * ldlang.c (lang_size_sections): When alignment of sections
118         results in relro base adjustment being too large, don't go lower
119         than the initial value.
120         * ldexp.c (fold_binary <DATA_SEGMENT_RELRO_END>): Comment.
121         * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Omit SEGMENT_SIZE
122         alignment when SEGMENT_SIZE is the same as MAXPAGESIZE.
123
124 2015-04-01  Alan Modra  <amodra@gmail.com>
125
126         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Don't
127         init ehdr_start_save.
128
129 2015-04-01  Alan Modra  <amodra@gmail.com>
130
131         * Makefile.am (eelf32ppcvxworks.c): Depend on ppc32elf.em and
132         ldemul-list.h.
133         (eelf32lppc.c, eelf32lppclinux.c, eelf32lppcnto.c, eelf32lppcsim.c,
134         eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppclinux.c, eelf32ppcnto.c,
135         eelf32ppcsim.c): Rearrange deps for consistency.
136         * Makefile.in: Regenerate.
137
138 2015-04-01  Ed Schouten  <ed@nuxi.nl>
139
140         * emultempl/elf32.em (gld*_before_allocation): Zero-initialize
141         the ehdr_start_save variable.
142
143 2015-03-31  Ed Schouten  <ed@nuxi.nl>
144
145         * Makefile.am (ALL_64_EMULATION_SOURCES): Add
146         eelf_x86_64_cloudabi.c.
147         (eelf_x86_64_cloudabi.c): New.
148         * configure.tgt (targ_emul): Set to elf_x86_64_cloudabi for
149         x86_64-*-cloudabi*.
150         * Makefile.in: Regenerated.
151         * emulparams/elf_x86_64_cloudabi.sh: New file.
152
153 2015-03-31  H.J. Lu  <hongjiu.lu@intel.com>
154
155         * configure.ac (AM_ZLIB): Removed.
156         * Makefile.in: Regenerated.
157         * config.in: Likewise.
158         * configure: Likewise.
159
160 2015-03-24  Marcus Shawcroft  <marcus.shawcroft@arm.com>
161
162         * emultempl/aarch64elf.em (_aarch64_add_stub_section): Set section
163         alignment to 2.
164
165 2015-03-23  Marcus Shawcroft  <marcus.shawcroft@arm.com>
166
167         * emultempl/aarch64elf.em
168         (elf${ELFSIZE}_aarch64_add_stub_section): Adjust layout.
169
170 2015-03-18  Chen Gang  <gang.chen.5i5j@gmail.com>
171
172         * ldmain.c (main): Use %F instead of %X for einfo.
173
174 2015-03-02  Alan Modra  <amodra@gmail.com>
175
176         * ld.texinfo (Options <-z nocopyreloc>): Rewrite.
177
178 2015-02-27  Nick Clifton  <nickc@redhat.com>
179
180         PR ld/17900
181         * ldlang.c (lang_set_flags): Allow exclamation mark to reverse the
182         sense of the following memory region attribute characters.
183
184 2015-02-27  Alan Modra  <amodra@gmail.com>
185
186         * Makefile.am (ALL_EMULATION_SOURCES): Sort new h8300 entries.
187         (eh8300elf_linux.c, eh8300helf_linux.c, eh8300self_linux.c,
188         eh8300sxelf_linux.c): Do not invoke genscripts here.
189         * Makefile.in: Regenerate.
190
191 2015-02-24  Nick Clifton  <nickc@redhat.com>
192
193         * Makefile.am (ev850.c): Add dependency upon
194         $(srcdir)/emultempl/v850elf.em.
195         (ev850_rh850.c): Likewise.
196         * Makefile.in: Regenerate.
197         * emultempl/v850elf.em: New file.
198         * emulparams/v850.sh (EXTRA_EM_FILE): Define.
199         * emulparams/v850_rh850.sh (EXTRA_EM_FILE): Define.
200         * scripttempl/v850.sc: Add .note.renesas section.
201         * scripttempl/v850_rh850.sc: Likewise.
202
203 2015-02-24  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
204
205         * scripttempl/avr.sc: Add new user_signatures region.  Define and
206         use symbols for all region lengths.
207         * scripttempl/avrtiny.sc: Define and use symbols for all region
208         lengths.
209
210 2015-01-21  Yoshinori Sato <ysato@users.sourceforge.jp>
211
212         * Makefile.am: (ALL_EMULATION_SOURCES): Add new emulations.
213         * Makefile.in: Regenerate.
214         * configure.tgt: Add h8300-*-linux
215         * emulparams/h8300elf_linux.sh: Add new emulation.
216         * emulparams/h8300helf_linux.sh: Likewise.
217         * emulparams/h8300self_linux.sh: Likewise.
218         * emulparams/h8300sxelf_linux.sh: Likewise.
219
220 2015-02-23  Nick Clifton  <nickc@redhat.com>
221
222         * lexsup.c (parse_args): Produce a more reasonable error message
223         when -ixxx or -rxxx is the last option on the linker command line.
224
225 2015-02-14  H.J. Lu  <hongjiu.lu@intel.com>
226
227         PR ld/17973
228         * testplug2.c (allsymbolsread_silent): New.
229         (set_register_hook): Handle allsymbolsreadsilent.
230         (onall_symbols_read): Skip a message if allsymbolsread_silent is
231         TRUE.
232
233 2015-02-14  Alan Modra  <amodra@gmail.com>
234
235         PR ld/17973
236         * ldlang.h (struct lang_input_statement_flags): Add lto_output.
237         * ldlang.c (lang_process): Don't set loading_lto_outputs.
238         * ldfile.c (ldfile_try_open_bfd): Transfer entry flags.lto_output
239         to bfd.
240         * plugin.c (add_input_file, add_input_library): Set flags.lto_output.
241
242 2015-02-13  H.J. Lu  <hongjiu.lu@intel.com>
243
244         * NEWS: Mention support for LLVM plugin.
245
246 2015-02-13  Alan Modra  <amodra@gmail.com>
247
248         * ld.texinfo (Options <--defsym>): Correct cross reference.
249
250 2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
251
252         * lexsup.c (ld_options): Add --[no-]map-whole-files for gold
253         option compatibility.
254
255 2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
256
257         * plugin.c (message): Output "warning:" for LDPL_WARNING. Output
258         "error:" for LDPL_FATAL and LDPL_ERROR.
259         * testplug2.c (parse_option): Handle fatal, error and warning.
260
261 2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
262
263         * testplug2.c (dump_tv_tag): Removed.
264         (onall_symbols_read): Return LDPS_ERR if the file descriptor isn't
265         closed.
266         * testplug3.c (dump_tv_tag): Removed.
267         (onclaim_file): Fix typo.
268
269 2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
270
271         PR ld/17878
272         * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug2.la and
273         libldtestplug3.la.
274         (libldtestplug2_la_SOURCES): New.
275         (libldtestplug2_la_CFLAGS): Likewise.
276         (libldtestplug2_la_LDFLAGS): Likewise.
277         (libldtestplug3_la_SOURCES): New.
278         (libldtestplug3_la_CFLAGS): Likewise.
279         (libldtestplug3_la_LDFLAGS): Likewise.
280         * Makefile.in: Regenerated.
281         * testplug2.c: New file.
282         * testplug3.c: Likewise.
283
284 2015-02-11  H.J. Lu  <hongjiu.lu@intel.com>
285
286         PR ld/17878
287         * plugin.c: Include ../bfd/plugin.h.
288         (plugin_get_ir_dummy_bfd): Call bfd_create with
289         link_info.output_bfd instead of srctemplate.  Copy BFD info
290         from srctemplate only if it doesn't use BFD plugin target
291         vector.
292         (plugin_load_plugins): Call register_ld_plugin_object_p with
293         (plugin_object_p)
294         (plugin_maybe_claim): Renamed to ...
295         (plugin_object_p): This.  Return dummy BFD target vector if
296         input is calimed by plugin library, otherwise return NULL.
297         Update plugin_format and plugin_dummy_bfd.
298         (plugin_maybe_claim): New.  Use plugin_object_p.
299
300 2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
301
302         * plugin.c (plugin_maybe_claim): Initialize use_mmap.
303
304 2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
305
306         * plugin.c (plugin_input_file_t): Add use_mmap.
307         (plugin_pagesize): New.
308         (get_view): Use plugin_pagesize.  Set use_mmap if mmap is used.
309         (plugin_load_plugins): Initialize plugin_pagesize.
310         (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
311         file.
312
313 2015-02-10  H.J. Lu  <hongjiu.lu@intel.com>
314
315         * plugin.c (get_view): Align offset passed to mmap.
316
317 2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>
318
319         * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
320         if plugin isn't active or there is no thing more to claim.
321
322 2015-02-08  H.J. Lu  <hongjiu.lu@intel.com>
323
324         * plugin.c (plugin_maybe_claim): Check format against bfd_object
325         directly.
326
327 2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>
328
329         * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
330         ibfd.
331
332 2015-02-07  H.J. Lu  <hongjiu.lu@intel.com>
333
334         * plugin.c: Include "libbfd.h".
335         (plugin_strdup): New.
336         (plugin_maybe_claim): Remove the argument of pointer to struct
337         ld_plugin_input_file.  Open and handle input entry.
338         * plugin.h (plugin_maybe_claim): Updated.
339         * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
340         without passing a pointer to struct ld_plugin_input_file.
341         * ldmain.c: Don't include "libbfd.h".
342         (add_archive_element): Call plugin_maybe_claim directly without
343         passing a pointer to struct ld_plugin_input_file.
344
345 2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
346
347         * ld.texinfo: Document -z text, -z notext and -z textoff.
348         * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
349         -z text, -z notext and -z textoff.
350
351 2015-02-06  H.J. Lu  <hongjiu.lu@intel.com>
352
353         * configure.ac: Add AC_FUNC_MMAP.
354         * config.in: Regenerated.
355         * configure: Likewise.
356         * plugin.c: Include <sys/mman.h>.
357         (MAP_FAILED): New.  Defined if not defined.
358         (PROT_READ): Likewise.
359         (MAP_PRIVATE): Likewise.
360         (view_buffer_t): New.
361         (plugin_input_file_t): Add view_buffer.
362         (get_view): Try mmap and cache the view buffer.
363         (plugin_maybe_claim): Initialize view_buffer.
364
365 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
366
367         * plugin.c (release_input_file): Set fd to -1 after closing it.
368         (plugin_maybe_claim): Close fd only if fd != -1.
369
370 2015-02-05  H.J. Lu  <hongjiu.lu@intel.com>
371
372         PR ld/17878
373         * plugin.c: Include <errno.h>.
374         (errno): New.  Declare if needed.
375         (plugin_input_file_t): New.
376         (get_input_file): Implemented.
377         (get_view): Likewise.
378         (release_input_file): Likewise.
379         (add_symbols): Updated.
380         (get_symbols): Likewise.
381         (plugin_maybe_claim): Allocate a plugin_input_file_t.  Close fd
382         only for a bfd_object input.
383
384 2015-02-02  Alan Modra  <amodra@gmail.com>
385
386         * emultempl/ppc64elf.em (toc_section_name): New var.
387         (ppc_after_open): Set it.
388         (ppc_before_allocation): Use it.
389         (gld${EMULATION_NAME}_after_allocation): Here too.
390
391 2015-01-29  H.J. Lu  <hongjiu.lu@intel.com>
392
393         * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
394         with link_info.lto_plugin_active.
395         * ldlang.c (lang_process): Likewise.
396         * ldmain.c (add_archive_element): Likewise.
397         * plugin.c (plugin_active_plugins_p): Removed.
398         * plugin.h (plugin_active_plugins_p): Likewise.
399
400 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
401
402         * plugin.h (plugin_get_ir_dummy_bfd): Removed.  Move comments to
403         ...
404         * plugin.c (plugin_get_ir_dummy_bfd): Here.  Make it static.
405
406 2015-01-28  H.J. Lu  <hongjiu.lu@intel.com>
407
408         PR ld/17878
409         * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
410         (get_view): New function.
411         (set_tv_header): Handle LDPT_GET_VIEW.
412         * testplug.c (tag_names): Add LDPT_GET_VIEW.
413         (tv_get_view): New.
414         (dump_tv_tag): Handle LDPT_GET_VIEW.
415         (parse_tv_tag): Likewise.
416
417 2015-01-28  Alan Modra  <amodra@gmail.com>
418
419         * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
420         * emultempl/ppc64elf.em (params): Init new field.
421         (ppc_after_open): New function.
422         (LDEMUL_AFTER_OPEN): Define.
423         * ldlang.c (lang_final): Whitespace fix.
424
425 2015-01-28  James Bowman  <james.bowman@ftdichip.com>
426
427         * Makefile.am: Add FT32 files.
428         * configure.tgt: Handle FT32 target.
429         * emulparams/elf32ft32.sh: New file.
430         * scripttempl/ft32.sc: New file.
431         * Makefile.in: Regenerate.
432
433 2015-01-28  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
434
435         PR 4643
436         * ldexp.c (fold_name): Fold LENGTH only after
437         lang_first_phase_enum.
438         * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
439         rightaway.
440         * ldlang.h (struct memory_region_struct): Add origin_exp and
441         length_exp fields.
442         * ldlang.c (lang_do_memory_regions): New.
443         (lang_memory_region_lookup): Initialize origin_exp and
444         length_exp fields.
445         (lang_process): Call lang_do_memory_regions.
446
447 2015-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>
448
449         * ldlang.c (print_assignment): Only evaluate the expression for a
450         PROVIDE'd assignment when the destination is being defined.
451         Display a special message for PROVIDE'd symbols that are not being
452         provided.
453
454 2015-01-20  Alan Modra  <amodra@gmail.com>
455
456         * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
457         (OTHER_BSS_SYMBOLS): ..this.
458         (OTHER_PLT_RELOC_SECTIONS): Don't define.
459         (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
460         (OTHER_READWRITE_SECTIONS): Don't define.  Move .toc1 to..
461         (OTHER_RELRO_SECTIONS_2): ..here.
462         * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
463
464 2015-01-20  Alan Modra  <amodra@gmail.com>
465
466         * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
467         (OTHER_READWRITE_SECTIONS): Move .branch_lt to..
468         (OTHER_RELRO_SECTIONS_2): ..here.
469         (DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
470         PLT_BEFORE_GOT): Define.
471         * scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
472         PLT_BEFORE_GOT combination.
473         (DATA_GOT, SDATA_GOT): Don't define if either is already defined.
474
475 2015-01-20  Alan Modra  <amodra@gmail.com>
476
477         * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
478         (OTHER_RELRO_SECTIONS_2): ..here, new define.
479         * scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.
480
481 2015-01-19  Alan Modra  <amodra@gmail.com>
482
483         PR ld/17615
484         * ldlang.c (lang_process): Run lang_common before lang_gc_sections.
485
486 2015-01-14  Jiong Wang  <jiong.wang@arm.com>
487
488         * ld-arm/elf32-reject.s: New testcase.
489         * ld-arm/elf32-reject.d: Likewise.
490         * ld-arm/elf32-reject-pie.s: Likewise.
491         * ld-arm/elf32-reject-pie.d: Likewise.
492         * ld-arm/arm-elf.exp: Run new testcases.
493         * ld-arm/ifunc-7.s: Delete f2/f4 test items.
494         * ld-arm/ifunc-7.rd: Likewise.
495         * ld-arm/ifunc-7.gd: Likewise.
496         * ld-arm/ifunc-7.dd: Likewise.
497         * ld-arm/ifunc-8.s: Likewise.
498         * ld-arm/ifunc-8.rd: Likewise.
499         * ld-arm/ifunc-8.gd: Likewise.
500         * ld-arm/ifunc-8.dd: Likewise.
501
502 2015-01-01  Alan Modra  <amodra@gmail.com>
503
504         * ldver.c (ldversion): Just print current year.
505
506 2015-01-01  Alan Modra  <amodra@gmail.com>
507
508         Update year range in copyright notice of all files.
509
510 For older changes see ChangeLog-2014
511 \f
512 Copyright (C) 2015 Free Software Foundation, Inc.
513
514 Copying and distribution of this file, with or without modification,
515 are permitted in any medium without royalty provided the copyright
516 notice and this notice are preserved.
517
518 Local Variables:
519 mode: change-log
520 left-margin: 8
521 fill-column: 74
522 version-control: never
523 End: