[MicroBlaze] PIC data text relative
[external/binutils.git] / bfd / ChangeLog
1 2018-04-09 Andrew Sadek  <andrew.sadek.se@gmail.com>
2
3         Microblaze Target: PIC data text relative
4
5         * bfd/reloc.c (2 new BFD relocations):
6         BFD_RELOC_MICROBLAZE_64_TEXTPCREL &
7         BFD_RELOC_MICROBLAZE_64_TEXTPCREL
8         * bfd/bfd-in2.h: Regenerate
9         * bfd/libbfd.h: Regenerate
10         * bfd/elf32-microblaze.c (Handle new relocs): define 'HOWTO' of 3
11         new relocs and handle them in both relocate and relax functions.
12         (microblaze_elf_reloc_type_lookup): add mapping between for new
13         bfd relocs.
14         (microblaze_elf_relocate_section): Handle new relocs in case of
15         elf relocation.
16         (microblaze_elf_relax_section): Handle new relocs for elf relaxation.
17
18 2018-04-17  Nick Clifton  <nickc@redhat.com>
19
20         PR 23055
21         * aoutx.h (find_nearest_line): Check that the symbol name exists
22         and is long enough, before attempting to see if it is for a .o
23         file.
24         * hash.c (bfd_hash_hash): Add an assertion that the string is not
25         NULL.
26         * linker.c (bfd_link_hash_lookup): Fail if the table or string are
27         NULL.
28         (_bfd_generic_link_add_archive_symbols): Fail if an archive entry
29         has no name.
30
31         PR 23065
32         * dwarf2.c (concat_filename): Check for a NULL table pointer.
33
34 2018-04-16  Nick Clifton  <nickc@redhat.com>
35
36         PR 23061
37         * coffgen.c (coff_pointerize_aux): Check for an out of range
38         fixup.
39
40 2018-04-16  Alan Modra  <amodra@gmail.com>
41
42         * Makefile.am: Remove arm-epoc-pe support.
43         * coff-arm.c: Likewise.
44         * config.bfd: Likewise.
45         * configure.ac: Likewise.
46         * targets.c: Likewise.
47         * epoc-pe-arm.c: Delete.
48         * epoc-pei-arm.c: Delete.
49         * Makefile.in: Regenerate.
50         * configure: Regenerate.
51         * po/SRC-POTFILES.in: Regenerate.
52
53 2018-04-16  Alan Modra  <amodra@gmail.com>
54
55         * Makefile.am: Remove sparc-aout and sparc-coff support.
56         * config.bfd: Likewise.
57         * configure.ac: Likewise.
58         * targets.c: Likewise.
59         * aout-sparcle.c: Delete.
60         * aoutf1.h: Delete.
61         * cf-sparclynx.c: Delete.
62         * coff-sparc.c: Delete.
63         * demo64.c: Delete.
64         * sparclinux.c: Delete.
65         * sparclynx.c: Delete.
66         * sparcnetbsd.c: Delete.
67         * sunos.c: Delete.
68         * Makefile.in: Regenerate.
69         * configure: Regenerate.
70         * po/SRC-POTFILES.in: Regenerate.
71
72 2018-04-16  Alan Modra  <amodra@gmail.com>
73
74         * Makefile.am: Remove m68k-aout and m68k-coff support.
75         * aoutf1.h: Likewise.
76         * aoutx.h: Likewise.
77         * archive.c: Likewise.
78         * bfd-in.h: Likewise.
79         * bfd.c: Likewise.
80         * coffcode.h: Likewise.
81         * coffswap.h: Likewise.
82         * config.bfd: Likewise.
83         * configure.ac: Likewise.
84         * configure.host: Likewise.
85         * doc/bfd.texinfo: Likewise.
86         * doc/bfdint.texi: Likewise.
87         * freebsd.h: Likewise.
88         * gen-aout.c: Likewise.
89         * hpux-core.c: Likewise.
90         * libaout.h: Likewise.
91         * libbfd-in.h: Likewise.
92         * pdp11.c: Likewise.
93         * peicode.h: Likewise.
94         * riscix.c: Likewise.
95         * targets.c: Likewise.
96         * aout0.c: Delete.
97         * coff-apollo.c: Delete.
98         * coff-aux.c: Delete.
99         * coff-m68k.c: Delete.
100         * coff-svm68k.c: Delete.
101         * coff-u68k.c: Delete.
102         * hosts/delta68.h: Delete.
103         * hosts/hp300bsd.h: Delete.
104         * hosts/m68kaux.h: Delete.
105         * hosts/news.h: Delete.
106         * hp300bsd.c: Delete.
107         * hp300hpux.c: Delete.
108         * liboasys.h: Delete.
109         * m68k4knetbsd.c: Delete.
110         * m68klinux.c: Delete.
111         * m68knetbsd.c: Delete.
112         * oasys.c: Delete.
113         * versados.c: Delete.
114         * Makefile.in: Regenerate.
115         * bfd-in2.h: Regenerate.
116         * configure: Regenerate.
117         * libbfd.h: Regenerate.
118         * po/SRC-POTFILES.in: Regenerate.
119
120 2018-04-16  Alan Modra  <amodra@gmail.com>
121
122         * Makefile.am: Remove sh5 and sh64 support.
123         * archures.c: Likewise.
124         * config.bfd: Likewise.
125         * configure.ac: Likewise.
126         * cpu-sh.c: Likewise.
127         * elf32-sh-relocs.h: Likewise.
128         * elf32-sh.c: Likewise.
129         * targets.c: Likewise.
130         * elf32-sh64-com.c: Delete.
131         * elf32-sh64.c: Delete.
132         * elf32-sh64.h: Delete.
133         * elf64-sh64.c: Delete.
134         * Makefile.in: Regenerate.
135         * bfd-in2.h: Regenerate.
136         * configure: Regenerate.
137         * po/SRC-POTFILES.in: Regenerate.
138
139 2018-04-16  Alan Modra  <amodra@gmail.com>
140
141         * Makefile.am: Remove sh-symbianelf support.
142         * config.bfd: Likewise.
143         * configure.ac: Likewise.
144         * targets.c: Likewise.
145         * elf32-sh-symbian.c: Delete.
146         * Makefile.in: Regenerate.
147         * configure: Regenerate.
148         * po/SRC-POTFILES.in: Regenerate.
149
150 2018-04-16  Alan Modra  <amodra@gmail.com>
151
152         * Makefile.am: Remove vax-bsd and vax-ultrix support.
153         * config.bfd: Likewise.
154         * configure.ac: Likewise.
155         * targets.c: Likewise.
156         * vaxbsd.c: Delete.
157         * Makefile.in: Regenerate.
158         * configure: Regenerate.
159         * po/SRC-POTFILES.in: Regenerate.
160
161 2018-04-16  Alan Modra  <amodra@gmail.com>
162
163         * Makefile.am: Remove w65 support.
164         * archures.c: Likewise.
165         * coffcode.h: Likewise.
166         * config.bfd: Likewise.
167         * configure.ac: Likewise.
168         * targets.c: Likewise.
169         * coff-w65.c: Delete.
170         * cpu-w65.c: Delete.
171         * Makefile.in: Regenerate.
172         * bfd-in2.h: Regenerate.
173         * configure: Regenerate.
174         * po/SRC-POTFILES.in: Regenerate.
175
176 2018-04-16  Alan Modra  <amodra@gmail.com>
177
178         * Makefile.am: Remove we32k support.
179         * archures.c: Likewise.
180         * coffcode.h: Likewise.
181         * config.bfd: Likewise.
182         * configure.ac: Likewise.
183         * targets.c: Likewise.
184         * coff-we32k.c: Delete.
185         * cpu-we32k.c: Delete.
186         * Makefile.in: Regenerate.
187         * bfd-in2.h: Regenerate.
188         * configure: Regenerate.
189         * po/SRC-POTFILES.in: Regenerate.
190
191 2018-04-16  Alan Modra  <amodra@gmail.com>
192
193         * Makefile.am: Remove m88k support.
194         * aoutx.h: Likewise.
195         * archures.c: Likewise.
196         * coffcode.h: Likewise.
197         * coffswap.h: Likewise.
198         * config.bfd: Likewise.
199         * configure.ac: Likewise.
200         * cpu-ns32k.c: Likewise.
201         * elf32-nds32.c: Likewise.
202         * mach-o.c: Likewise.
203         * netbsd-core.c: Likewise.
204         * reloc.c: Likewise.
205         * targets.c: Likewise.
206         * coff-m88k.c: Delete.
207         * cpu-m88k.c: Delete.
208         * elf32-m88k.c: Delete.
209         * hosts/m88kmach3.h: Delete.
210         * m88kmach3.c: Delete.
211         * m88kopenbsd.c: Delete.
212         * Makefile.in: Regenerate.
213         * bfd-in2.h: Regenerate.
214         * configure: Regenerate.
215         * po/SRC-POTFILES.in: Regenerate.
216
217 2018-04-16  Alan Modra  <amodra@gmail.com>
218
219         * Makefile.am: Remove i370 support.
220         * archures.c: Likewise.
221         * config.bfd: Likewise.
222         * configure.ac: Likewise.
223         * targets.c: Likewise.
224         * cpu-i370.c: Delete.
225         * elf32-i370.c: Delete.
226         * Makefile.in: Regenerate.
227         * bfd-in2.h: Regenerate.
228         * configure: Regenerate.
229         * po/SRC-POTFILES.in: Regenerate.
230
231 2018-04-16  Alan Modra  <amodra@gmail.com>
232
233         * Makefile.am: Remove h8500 support.
234         * archures.c: Likewise.
235         * coffcode.h: Likewise.
236         * config.bfd: Likewise.
237         * configure.ac: Likewise.
238         * targets.c: Likewise.
239         * coff-h8500.c: Delete.
240         * cpu-h8500.c: Delete.
241         * Makefile.in: Regenerate.
242         * bfd-in2.h: Regenerate.
243         * configure: Regenerate.
244         * po/SRC-POTFILES.in: Regenerate.
245
246 2018-04-16  Alan Modra  <amodra@gmail.com>
247
248         * Makefile.am: Remove h8300-coff support.
249         * coffcode.h: Likewise.
250         * config.bfd: Likewise.
251         * configure.ac: Likewise.
252         * reloc16.c: Likewise.
253         * targets.c: Likewise.
254         * coff-h8300.c: Delete.
255         * Makefile.in: Regenerate.
256         * configure: Regenerate.
257         * po/SRC-POTFILES.in: Regenerate.
258
259 2018-04-16  Alan Modra  <amodra@gmail.com>
260
261         * Makefile.am: Remove IEEE 695 support.
262         * archures.c: Likewise.
263         * bfd.c: Likewise.
264         * config.bfd: Likewise.
265         * configure.ac: Likewise.
266         * doc/bfd.texinfo: Likewise.
267         * doc/bfdint.texi: Likewise.
268         * doc/bfdsumm.texi: Likewise.
269         * section.c: Likewise.
270         * targets.c: Likewise.
271         * ieee.c: Delete.
272         * libieee.h: Delete.
273         * Makefile.in: Regenerate.
274         * bfd-in2.h: Regenerate.
275         * configure: Regenerate.
276         * po/SRC-POTFILES.in: Regenerate.
277
278 2018-04-16  Alan Modra  <amodra@gmail.com>
279
280         * config.bfd: Remove tandem support.
281
282 2018-04-16  Alan Modra  <amodra@gmail.com>
283
284         * Makefile.am: Remove newsos3 support.
285         * aoutx.h: Likewise.
286         * config.bfd: Likewise.
287         * configure.ac: Likewise.
288         * targets.c: Likewise.
289         * newsos3.c: Delete.
290         * Makefile.in: Regenerate.
291         * configure: Regenerate.
292         * po/SRC-POTFILES.in: Regenerate.
293
294 2018-04-16  Alan Modra  <amodra@gmail.com>
295
296         * Makefile.am: Remove netware support.
297         * bfd-in.h: Likewise.
298         * bfd.c: Likewise.
299         * config.bfd: Likewise.
300         * configure.ac: Likewise.
301         * doc/bfdint.texi: Likewise.
302         * ecoff.c: Likewise.
303         * targets.c: Likewise.
304         * libnlm.h: Delete.
305         * nlm-target.h: Delete.
306         * nlm.c: Delete.
307         * nlm32-alpha.c: Delete.
308         * nlm32-i386.c: Delete.
309         * nlm32-ppc.c: Delete.
310         * nlm32-sparc.c: Delete.
311         * nlm32.c: Delete.
312         * nlm64.c: Delete.
313         * nlmcode.h: Delete.
314         * nlmswap.h: Delete.
315         * Makefile.in: Regenerate.
316         * bfd-in2.h: Regenerate.
317         * configure: Regenerate.
318         * po/SRC-POTFILES.in: Regenerate.
319
320 2018-04-16  Alan Modra  <amodra@gmail.com>
321
322         * archures.c: Remove tahoe support.
323         * config.bfd: Likewise.
324         * configure.ac: Likewise.
325         * hosts/tahoe.h: Delete.
326         * bfd-in2.h: Regenerate.
327         * configure: Regenerate.
328
329 2018-04-14  Alan Modra  <amodra@gmail.com>
330
331         * elf-bfd.h (struct elf_backend_data): Add relropagesize.
332         * elfxx-target.h (ELF_RELROPAGESIZE): Provide default and
333         sanity test.
334         (elfNN_bed): Init relropagesize.
335         * bfd.c (bfd_emul_get_commonpagesize): Add boolean param to
336         select relropagesize.
337         * elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
338         (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
339         (ELF_MINPAGESIZE): Don't define.
340         * elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
341         (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
342         * bfd-in2.h: Regenerate.
343
344 2018-04-14  Alan Modra  <amodra@gmail.com>
345
346         * elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend
347         on __QNXTARGET__ define.
348
349 2018-04-14  Alan Modra  <amodra@gmail.com>
350
351         * config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss*
352         to obsolete list.
353
354 2018-04-11  Alan Modra  <amodra@gmail.com>
355
356         * aout-adobe.c: Delete.
357         * bout.c: Delete.
358         * coff-i860.c: Delete.
359         * coff-i960.c: Delete.
360         * cpu-i860.c: Delete.
361         * cpu-i960.c: Delete.
362         * elf32-i860.c: Delete.
363         * elf32-i960.c: Delete.
364         * hosts/i860mach3.h: Delete.
365         * Makefile.am: Remove i860, i960, bout, and adobe support.
366         * archures.c: Remove i860 and i960 support.
367         * coffcode.h: Likewise.
368         * reloc.c: Likewise.
369         * aoutx.h: Comment updates.
370         * archive.c: Remove BOUT and i960 support.
371         * bfd.c: Remove BOUT support.
372         * coffswap.h: Remove i960 support.
373         * config.bfd: Remove i860, i960 and adobe targets.
374         * configure.ac: Remove adode, bout, i860, i960, icoff targets.
375         * targets.c: Likewise.
376         * ieee.c: Remove i960 support.
377         * mach-o.c: Remove i860 support.
378         * Makefile.in: Regenerate.
379         * bfd-in2.h: Regenerate.
380         * configure: Regenerate.
381         * libbfd.h: Regenerate.
382         * po/SRC-POTFILES.in: Regenerate.
383
384 2018-04-09  Maciej W. Rozycki  <macro@mips.com>
385
386         * elf64-mips.c (mips_elf64_write_rel): Handle a NULL BFD pointer
387         in the BFD symbol referred by the relocation.
388         (mips_elf64_write_rela): Likewise.
389
390 2018-04-09  Maciej W. Rozycki  <macro@mips.com>
391
392         * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Issue an
393         error for out-of-range `r_sym' values.
394
395 2018-04-09  Alan Modra  <amodra@gmail.com>
396
397         * elf64-ppc.c (struct _ppc64_elf_section_data): Add has_pltcall field.
398         (struct ppc_link_hash_table): Add can_convert_all_inline_plt.
399         (ppc64_elf_check_relocs): Set has_pltcall.
400         (ppc64_elf_adjust_dynamic_symbol): Discard some PLT entries.
401         (ppc64_elf_inline_plt): New function.
402         (ppc64_elf_size_dynamic_sections): Discard some PLT entries for locals.
403         * elf64-ppc.h (ppc64_elf_inline_plt): Declare.
404         * elf32-ppc.c (has_pltcall): Define.
405         (struct ppc_elf_link_hash_table): Add can_convert_all_inline_plt.
406         (ppc_elf_check_relocs): Set has_pltcall.
407         (ppc_elf_inline_plt): New function.
408         (ppc_elf_adjust_dynamic_symbol): Discard some PLT entries.
409         (ppc_elf_size_dynamic_sections): Likewise.
410         * elf32-ppc.h (ppc_elf_inline_plt): Declare.
411
412 2018-04-09  Alan Modra  <amodra@gmail.com>
413
414         * elf32-ppc.c (ppc_elf_howto_raw): Add PLTSEQ and PLTCALL howtos.
415         (is_plt_seq_reloc): New function.
416         (ppc_elf_check_relocs): Handle PLTSEQ and PLTCALL relocs.
417         (ppc_elf_tls_optimize): Handle inline plt call sequence.
418         (ppc_elf_relax_section): Handle PLTCALL reloc.
419         (ppc_elf_relocate_section): Nop out inline plt call sequence when
420         resolving locally.
421         * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_PLTSEQ and
422         R_PPC64_PLTCALL entries.  Comment R_PPC64_TOCSAVE.
423         (has_tls_get_addr_call): Correct comment.
424         (is_branch_reloc): Add PLTCALL.
425         (is_plt_seq_reloc): New function.
426         (ppc64_elf_check_relocs): Handle PLT16_LO_DS reloc.  Set
427         has_tls_reloc for R_PPC64_TLSGD and R_PPC64_TLSLD.  Create plt
428         entry for R_PPC64_PLTCALL.
429         (ppc64_elf_tls_optimize): Handle inline plt call sequence.
430         (ppc_type_of_stub): Handle PLTCALL reloc.
431         (toc_adjusting_stub_needed): Likewise.
432         (ppc64_elf_relocate_section): Set "can_plt_call" for PLTCALL
433         reloc insn.  Nop out inline plt call sequence when resolving
434         locally.  Handle __tls_get_addr inline plt call optimization.
435
436 2018-04-09  Alan Modra  <amodra@gmail.com>
437
438         * elf64-ppc.c (LOCAL_PLT_ENTRY_SIZE): Define.
439         (struct ppc_stub_hash_entry): Add symtype field.
440         (PLT_KEEP): Define.
441         (struct ppc_link_hash_table): Add pltlocal and relpltlocal.
442         (create_linkage_sections): Create pltlocal and relpltlocal.
443         (ppc64_elf_check_relocs): Allow PLT relocs on local symbols.
444         Set PLT_KEEP.
445         (ppc64_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
446         (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
447         (ppc64_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
448         Keep PLT entries for inline calls against locals.
449         (ppc_build_one_stub): Use pltlocal as appropriate.
450         (ppc_size_one_stub): Likewise.
451         (ppc64_elf_size_stubs): Set symtype.
452         (build_global_entry_stubs_and_plt): Init pltlocal and write
453         relpltlocal for globals.
454         (write_plt_relocs_for_local_syms): Likewise for local syms.
455         (ppc64_elf_relocate_section): Support PLT for local syms.
456         * elf32-ppc.c (PLT_KEEP): Define.
457         (struct ppc_elf_link_hash_table): Add pltlocal and relpltlocal.
458         (ppc_elf_create_glink): Create pltlocal and relpltlocal.
459         (ppc_elf_check_relocs): Allow PLT relocs on local symbols.
460         Set PLT_KEEP.  Adjust update_local_sym_info call.
461         (ppc_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls.
462         (allocate_dynrelocs): Allocate pltlocal and relpltlocal.
463         (ppc_elf_size_dynamic_sections): Size pltlocal and relpltlocal.
464         (ppc_elf_relocate_section): Support PLT16 relocs for local syms.
465         (write_global_sym_plt): Init pltlocal and write relpltlocal.
466         (ppc_finish_symbols): Likewise for locals.
467
468 2018-04-09  Alan Modra  <amodra@gmail.com>
469
470         * elf64-ppc.c (ppc_build_one_stub): Move output of PLT relocs
471         for local symbols to..
472         (write_plt_relocs_for_local_syms): ..here.  New function.
473         (ppc64_elf_finish_dynamic_symbol): Move output of PLT relocs for
474         global symbols to..
475         (build_global_entry_stubs_and_plt): ..here.  Rename from
476         build_global_entry_stubs.
477         (ppc64_elf_build_stubs): Always call build_global_entry_stubs_and_plt.
478         Call write_plt_relocs_for_local_syms.
479         * elf32-ppc.c (get_sym_h): New function.
480         (ppc_elf_relax_section): Use get_sym_h.
481         (ppc_elf_relocate_section): Move output of PLT relocs and glink
482         stubs for local symbols to..
483         (ppc_finish_symbols): ..here.  New function.
484         (ppc_elf_finish_dynamic_symbol): Move output of PLT relocs for
485         global syms to..
486         (write_global_sym_plt): ..here.  New function.
487         * elf32-ppc.h (ppc_elf_modify_segment_map): Delete attribute.
488         (ppc_finish_symbols): Declare.
489
490 2018-04-09  Alan Modra  <amodra@gmail.com>
491
492         * elf32-ppc.c (ppc_elf_check_relocs): Handle PLT16 relocs.
493         (ppc_elf_relocate_section): Likewise.
494         * elf64-ppc.c (ppc64_elf_check_relocs): Handle PLT16_LO_DS.
495         (ppc64_elf_relocate_section): Likewise.  Correct PLT16
496         resolution to plt entry relative to toc pointer.
497
498 2018-04-09  Alan Modra  <amodra@gmail.com>
499
500         * elf64-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
501         TLS_TPRELGD, TLS_EXPLICIT):  Renumber.  Test TLS_TLS throughout
502         file when other TLS flags are tested in a mask.
503         (TLS_MARK, NON_GOT): Define.
504         (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
505         (update_local_sym_info): Don't create got entry when NON_GOT.
506         (ppc64_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
507         Set TLS_MARK.
508         (get_tls_mask): Do toc lookup if tls_mask is just TLS_MARK.
509         (ppc64_elf_relocate_section): Likewise.
510         (ppc64_elf_tls_optimize): Don't attempt to optimize indirect
511         __tls_get_addr calls lacking a marker reloc.
512         * elf32-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL,
513         TLS_TPRELGD): Renumber.  Update comment.
514         (TLS_MARK, NON_GOT): Define.
515         (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well.
516         (update_local_sym_info): Don't create got entry when NON_GOT.
517         (ppc_elf_check_relocs): Pass NON_GOT with PLT_IFUNC.
518         Set TLS_MARK.
519         (ppc_elf_tls_optimize): Don't attempt to optimize indirect
520         __tls_get_addr calls lacking a marker reloc.
521
522 2018-04-06  H.J. Lu  <hongjiu.lu@intel.com>
523
524         * elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out
525         R_X86_64_converted_reloc_bit.
526
527 2018-04-05  H.J. Lu  <hongjiu.lu@intel.com>
528
529         PR gas/22318
530         * configure: Regenerated.
531
532 2018-04-05  Alan Modra  <amodra@gmail.com>
533
534         * elf-hppa.h (elf_hppa_info_to_howto): Init howto to NULL.
535         (elf_hppa_info_to_howto_rel): Likewise.
536
537 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
538
539         * elf-hppa.h (elf_hppa_info_to_howto): Also return
540         unsuccessfully for unimplemented relocations.
541         (elf_hppa_info_to_howto_rel): Likewise.
542
543 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
544
545         * elf32-i860.c (lookup_howto): Add `abfd' parameter.  Set the
546         `bfd_error_bad_value' error and call `_bfd_error_handler' on a
547         howto lookup failure.
548         (elf32_i860_reloc_type_lookup): Adjust `lookup_howto' call
549         accordingly.
550         (elf32_i860_info_to_howto_rela): Likewise.
551         (elf32_i860_relocate_splitn): Likewise.
552         (elf32_i860_relocate_pc16): Likewise.
553         (elf32_i860_relocate_pc26): Likewise.
554         (elf32_i860_relocate_section): Likewise.
555
556 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
557
558         * elf32-visium.c (visium_info_to_howto_rela): Correct the range
559         check for `visium_elf_howto_table' table access.
560
561 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
562
563         * elf32-iq2000.c (iq2000_info_to_howto_rela): Correct the range
564         check for `iq2000_elf_howto_table' table access.
565
566 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
567
568         * elf32-frv.c (frv_info_to_howto_rela): Correct the range check
569         for `elf32_frv_howto_table' table access.
570
571 2018-04-04  Maciej W. Rozycki  <macro@mips.com>
572
573         * elf32-mips.c (mips_elf32_rtype_to_howto): Also return
574         unsuccessfully for placeholder howtos.
575         * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
576         * elfn32-mips.c (mips_elf_n32_rtype_to_howto): Likewise.
577
578 2018-03-29  Maciej W. Rozycki  <macro@mips.com>
579
580         * elf32-mips.c (mips_info_to_howto_rel): Remove the calls to
581         `_bfd_error_handler' and to set the `bfd_error_bad_value' error.
582
583 2018-03-28  Maciej W. Rozycki  <macro@mips.com>
584
585         * elf-hppa.h (elf_hppa_info_to_howto_rel): Remove
586         ATTRIBUTE_UNUSED from `abfd'.
587
588 2018-03-28  Maciej W. Rozycki  <macro@mips.com>
589
590         * elf-hppa.h (elf_hppa_info_to_howto_rel): Correct
591         `_bfd_error_handler' call formatting.
592
593 2018-03-28  Maciej W. Rozycki  <macro@mips.com>
594
595         * elf32-mips.c (mips_info_to_howto_rel): Call
596         `mips_elf32_rtype_to_howto' directly rather than via
597         `->elf_backend_mips_rtype_to_howto'.
598
599 2018-03-28  Renlin Li  <renlin.li@arm.com>
600
601         PR ld/22970
602         * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC): Add cases for
603         BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
604         BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
605         BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
606         BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
607         BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
608         BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
609         BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
610         BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
611         (elfNN_aarch64_final_link_relocate): Support new relocations.
612         * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Support new
613         relocations.
614         (_bfd_aarch64_elf_resolve_relocation): Support new relocations.
615
616 2018-03-28  Renlin Li  <renlin.li@arm.com>
617
618         PR ld/22970
619         * reloc.c: Add BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12
620         BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC,
621         BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12,
622         BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC,
623         BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12,
624         BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC,
625         BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12,
626         BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC,
627         BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12,
628         BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC.
629         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add table entry for
630         TLSLE_LDST16_TPREL_LO12,
631         TLSLE_LDST16_TPREL_LO12_NC,
632         TLSLE_LDST32_TPREL_LO12,
633         TLSLE_LDST32_TPREL_LO12_NC,
634         TLSLE_LDST64_TPREL_LO12,
635         TLSLE_LDST64_TPREL_LO12_NC,
636         TLSLE_LDST8_TPREL_LO12,
637         TLSLE_LDST8_TPREL_LO12_NC.
638         * bfd-in2.h: Regenerated.
639         * libbfd.h: Regenerated.
640
641 2018-03-28  Eric Botcazou  <ebotcazou@adacore.com>
642
643         PR ld/22972
644         * elfxx-sparc.c (struct _bfd_sparc_elf_link_hash_entry): Add new flag
645         has_old_style_got_reloc.
646         (_bfd_sparc_elf_check_relocs) <GOT relocations>: Set it for old-style
647         relocations.  Fix a couple of long lines.
648         (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: Do not generate
649         a R_SPARC_NONE for the GOT slot if the symbol is also subject to old-style
650         GOT relocations.
651
652 2018-03-25  H.J. Lu  <hongjiu.lu@intel.com>
653
654         PR ld/23000
655         * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Add
656         ENDBR64 to the TLSDESC PLT entry.
657
658 2018-03-21  Alan Modra  <amodra@gmail.com>
659
660         * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Trim uninteresting
661         symbols.  Use size_t counts.  Delete redundant opd test.
662
663 2018-03-21  Alan Modra  <amodra@gmail.com>
664
665         * elf32-ppc.c (ppc_elf_tls_optimize): Delete locsyms.
666
667 2018-03-21  Alan Modra  <amodra@gmail.com>
668
669         * elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask
670         field unsigned.
671         (update_local_sym_info): Likewise for local_got_tls_masks.
672         (ppc_elf_tls_optimize): Likewise for lgot_masks.
673
674 2018-03-21  Alan Modra  <amodra@gmail.com>
675
676         * elf64-ppc.c (ppc_size_one_stub): Fix comment typo.
677         (ppc64_elf_layout_multitoc): Allocate relocs for tprel as we
678         do in size_dynamic_sections.
679
680 2018-03-21  Alan Modra  <amodra@gmail.com>
681
682         * elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1]
683         without first checking array bounds.
684         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
685
686 2018-03-20  H.J. Lu  <hongjiu.lu@intel.com>
687
688         PR ld/22983
689         * elflink.c (bfd_elf_link_mark_dynamic_symbol): Set
690         non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list.
691
692 2018-03-19  Nick Clifton  <nickc@redhat.com>
693
694         * po/es.po: Updated Spanish translation.
695
696 2018-03-15  Max Filippov  <jcmvbkbc@gmail.com>
697
698         * elf32-xtensa.c (xlate_map_entry): Change types of address
699         fields from 'unsigned' to 'bfd_vma'.
700         (xlate_offset_with_removed_text): Use struct xlate_map_entry as
701         the key argument to bsearch. Allow offsets past the end of a
702         section, use the last map entry for translation of such offsets.
703
704 2018-03-15  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
705
706         * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Removed.
707         Not support the target feature.
708         (nds32_elf_ex9_itb_base): Likewise.
709         (nds32_elf_ex9_import_table): Likewise.
710         (nds32_elf_ex9_finish): Likewise.
711         (nds32_elf_ex9_reloc_jmp): Likewise.
712         (nds32_elf_get_insn_with_reg): Likewise.
713         (nds32_get_local_syms): Likewise.
714         (nds32_elf_ex9_replace_instruction): Likewise.
715         (nds32_elf_ifc_calc): Likewise.
716         (nds32_elf_ifc_finish): Likewise.
717         (nds32_elf_ifc_replace): Likewise.
718         (nds32_elf_ifc_reloc): Likewise.
719
720 2018-03-14  Alan Modra  <amodra@gmail.com>
721
722         * elf64-ppc.c (sfpr_define): Adjust for stub_sec size having
723         sfpr size added before defining alias symbols.
724         (ppc64_elf_build_stubs): Add stub section padding before
725         copying sfpr contents and defining save/restore alias symbols.
726
727 2018-03-14  H.J. Lu  <hongjiu.lu@intel.com>
728
729         PR ld/20882
730         * elflink.c (elf_gc_mark_debug_section): Also check the local
731         debug definition section.
732
733 2018-03-13  Nick Clifton  <nickc@redhat.com>
734
735         PR 22113
736         * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean
737         function.  Add an end address parameter.  Check access of the data
738         pointer to make sure that they do not extend beyond the end
739         address.  Return FALSE if any check fails.  Add the end address
740         pointer to the ui structure.
741         (pex64_xdata_print_uwd_codes): Check accesses of the raw unwind
742         codes to make sure that they do not extend beyond the end address
743         pointer.  Print an error message and return immediately if any
744         check fails.
745
746 2018-03-09  Nick Clifton  <nickc@redhat.com>
747
748         * elf64-s390.c (elf_s390_relocate_section): Move check for
749         relocations against non-allocated sections to before the code that
750         handles ifunc relocations.
751         * elf32-s390.c (elf_s390_relocate_section): Likewise.
752         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
753         relocs against IFUNC symbols in non-allocated sections as relocs
754         against FUNC symbols.
755         * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
756
757 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
758
759         PR ld/22929
760         * elf32-i386.c (elf_i386_relocate_section): Treat relocation
761         against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as
762         relocation against FUNC symbol.
763         * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
764
765 2018-03-07  Renlin Li  <renlin.li@arm.com>
766
767         PR ld/20402
768         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute
769         symbol, and don't emit relocation in specific case.
770
771 2018-03-07  Alan Modra  <amodra@gmail.com>
772
773         * elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error.
774         (mips_elf64_slurp_one_reloc_table): Pass on error.
775
776 2018-03-03  James Cowgill  <james.cowgill@mips.com>
777             Maciej W. Rozycki  <macro@mips.com>
778
779         PR ld/21900
780         * elfxx-mips.c (mips_elf_calculate_relocation): Only return
781         after calling `undefined_symbol' hook if this is an error
782         condition.  Assume the value of 0 for the symbol requested
783         otherwise.
784
785 2018-03-02  Jim Wilson  <jimw@sifive.com>
786
787         PR 22903
788         * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch
789         and nop instead of 4.
790         (elfNN_arch64_build_stubs): Add nop after branch.  Increase size by
791         8 instead of 4.
792
793 2018-03-01  Jim Wilson  <jimw@sifive.com>
794
795         PR 22756
796         * elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use
797         else if instead of if.
798
799 2018-03-01  Alan Modra  <amodra@gmail.com>
800
801         * elf32-ft32.c (ft32_info_to_howto_rela): Correct range test.
802
803 2018-02-28  Alan Modra  <amodra@gmail.com>
804
805         PR 22887
806         * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
807
808 2018-02-28  Nick Clifton  <nickc@redhat.com>
809
810         PR 22895
811         PR 22893
812         * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
813         pointer.  Drop unused abfd parameter.  Check the size of the block
814         before initialising the data field.  Return the end pointer if the
815         size is invalid.
816         (read_attribute_value): Adjust invocations of read_n_bytes.
817
818         PR 22894
819         * dwarf1.c (parse_die): Check the length of form blocks before
820         advancing the data pointer.
821
822 2018-02-28  Alan Modra  <amodra@gmail.com>
823
824         PR 22887
825         * aoutx.h (translate_symbol_table): Print an error message and set
826         bfd_error on finding an invalid name string offset.
827
828 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
829
830         * config.in: Regenerated.
831         * configure: Likewise.
832         * configure.ac: Add --enable-separate-code.
833         (DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED.  Default
834         to 1 for Linux/x86 targets,
835         * elf64-x86-64.c (ELF_MAXPAGESIZE): Set to 0x1000 if
836         DEFAULT_LD_Z_SEPARATE_CODE is 1.
837
838 2018-02-27  Nick Clifton  <nickc@redhat.com>
839
840         * aout-cris.c (swap_ext_reloc_out): Standadize error/warning
841         message.
842         * elf-hppa.h (elf_hppa_info_to_howto_rel): Likewise.
843         * elf32-i386.c (elf_i386_reloc_type_lookup): Likewise.
844         * elf32-xtensa.c (elf_xtensa_reloc_type_lookup): Likewise.
845         * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Likewise.
846         * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
847         * elf64-sh64.c (sh_elf64_info_to_howto): Likewise.
848         * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
849         * elfxx-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Likewise.
850         * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
851
852         PR 22875
853         * elf-bfd.h (struct elf_backend_data): Change the return type of
854         the elf_info_to_howto and elf_info_to_howto_rel function pointers
855         to bfd_boolean.
856         * elfcode.h (elf_slurp_reloc_table_from_section): Check the return
857         value from the info_to_howto function and fail if that function
858         failed.
859         * elf32-h8300.c (elf32_h8_relocate_section): Check return value
860         from the info_to_howto function.
861         (elf32_h8_relax_section): Likewise.
862         * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
863         * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
864         * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
865         * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
866         * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
867         * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
868         * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise.
869         * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise.
870         * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
871         * elfnn-riscv.c (riscv_elf_check_relocs): Likewise.
872         (riscv_elf_relocate_section): Likewise.
873         * elf-hppa.h (elf_hppa_info_to_howto): Change return type to
874         bfd_boolean.  Issue an error message, set an error value and
875         return FALSE if the reloc is not recognized.
876         (elf_hppa_info_to_howto_rel): Likewise.
877         * elf-m10200.c (mn10200_info_to_howto): Likewise.
878         * elf-m10300.c (mn10300_info_to_howto): Likewise.
879         * elf.c (_bfd_elf_no_info_to_howto): Likewise.
880         * elf32-arc.c (arc_info_to_howto_rel): Likewise.
881         * elf32-arm.c (elf32_arm_info_to_howto): Likewise.
882         * elf32-avr.c (avr_info_to_howto_rela): Likewise.
883         * elf32-bfin.c (bfin_info_to_howto): Likewise.
884         * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
885         * elf32-cr16c.c (elf_cr16c_info_to_howto): Likewise.
886         * elf32-cris.c (elf_cr16c_info_to_howto_rel)
887         (cris_info_to_howto_rela): Likewise.
888         * elf32-crx.c (elf_crx_info_to_howto): Likewise.
889         * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
890         * elf32-d30v.c (d30v_info_to_howto_rel, d30v_info_to_howto_rela):
891         Likewise.
892         * elf32-dlx.c (dlx_rtype_to_howto, elf32_dlx_info_to_howto)
893         (elf32_dlx_info_to_howto_rel): Likewise.
894         * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
895         * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
896         * elf32-frv.c (frv_info_to_howto_rela)
897         (frvfdpic_info_to_howto_rel): Likewise.
898         * elf32-ft32.c (ft32_info_to_howto_rela): Likewise.
899         * elf32-gen.c (elf_generic_info_to_howto)
900         (elf_generic_info_to_howto_rel): Likewise.
901         * elf32-h8300.c (elf32_h8_info_to_howto)
902         (elf32_h8_info_to_howto_rel): Likewise.
903         * elf32-i370.c (i370_elf_info_to_howto): Likewise.
904         * elf32-i386.c (elf_i386_reloc_type_lookup)
905         (elf_i386_rtype_to_howto, elf_i386_info_to_howto_rel): Likewise.
906         * elf32-i860.c (lookup_howto, elf32_i860_info_to_howto_rela):
907         Likewise.
908         * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
909         * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
910         * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
911         * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
912         * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
913         * elf32-m32r.c (m32r_info_to_howto_rel, m32r_info_to_howto):
914         Likewise.
915         * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
916         * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
917         * elf32-m68k.c (rtype_to_howto): Likewise.
918         * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
919         * elf32-mep.c (mep_info_to_howto_rela): Likewise.
920         * elf32-metag.c (metag_info_to_howto_rela): Likewise.
921         * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
922         * elf32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
923         Likewise.
924         * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
925         * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
926         * elf32-mt.c (mt_info_to_howto_rela): Likewise.
927         * elf32-nds32.c (nds32_info_to_howto_rel, nds32_info_to_howto):
928         Likewise.
929         * elf32-nios2.c (nios2_elf32_info_to_howto): Likewise.
930         * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
931         * elf32-pj.c (pj_elf_info_to_howto): Likewise.
932         * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
933         * elf32-pru.c (pru_elf32_info_to_howto): Likewise.
934         * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
935         * elf32-rx.c (rx_info_to_howto_rela): Likewise.
936         * elf32-s390.c (elf_s390_info_to_howto): Likewise.
937         * elf32-score.c (s3_bfd_score_info_to_howto)
938         (_bfd_score_info_to_howto): Likewise.
939         * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
940         * elf32-sh.c (sh_elf_info_to_howto): Likewise.
941         * elf32-spu.c (spu_elf_info_to_howto): Likewise.
942         * elf32-tic6x.c (elf32_tic6x_info_to_howto)
943         (elf32_tic6x_info_to_howto_rel): Likewise.
944         * elf32-tilepro.c (tilepro_info_to_howto_rela): Likewise.
945         * elf32-v850.c (v850_elf_info_to_howto_rel)
946         (v850_elf_info_to_howto_rela, v800_elf_info_to_howto): Likewise.
947         * elf32-vax.c (rtype_to_howto): Likewise.
948         * elf32-visium.c (visium_info_to_howto_rela): Likewise.
949         * elf32-wasm32.c (elf32_wasm32_rtype_to_howto)
950         (elf32_wasm32_info_to_howto_rela): Likewise.
951         * elf32-xc16x.c (elf32_xc16x_info_to_howto): Likewise.
952         * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
953         * elf32-xstormy16.c (xstormy16_info_to_howto_rela): Likewise.
954         * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
955         * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
956         * elf64-gen.c (elf_generic_info_to_howto)
957         (elf_generic_info_to_howto_rel): Likewise.
958         * elf64-ia64-vms.c (elf64_ia64_info_to_howto): Likewise.
959         * elf64-mips.c (mips_elf64_info_to_howto_rela): Likewise.
960         * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
961         * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
962         * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise.
963         * elf64-sh64.c (elf_s390_info_to_howto, sh_elf64_info_to_howto):
964         Likewise.
965         * elf64-x86-64.c (elf_x86_64_info_to_howto): Likewise.
966         * elfn32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela):
967         Likewise.
968         * elfnn-aarch64.c (elfNN_aarch64_info_to_howto): Likewise.
969         * elfnn-ia64.c (elfNN_ia64_info_to_howto): Likewise.
970         * elfnn-riscv.c (riscv_info_to_howto_rela): Likewise.
971         * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise.
972         * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Likewise.
973         * elfxx-tilegx.c (tilegx_info_to_howto_rela): Likewise.
974         * elf32-score.h (s7_bfd_score_info_to_howto): Update prototype.
975         * elfxx-sparc.h (_bfd_sparc_elf_info_to_howto): Update prototype.
976         * elfxx-tilegx.h (tilegx_info_to_howto_rela): Update prototype.
977         * elfxx-target.h (elf_info_to_howto, elf_info_to_howto_rel):
978         Default to NULL.
979
980 2018-02-26  Jim Wilson  <jimw@sifive.com>
981             Stephan Schreiber <info@fs-driver.org>
982
983         PR 15904
984         * elfnn-ia64.c (elfNN_ia64_relax_section): After ia64_elf_relax_brl
985         call, set changed_contents and changed_relocs.  Likewise after
986         successful ia64_elf_relax_br call.
987
988 2018-02-26  Alan Modra  <amodra@gmail.com>
989
990         * elf.c (assign_file_positions_except_relocs): Don't segfault
991         when actual number of phdrs is less than allocated.  Delete
992         outdated comment.  Formatting.
993
994 2018-02-26  Alan Modra  <amodra@gmail.com>
995
996         * elf-m10300.c, * elf-s390-common.c, * elf32-arc.c, * elf32-cris.c,
997         * elf32-dlx.c, * elf32-frv.c, * elf32-i370.c, * elf32-lm32.c,
998         * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c,
999         * elf32-microblaze.c, * elf32-msp430.c, * elf32-nds32.c,
1000         * elf32-nios2.c, * elf32-or1k.c, * elf32-rl78.c, * elf32-rx.c,
1001         * elf32-score.c, * elf32-score7.c, * elf32-sh-symbian.c,
1002         * elf32-sh.c, * elf32-spu.c, * elf32-v850.c, * elf32-xtensa.c,
1003         * elf64-alpha.c, * elf64-ia64-vms.c, * elf64-mmix.c,
1004         * elf64-sh64.c, * elf64-sparc.c, * elfnn-ia64.c, * elfxx-tilegx.c,
1005         * mmo.c, * osf-core.c, * srec.c, * vms-alpha.c: Standardize
1006         error/warning messages.
1007
1008 2018-02-26  Alan Modra  <amodra@gmail.com>
1009
1010         * archive.c, * bfd.c, * linker.c, * reloc.c, * stabs.c,
1011         * syms.c: Standardize error/warning messages.
1012
1013 2018-02-26  Alan Modra  <amodra@gmail.com>
1014
1015         * aout-adobe.c, * aout-cris.c, * i386linux.c, * m68klinux.c,
1016         * sparclinux.c, * coff-alpha.c, * coff-arm.c, * coff-mcore.c,
1017         * coffcode.h, * coffgen.c, * cofflink.c, * ecoff.c, * pe-mips.c,
1018         * peXXigen.c, * peicode.h: Standardize error/warning messages.
1019
1020 2018-02-26  Alan Modra  <amodra@gmail.com>
1021
1022         * elf32-arm.c, * elfnn-aarch64.c: Standardize error/warning messages.
1023
1024 2018-02-26  Alan Modra  <amodra@gmail.com>
1025
1026         * elfxx-mips.c: Standardize error/warning messages.
1027
1028 2018-02-26  Alan Modra  <amodra@gmail.com>
1029
1030         * dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c,
1031         * elflink.c: Standardize error/warning messages.  Replace use of
1032         linker callback einfo with _bfd_error_handler when possible.
1033
1034 2018-02-26  Alan Modra  <amodra@gmail.com>
1035
1036         * aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c,
1037         * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c,
1038         * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c,
1039         * elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c,
1040         * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
1041         * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1042         * elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c,
1043         * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
1044         * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1045         * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1046         * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
1047         * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c,
1048         * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c,
1049         * elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
1050         * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1051         * elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c,
1052         * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
1053         * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
1054         * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
1055         * elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h,
1056         * elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize
1057         unrecognized/unsupported reloc message.
1058
1059 2018-02-26  Alan Modra  <amodra@gmail.com>
1060
1061         * elf32-ppc.c: Standardize error/warning messages.  Use
1062         _bfd_error_handler rather than einfo when einfo features not used.
1063         * elf64-ppc.c: Likewise.
1064
1065 2018-02-23  Alan Modra  <amodra@gmail.com>
1066
1067         PR 22881
1068         * elf.c (assign_file_positions_for_non_load_sections): Remove RELRO
1069         segment if no matching LOAD segment.
1070
1071 2018-02-23  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
1072
1073         * elf32-nds32.h: Define mask for ict_model.
1074
1075 2018-02-20  Jason Duerstock  <jason.duerstock@gmail.com>
1076
1077         * elfnn-ia64.c (elf_backend_can_gc_sections): Enable.
1078
1079 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
1080
1081         Revert
1082         2018-01-12  Vlad Ivanov  <vlad@ivanov.email>
1083
1084         * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
1085         .reginfo section has wrong size.
1086
1087 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
1088
1089         * elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set
1090         SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and
1091         `.MIPS.abiflags' sections.
1092         (_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo'
1093         section's end.
1094
1095 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
1096
1097         * section.c (SEC_FIXED_SIZE): New macro.
1098         * bfd-in2.h: Regenerate.
1099
1100 2018-02-19  Maciej W. Rozycki  <macro@mips.com>
1101
1102         * section.c (SEC_HAS_GOT_REF): Remove macro.
1103         * bfd-in2.h: Regenerate.
1104
1105 2018-02-19  Alan Modra  <amodra@gmail.com>
1106
1107         * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
1108         arguments.
1109         * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
1110         * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
1111         (_bfd_riscv_relax_pc): Likewise and fix typos.
1112         * libbfd-in.h (_bfd_error_handler): Add attribute printf.
1113         * libbfd.h: Regenerate.
1114
1115 2018-02-19  Alan Modra  <amodra@gmail.com>
1116
1117         * dwarf2.c (read_section): Don't use 'll' format modifier.
1118         (find_abstract_instance): Likewise.
1119         * elfcore.h (elf_core_file_p): Likewise.
1120
1121 2018-02-19  Alan Modra  <amodra@gmail.com>
1122
1123         * bfd-in.h: Include inttypes.h or if not available define
1124         PRId64, PRIu64 and PRIx64.
1125         * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
1126         modifier to print bfd_vma.
1127         * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
1128         * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
1129         * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
1130         * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
1131         * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
1132         * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
1133         * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
1134         * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
1135         * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
1136         * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1137         * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
1138         * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
1139         * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
1140         * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
1141         * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
1142         and cast input to uint64_t, and similarly for Ld and Lu.
1143         * bfd-in2.h: Regenerate.
1144
1145 2018-02-19  Alan Modra  <amodra@gmail.com>
1146
1147         * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
1148         * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
1149         * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
1150         * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
1151         * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
1152         * reloc.c: Replace use of %R and %T in format strings passed to
1153         einfo and friends by %pR and %pT.
1154
1155 2018-02-19  Alan Modra  <amodra@gmail.com>
1156
1157         * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
1158         of %A and %B.
1159         * aout-adobe.c: Update all messages using %A and %B.
1160         * aout-cris.c: Likewise.
1161         * aoutx.h: Likewise.
1162         * archive.c: Likewise.
1163         * binary.c: Likewise.
1164         * cache.c: Likewise.
1165         * coff-alpha.c: Likewise.
1166         * coff-arm.c: Likewise.
1167         * coff-i860.c: Likewise.
1168         * coff-mcore.c: Likewise.
1169         * coff-ppc.c: Likewise.
1170         * coff-rs6000.c: Likewise.
1171         * coff-sh.c: Likewise.
1172         * coff-tic4x.c: Likewise.
1173         * coff-tic54x.c: Likewise.
1174         * coff-tic80.c: Likewise.
1175         * coff64-rs6000.c: Likewise.
1176         * coffcode.h: Likewise.
1177         * coffgen.c: Likewise.
1178         * cofflink.c: Likewise.
1179         * coffswap.h: Likewise.
1180         * compress.c: Likewise.
1181         * cpu-arm.c: Likewise.
1182         * ecoff.c: Likewise.
1183         * elf-attrs.c: Likewise.
1184         * elf-eh-frame.c: Likewise.
1185         * elf-ifunc.c: Likewise.
1186         * elf-m10300.c: Likewise.
1187         * elf-properties.c: Likewise.
1188         * elf-s390-common.c: Likewise.
1189         * elf.c: Likewise.
1190         * elf32-arc.c: Likewise.
1191         * elf32-arm.c: Likewise.
1192         * elf32-avr.c: Likewise.
1193         * elf32-bfin.c: Likewise.
1194         * elf32-cr16.c: Likewise.
1195         * elf32-cr16c.c: Likewise.
1196         * elf32-cris.c: Likewise.
1197         * elf32-crx.c: Likewise.
1198         * elf32-d10v.c: Likewise.
1199         * elf32-d30v.c: Likewise.
1200         * elf32-epiphany.c: Likewise.
1201         * elf32-fr30.c: Likewise.
1202         * elf32-frv.c: Likewise.
1203         * elf32-gen.c: Likewise.
1204         * elf32-hppa.c: Likewise.
1205         * elf32-i370.c: Likewise.
1206         * elf32-i386.c: Likewise.
1207         * elf32-i960.c: Likewise.
1208         * elf32-ip2k.c: Likewise.
1209         * elf32-iq2000.c: Likewise.
1210         * elf32-lm32.c: Likewise.
1211         * elf32-m32c.c: Likewise.
1212         * elf32-m32r.c: Likewise.
1213         * elf32-m68hc11.c: Likewise.
1214         * elf32-m68hc12.c: Likewise.
1215         * elf32-m68hc1x.c: Likewise.
1216         * elf32-m68k.c: Likewise.
1217         * elf32-mcore.c: Likewise.
1218         * elf32-mep.c: Likewise.
1219         * elf32-metag.c: Likewise.
1220         * elf32-microblaze.c: Likewise.
1221         * elf32-moxie.c: Likewise.
1222         * elf32-msp430.c: Likewise.
1223         * elf32-mt.c: Likewise.
1224         * elf32-nds32.c: Likewise.
1225         * elf32-nios2.c: Likewise.
1226         * elf32-or1k.c: Likewise.
1227         * elf32-pj.c: Likewise.
1228         * elf32-ppc.c: Likewise.
1229         * elf32-rl78.c: Likewise.
1230         * elf32-rx.c: Likewise.
1231         * elf32-s390.c: Likewise.
1232         * elf32-score.c: Likewise.
1233         * elf32-score7.c: Likewise.
1234         * elf32-sh-symbian.c: Likewise.
1235         * elf32-sh.c: Likewise.
1236         * elf32-sh64.c: Likewise.
1237         * elf32-sparc.c: Likewise.
1238         * elf32-spu.c: Likewise.
1239         * elf32-tic6x.c: Likewise.
1240         * elf32-tilepro.c: Likewise.
1241         * elf32-v850.c: Likewise.
1242         * elf32-vax.c: Likewise.
1243         * elf32-visium.c: Likewise.
1244         * elf32-wasm32.c: Likewise.
1245         * elf32-xgate.c: Likewise.
1246         * elf32-xtensa.c: Likewise.
1247         * elf64-alpha.c: Likewise.
1248         * elf64-gen.c: Likewise.
1249         * elf64-hppa.c: Likewise.
1250         * elf64-ia64-vms.c: Likewise.
1251         * elf64-mmix.c: Likewise.
1252         * elf64-ppc.c: Likewise.
1253         * elf64-s390.c: Likewise.
1254         * elf64-sh64.c: Likewise.
1255         * elf64-sparc.c: Likewise.
1256         * elf64-x86-64.c: Likewise.
1257         * elfcode.h: Likewise.
1258         * elfcore.h: Likewise.
1259         * elflink.c: Likewise.
1260         * elfnn-aarch64.c: Likewise.
1261         * elfnn-ia64.c: Likewise.
1262         * elfnn-riscv.c: Likewise.
1263         * elfxx-mips.c: Likewise.
1264         * elfxx-sparc.c: Likewise.
1265         * elfxx-tilegx.c: Likewise.
1266         * elfxx-x86.c: Likewise.
1267         * hpux-core.c: Likewise.
1268         * ieee.c: Likewise.
1269         * ihex.c: Likewise.
1270         * libbfd.c: Likewise.
1271         * linker.c: Likewise.
1272         * mach-o.c: Likewise.
1273         * merge.c: Likewise.
1274         * mmo.c: Likewise.
1275         * oasys.c: Likewise.
1276         * pdp11.c: Likewise.
1277         * pe-mips.c: Likewise.
1278         * peXXigen.c: Likewise.
1279         * peicode.h: Likewise.
1280         * reloc.c: Likewise.
1281         * rs6000-core.c: Likewise.
1282         * srec.c: Likewise.
1283         * stabs.c: Likewise.
1284         * vms-alpha.c: Likewise.
1285         * xcofflink.c: Likewise.
1286
1287 2018-02-19  Alan Modra  <amodra@gmail.com>
1288
1289         PR 22845
1290         * elf.c (IS_TBSS): Define.
1291         (_bfd_elf_map_sections_to_segments): Use IS_TBSS.
1292         (assign_file_positions_for_non_load_sections): Revert last change.
1293         Properly calculate load segment limits to compare against relro limits.
1294
1295 2018-02-17  Alan Modra  <amodra@gmail.com>
1296
1297         PR 22845
1298         * elf.c (assign_file_positions_for_non_load_sections): Ignore
1299         degenerate zero size PT_LOAD segments when finding one overlapping
1300         the PT_GNU_RELRO segment.
1301
1302 2018-02-16  Alan Modra  <amodra@gmail.com>
1303
1304         * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
1305         (_bfd_bool_bfd_true): Rename from bfd_true.
1306         (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
1307         (_bfd_int_bfd_0): Rename from bfd_0.
1308         (_bfd_uint_bfd_0): Rename from bfd_0u.
1309         (_bfd_long_bfd_0): Rename from bfd_0l.
1310         (_bfd_long_bfd_n1_error): Rename from _bfd_n1.
1311         (_bfd_void_bfd): Rename from bfd_void.
1312         (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
1313         (_bfd_bool_bfd_link_false_error),
1314         (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
1315         (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
1316         (_bfd_bool_bfd_asection_bfd_asection_true),
1317         (_bfd_bool_bfd_asymbol_bfd_asymbol_true),
1318         (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
1319         * archive.c (_bfd_noarchive_get_elt_at_index),
1320         (_bfd_noarchive_openr_next_archived_file),
1321         (_bfd_noarchive_construct_extended_name_table),
1322         (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
1323         (_bfd_noarchive_write_armap): New functions.
1324         * archures.c (_bfd_nowrite_set_arch_mach): New function.
1325         * coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
1326         (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
1327         (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
1328         (alpha_ecoff_swap_coff_lineno_out),
1329         (alpha_ecoff_swap_coff_reloc_out): New functions.
1330         * coff-mips.c (mips_ecoff_swap_coff_aux_in),
1331         (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
1332         (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
1333         (mips_ecoff_swap_coff_lineno_out),
1334         (mips_ecoff_swap_coff_reloc_out): New functions.
1335         * coffcode.h (coff_set_alignment_hook): Replace define with
1336         new function.
1337         (symname_in_debug_hook): Likewise.
1338         * ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
1339         * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
1340         * elf.c (assign_file_positions_except_relocs): Test
1341         elf_backend_allow_non_load_phdr for NULL.
1342         * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
1343         _bfd_elf_link_omit_section_dynsym.  Update uses.
1344         (_bfd_elf_omit_section_dynsym_all): New function.
1345         * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
1346         (_bfd_elf_omit_section_dynsym_default): Declare.
1347         (_bfd_elf_omit_section_dynsym_all): Declare.
1348         * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
1349         (_bfd_nolink_bfd_get_relocated_section_contents),
1350         (_bfd_nolink_bfd_lookup_section_flags),
1351         (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
1352         (_bfd_nolink_bfd_link_hash_table_create),
1353         (_bfd_nolink_bfd_link_just_syms),
1354         (_bfd_nolink_bfd_copy_link_hash_symbol_type),
1355         (_bfd_nolink_bfd_link_split_section),
1356         (_bfd_nolink_section_already_linked),
1357         (_bfd_nolink_bfd_define_common_symbol),
1358         (_bfd_nolink_bfd_define_start_stop): New functions.
1359         * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
1360         (_bfd_norelocs_bfd_reloc_name_lookup),
1361         (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
1362         * section.c (_bfd_nowrite_set_section_contents): New function.
1363         * syms.c (_bfd_nosymbols_canonicalize_symtab),
1364         (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
1365         (_bfd_nosymbols_get_symbol_version_string),
1366         (_bfd_nosymbols_bfd_is_local_label_name),
1367         (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
1368         (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
1369         (_bfd_nosymbols_bfd_make_debug_symbol),
1370         ( _bfd_nosymbols_read_minisymbols),
1371         ( _bfd_nosymbols_minisymbol_to_symbol),
1372         (_bfd_nodynamic_get_synthetic_symtab): New functions.
1373         * libbfd-in.h: Declare new functions.  Update existing defines,
1374         removing casts.
1375         * aix386-core.c: Update to use new hooks.  Formatting.
1376         * aout-adobe.c: Likewise.
1377         * aout-arm.c: Likewise.
1378         * aout-target.h: Likewise.
1379         * aout-tic30.c: Likewise.
1380         * aoutf1.h: Likewise.
1381         * binary.c: Likewise.
1382         * bout.c: Likewise.
1383         * cisco-core.c: Likewise.
1384         * coff-alpha.c: Likewise.
1385         * coff-i386.c: Likewise.
1386         * coff-i860.c: Likewise.
1387         * coff-i960.c: Likewise.
1388         * coff-ia64.c: Likewise.
1389         * coff-mips.c: Likewise.
1390         * coff-ppc.c: Likewise.
1391         * coff-rs6000.c: Likewise.
1392         * coff-sh.c: Likewise.
1393         * coff-tic30.c: Likewise.
1394         * coff-tic54x.c: Likewise.
1395         * coff-x86_64.c: Likewise.
1396         * coff64-rs6000.c: Likewise.
1397         * coffcode.h: Likewise.
1398         * elf-m10300.c: Likewise.
1399         * elf32-cr16.c: Likewise.
1400         * elf32-lm32.c: Likewise.
1401         * elf32-m32r.c: Likewise.
1402         * elf32-metag.c: Likewise.
1403         * elf32-score.c: Likewise.
1404         * elf32-score7.c: Likewise.
1405         * elf32-tilepro.c: Likewise.
1406         * elf32-xstormy16.c: Likewise.
1407         * elf32-xtensa.c: Likewise.
1408         * elf64-alpha.c: Likewise.
1409         * elf64-hppa.c: Likewise.
1410         * elf64-ia64-vms.c: Likewise.
1411         * elf64-mmix.c: Likewise.
1412         * elf64-sh64.c: Likewise.
1413         * elfnn-ia64.c: Likewise.
1414         * elfxx-sparc.c: Likewise.
1415         * elfxx-target.h: Likewise.
1416         * elfxx-tilegx.c: Likewise.
1417         * elfxx-x86.h: Likewise.
1418         * hp300hpux.c: Likewise.
1419         * hppabsd-core.c: Likewise.
1420         * hpux-core.c: Likewise.
1421         * i386msdos.c: Likewise.
1422         * i386os9k.c: Likewise.
1423         * ieee.c: Likewise.
1424         * ihex.c: Likewise.
1425         * irix-core.c: Likewise.
1426         * libaout.h: Likewise.
1427         * libecoff.h: Likewise.
1428         * mach-o-target.c: Likewise.
1429         * mach-o.c: Likewise.
1430         * mipsbsd.c: Likewise.
1431         * mmo.c: Likewise.
1432         * netbsd-core.c: Likewise.
1433         * nlm-target.h: Likewise.
1434         * oasys.c: Likewise.
1435         * osf-core.c: Likewise.
1436         * pdp11.c: Likewise.
1437         * pe-mips.c: Likewise.
1438         * pe-x86_64.c: Likewise.
1439         * pef.c: Likewise.
1440         * plugin.c: Likewise.
1441         * ppcboot.c: Likewise.
1442         * ptrace-core.c: Likewise.
1443         * sco5-core.c: Likewise.
1444         * som.c: Likewise.
1445         * sparclynx.c: Likewise.
1446         * srec.c: Likewise.
1447         * tekhex.c: Likewise.
1448         * trad-core.c: Likewise.
1449         * verilog.c: Likewise.
1450         * versados.c: Likewise.
1451         * vms-alpha.c: Likewise.
1452         * vms-lib.c: Likewise.
1453         * wasm-module.c: Likewise.
1454         * xsym.c: Likewise.
1455         * libbfd.h: Regenerate.
1456
1457 2018-02-15  Jim Wilson  <jimw@sifive.com>
1458
1459         * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
1460         symbols whose section address is zero.
1461
1462         * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
1463         when pcrel_lo reloc has an addend.  Use reloc_dangerous callback for
1464         bfd_reloc_dangerous.  Use einfo instead of warning callback for errors.
1465         Add %X%P to error messages.
1466
1467 2018-02-15  Eric Botcazou  <ebotcazou@adacore.com>
1468
1469         PR ld/22832
1470         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
1471         Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
1472         and assert that the result of the call is not NULL.
1473
1474 2018-02-14  Nick Clifton  <nickc@redhat.com>
1475
1476         PR 22823
1477         Revert previous delta.  Add extra casts to avoid compile time
1478         warnings instead.
1479         * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
1480         cast to avoid warning from gcc v8 compiler.
1481         (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
1482         (_bfd_generic_bfd_set_private_flags): Likewise.
1483         (_bfd_generic_bfd_copy_private_section_data): Likewise.
1484         (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
1485         (_bfd_generic_bfd_copy_private_header_data): Likewise.
1486         (_bfd_generic_bfd_print_private_bfd_data): Likewise.
1487         (_bfd_noarchive_construct_extended_name_table): Likewise.
1488         (_bfd_noarchive_truncate_arname): Likewise.
1489         (_bfd_noarchive_write_ar_hdr): Likewise.
1490         (_bfd_noarchive_get_elt_at_index): Likewise.
1491         (_bfd_nosymbols_canonicalize_symtab): Likewise.
1492         (_bfd_nosymbols_print_symbol): Likewise.
1493         (_bfd_nosymbols_get_symbol_info): Likewise.
1494         (_bfd_nosymbols_get_symbol_version_string): Likewise.
1495         (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
1496         (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
1497         (_bfd_nosymbols_get_lineno): Likewise.
1498         (_bfd_nosymbols_find_nearest_line): Likewise.
1499         (_bfd_nosymbols_find_line): Likewise.
1500         (_bfd_nosymbols_find_inliner_info): Likewise.
1501         (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
1502         (_bfd_nosymbols_read_minisymbols): Likewise.
1503         (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
1504         (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
1505         (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
1506         (_bfd_nowrite_set_arch_mach): Likewise.
1507         (_bfd_nowrite_set_section_contents): Likewise.
1508         (_bfd_nolink_sizeof_headers): Likewise.
1509         (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
1510         (_bfd_nolink_bfd_relax_section): Likewise.
1511         (_bfd_nolink_bfd_gc_sections): Likewise.
1512         (_bfd_nolink_bfd_lookup_section_flags): Likewise.
1513         (_bfd_nolink_bfd_merge_sections): Likewise.
1514         (_bfd_nolink_bfd_is_group_section): Likewise.
1515         (_bfd_nolink_bfd_discard_group): Likewise.
1516         (_bfd_nolink_bfd_link_hash_table_create): Likewise.
1517         (_bfd_nolink_bfd_link_add_symbols): Likewise.
1518         (_bfd_nolink_bfd_link_just_syms): Likewise.
1519         (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
1520         (_bfd_nolink_bfd_final_link): Likewise.
1521         (_bfd_nolink_bfd_link_split_section): Likewise.
1522         (_bfd_nolink_section_already_linked): Likewise.
1523         (_bfd_nolink_bfd_define_common_symbol): Likewise.
1524         (_bfd_nolink_bfd_define_start_stop): Likewise.
1525         (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
1526         (_bfd_nodynamic_get_synthetic_symtab): Likewise.
1527         (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
1528         (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
1529         * libbfd.c (bfd_false_any): Delete.
1530         (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
1531         (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
1532         * libbfd.h (extern): Regenerate
1533         * aout-target.h (MY_bfd_is_target_special_symbol): Add extra
1534         cast to avoid warning from gcc v8 compiler.
1535         * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
1536         * binary.c (binary_get_symbol_info): Likewise.
1537         * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
1538         * coff-mips.c (mips_ecoff_backend_data): Likewise.
1539         * coffcode.h (coff_set_alignment_hook): Likewise.
1540         (symname_in_debug_hook): Likewise.
1541         (bfd_coff_backend_data bigobj_swap_table): Likewise.
1542         * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
1543         * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
1544         * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
1545         * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
1546         * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
1547         * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
1548         * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
1549         * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
1550         * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
1551         * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
1552         * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
1553         * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
1554         * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
1555         * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
1556         * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
1557         * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
1558         (bfd_elfNN_bfd_make_debug_symbol): Likewise.
1559         (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
1560         (bfd_elfNN_bfd_set_private_flags): Likewise.
1561         (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
1562         (elf_backend_init_index_section): Likewise.
1563         (elf_backend_allow_non_load_phdr): Likewise.
1564         * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
1565         * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
1566         * ieee.c (ieee_construct_extended_name_table): Likewise.
1567         (ieee_write_armap): Likewise.
1568         (ieee_write_ar_hdr): Likewise.
1569         (ieee_bfd_is_target_special_symbol): Likewise.
1570         * ihex.c (ihex_canonicalize_symtab): Likewise.
1571         (ihex_bfd_is_target_special_symbol): Likewise.
1572         * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
1573         * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
1574         (_bfd_ecoff_set_alignment_hook): Likewise.
1575         * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
1576         * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
1577         * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
1578         * oasys.c (oasys_construct_extended_name_table): Likewise.
1579         (oasys_write_armap): Likewise.
1580         (oasys_write_ar_hdr): Likewise.
1581         (oasys_bfd_is_target_special_symbol): Likewise.
1582         * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
1583         * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
1584         * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
1585         * som.c (som_bfd_is_target_special_symbol): Likewise.
1586         * srec.c (srec_bfd_is_target_special_symbol): Likewise.
1587         * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
1588         * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
1589         * versados.c (versados_bfd_is_target_special_symbol): Likewise.
1590         (versados_bfd_reloc_name_lookup): Likewise.
1591         * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
1592         (vms_bfd_define_start_stop): Likewise.
1593         (alpha_vms_bfd_is_target_special_symbol): Likewise.
1594         * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
1595         * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
1596
1597 2018-02-14  H.J. Lu  <hongjiu.lu@intel.com>
1598
1599         PR ld/22842
1600         * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
1601         PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
1602         * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
1603         R_X86_64_PC32 reloc against dynamic function in data section.
1604         Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
1605         (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
1606         against dynamic function in data section.
1607         * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
1608         function address only if pcrel_plt is true.
1609         (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
1610         * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
1611         PC-relative PLT.  If PLT is PC-relative, don't generate dynamic
1612         PC-relative relocation against a function definition in data
1613         secton in PIE.  Remove the obsolete comments.
1614         (elf_x86_link_hash_table): Add pcrel_plt.
1615
1616 2018-02-13  H.J. Lu  <hongjiu.lu@intel.com>
1617
1618         * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
1619         instead of bfd_link_pic, for building shared library.
1620
1621 2018-02-13  H.J. Lu  <hongjiu.lu@intel.com>
1622
1623         PR gas/22791
1624         * elf64-x86-64.c (is_32bit_relative_branch): Removed.
1625         (elf_x86_64_relocate_section): Check PIC relocations in PIE.
1626         Remove is_32bit_relative_branch usage.  Disallow PC32 reloc
1627         against protected function in shared object.
1628
1629 2018-02-13  Sergei Trofimovich  <slyfox@inbox.ru>
1630
1631         PR 22828
1632         * po/ru.po: Fix typo in Russian translation.
1633
1634 2018-02-13  Maciej W. Rozycki  <macro@mips.com>
1635
1636         * wasm-module.c (wasm_scan_name_function_section): Rename
1637         `index' local variable to `idx'.
1638
1639 2018-02-13  Nick Clifton  <nickc@redhat.com>
1640
1641         PR 22823
1642         Fix compile time warnings generated by gcc version 8.
1643         * libbfd-in.h: Remove extraneous text from prototypes.
1644         Add prototypes for bfd_false_any, bfd_true_any,
1645         bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
1646         bfd_n1_any, bfd_void_any.
1647         (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
1648         function.
1649         (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
1650         (_bfd_generic_bfd_set_private_flags): Likewise.
1651         (_bfd_generic_bfd_copy_private_section_data): Likewise.
1652         (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
1653         (_bfd_generic_bfd_copy_private_header_data): Likewise.
1654         (_bfd_generic_bfd_print_private_bfd_data): Likewise.
1655         (_bfd_noarchive_construct_extended_name_table): Likewise.
1656         (_bfd_noarchive_truncate_arname): Likewise.
1657         (_bfd_noarchive_write_ar_hdr): Likewise.
1658         (_bfd_noarchive_get_elt_at_index): Likewise.
1659         (_bfd_nosymbols_canonicalize_symtab): Likewise.
1660         (_bfd_nosymbols_print_symbol): Likewise.
1661         (_bfd_nosymbols_get_symbol_info): Likewise.
1662         (_bfd_nosymbols_get_symbol_version_string): Likewise.
1663         (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
1664         (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
1665         (_bfd_nosymbols_get_lineno): Likewise.
1666         (_bfd_nosymbols_find_nearest_line): Likewise.
1667         (_bfd_nosymbols_find_line): Likewise.
1668         (_bfd_nosymbols_find_inliner_info): Likewise.
1669         (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
1670         (_bfd_nosymbols_read_minisymbols): Likewise.
1671         (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
1672         (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
1673         (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
1674         (_bfd_nowrite_set_arch_mach): Likewise.
1675         (_bfd_nowrite_set_section_contents): Likewise.
1676         (_bfd_nolink_sizeof_headers): Likewise.
1677         (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
1678         (_bfd_nolink_bfd_relax_section): Likewise.
1679         (_bfd_nolink_bfd_gc_sections): Likewise.
1680         (_bfd_nolink_bfd_lookup_section_flags): Likewise.
1681         (_bfd_nolink_bfd_merge_sections): Likewise.
1682         (_bfd_nolink_bfd_is_group_section): Likewise.
1683         (_bfd_nolink_bfd_discard_group): Likewise.
1684         (_bfd_nolink_bfd_link_hash_table_create): Likewise.
1685         (_bfd_nolink_bfd_link_add_symbols): Likewise.
1686         (_bfd_nolink_bfd_link_just_syms): Likewise.
1687         (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
1688         (_bfd_nolink_bfd_final_link): Likewise.
1689         (_bfd_nolink_bfd_link_split_section): Likewise.
1690         (_bfd_nolink_section_already_linked): Likewise.
1691         (_bfd_nolink_bfd_define_common_symbol): Likewise.
1692         (_bfd_nolink_bfd_define_start_stop): Likewise.
1693         (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
1694         (_bfd_nodynamic_get_synthetic_symtab): Likewise.
1695         (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
1696         (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
1697         * libbfd.c (bfd_false_any): New function.  Like bfd_false but
1698         accepts one or more arguments.
1699         (bfd_true_any): Likewise.
1700         (bfd_nullvoidptr_any): Likewise.
1701         (bfd_0_any): Likewise.
1702         (bfd_0u_any): Likewise.
1703         (bfd_0l_any): Likewise.
1704         (_bfd_n1_any): Likewise.
1705         (bfd_void_any): Likewise.
1706         * libbfd.h (extern): Regenerate
1707         * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
1708         based dummy function.
1709         * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
1710         * binary.c (binary_get_symbol_info): Likewise.
1711         * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
1712         * coff-mips.c (mips_ecoff_backend_data): Likewise.
1713         * coffcode.h (coff_set_alignment_hook): Likewise.
1714         (symname_in_debug_hook): Likewise.
1715         (bfd_coff_backend_data bigobj_swap_table): Likewise.
1716         * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
1717         * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
1718         * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
1719         * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
1720         * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
1721         * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
1722         * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
1723         * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
1724         * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
1725         * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
1726         * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
1727         * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
1728         * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
1729         * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
1730         * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
1731         * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
1732         (bfd_elfNN_bfd_make_debug_symbol): Likewise.
1733         (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
1734         (bfd_elfNN_bfd_set_private_flags): Likewise.
1735         (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
1736         (elf_backend_init_index_section): Likewise.
1737         (elf_backend_allow_non_load_phdr): Likewise.
1738         * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
1739         * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
1740         * ieee.c (ieee_construct_extended_name_table): Likewise.
1741         (ieee_write_armap): Likewise.
1742         (ieee_write_ar_hdr): Likewise.
1743         (ieee_bfd_is_target_special_symbol): Likewise.
1744         * ihex.c (ihex_canonicalize_symtab): Likewise.
1745         (ihex_bfd_is_target_special_symbol): Likewise.
1746         * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
1747         * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
1748         (_bfd_ecoff_set_alignment_hook): Likewise.
1749         * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
1750         * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
1751         * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
1752         * oasys.c (oasys_construct_extended_name_table): Likewise.
1753         (oasys_write_armap): Likewise.
1754         (oasys_write_ar_hdr): Likewise.
1755         (oasys_bfd_is_target_special_symbol): Likewise.
1756         * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
1757         * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
1758         * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
1759         * som.c (som_bfd_is_target_special_symbol): Likewise.
1760         * srec.c (srec_bfd_is_target_special_symbol): Likewise.
1761         * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
1762         * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
1763         * versados.c (versados_bfd_is_target_special_symbol): Likewise.
1764         (versados_bfd_reloc_name_lookup): Likewise.
1765         * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
1766         (vms_bfd_define_start_stop): Likewise.
1767         (alpha_vms_bfd_is_target_special_symbol): Likewise.
1768         * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
1769         * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
1770         * elf32-arc.c (get_replace_function): Assign replacement function
1771         to func pointer.
1772         * elf32-i370.c (i370_noop): Update prototype.
1773
1774 2018-02-13  Alan Modra  <amodra@gmail.com>
1775
1776         PR 22836
1777         * elf.c (_bfd_elf_fixup_group_sections): Account for removed
1778         relocation sections.  If size reduces to just the flag word,
1779         remove that too and mark with SEC_EXCLUDE.
1780         * elflink.c (bfd_elf_final_link): Strip empty group sections.
1781
1782 2018-02-13  Alan Modra  <amodra@gmail.com>
1783
1784         PR 22829
1785         * elf.c (assign_file_positions_for_non_load_sections): Rewrite
1786         PT_GNU_RELRO setup.
1787
1788 2018-02-12  Zebediah Figura  <z.figura12@gmail.com>
1789
1790         * i386msdos.c (msdos_mkobject); New function.
1791         (msdos_object_p): New function.
1792         (i386_msdos_vec): Use msdos_object_p as the check_format
1793         function.
1794         * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and
1795         NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and
1796         IMAGE_NT_SIGNATURE.
1797         * peXXigen.c: Likewise.
1798         * coff-ia64.c: Likewise.
1799
1800 2018-02-12  Nick Clifton  <nickc@redhat.com>
1801
1802         * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant
1803         assignment.
1804         * elf32-arc.c (elf_arc_relocate_section): Likewise.
1805
1806 2018-02-09  Eric Botcazou  <ebotcazou@adacore.com>
1807
1808         * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions.
1809         (sparc_elf_append_rela): Assert that there is enough room in section.
1810         (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting.
1811         (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak.
1812         (allocate_dynrelocs): Remove outdated comments and reorder conditions.
1813         For a symbol subject to a GOT relocation, reserve a slot in the
1814         relocation section if the symbol isn't dynamic and we are in PIC mode.
1815         (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation
1816         is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation.
1817         <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments.
1818         <R_SPARC_PC10>: Reorder conditions.  Remove always-false assertion.
1819         (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into
1820         resolved_to_zero.  Do not generate a dynamic GOT relocation for an
1821         undefined weak symbol with non-default visibility.  Remove superfluous
1822         'else' and fix formatting.
1823
1824 2018-02-09  H.J. Lu  <hongjiu.lu@intel.com>
1825
1826         * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
1827         is_solaris.
1828         (i386_elf32_sol2_vec): Don't declare.
1829         (elf_i386_link_setup_gnu_properties): Also handle is_solaris.
1830         Don't set need_global_offset_table.
1831         (elf_i386_solaris_arch_bed): New.
1832         (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
1833         Solaris.
1834         * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
1835         target_os != is_nacl instead of target_os == is_normal.
1836         (x86_64_elf64_sol2_vec): Don't declare.
1837         (elf_x86_64_link_setup_gnu_properties): Check target_os !=
1838         is_nacl instead of target_os == is_normal.  Don't set
1839         need_global_offset_table.
1840         (elf_x86_64_solaris_arch_bed): New.
1841         (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
1842         Solaris.
1843         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
1844         _GLOBAL_OFFSET_TABLE_ for Solaris.
1845         (_bfd_x86_elf_link_setup_gnu_properties): Don't copy
1846         need_global_offset_table.
1847         * elfxx-x86.h (elf_x86_target_os): Add is_solaris.
1848         (elf_x86_link_hash_table): Remove need_global_offset_table.
1849         (elf_x86_init_table): Likewise.
1850
1851 2018-02-08  H.J. Lu  <hongjiu.lu@intel.com>
1852
1853         * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
1854         Remove prototype.
1855         (i386_elf32_sol2_vec): Declared.
1856         (elf_i386_link_setup_gnu_properties): Set
1857         need_global_offset_table with info->output_bfd->xvec.
1858         * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
1859         Remove prototype.
1860         (x86_64_elf64_sol2_vec): Declared.
1861         (elf_x86_64_link_setup_gnu_properties): Set
1862         need_global_offset_table with info->output_bfd->xvec.
1863
1864 2018-02-08  H.J. Lu  <hongjiu.lu@intel.com>
1865
1866         * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
1867         New prototype.
1868         (elf_i386_link_setup_gnu_properties): Set need_global_offset_table
1869         for Solaris.
1870         * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
1871         New prototype.
1872         (elf_x86_64_link_setup_gnu_properties): Set
1873         need_global_offset_table for Solaris.
1874         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
1875         unused _GLOBAL_OFFSET_TABLE_ for Solaris.
1876         (_bfd_x86_elf_link_setup_gnu_properties): Copy
1877         need_global_offset_table.
1878         * elfxx-x86.h (elf_x86_link_hash_table): Add
1879         need_global_offset_table.
1880         (elf_x86_init_table): Likewise.
1881
1882 2018-02-08  Jim Wilson  <jimw@sifive.com>
1883
1884         * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
1885         change.
1886
1887 2018-02-08  Nick Clifton  <nickc@redhat.com>
1888
1889         PR 22788
1890         * elf.c (elf_parse_notes): Reject notes with excessuively large
1891         alignments.
1892
1893 2018-02-07  Alan Modra  <amodra@gmail.com>
1894
1895         Revert 2018-01-17  Alan Modra  <amodra@gmail.com>
1896         * elf32-ppc.c: Remove speculation barrier support.
1897         * elf32-ppc.h: Likewise.
1898         * elf64-ppc.c: Likewise.
1899         * elf64-ppc.h: Likewise.
1900
1901 2018-02-06  Jim Wilson  <jimw@sifive.com>
1902
1903         * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
1904         callback to report an error.
1905
1906 2018-02-06  Eric Botcazou  <ebotcazou@adacore.com>
1907
1908         PR ld/22263
1909         * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
1910         into call to !bfd_link_executable and tidy up.
1911         (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
1912         <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
1913         !bfd_link_executable.
1914         <R_SPARC_TLS_IE_HI22>: Likewise.
1915         <GOT relocations>: Remove useless code, tidy and merge related blocks.
1916         <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
1917         !bfd_link_executable.
1918         <R_SPARC_WPLT30>: Tidy up.
1919         (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to
1920         !bfd_link_executable.
1921         (allocate_dynrelocs): Likewise.
1922         (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
1923         <R_SPARC_TLS_GD_HI22>: Merge into...
1924         <R_SPARC_TLS_GD_LO10>: ...this.  Adjust 4th argument in call to
1925         sparc_elf_tls_transition and remove redundant code.
1926         <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
1927         !bfd_link_executable.
1928         <R_SPARC_TLS_LDO_HIX22>: Likewise.
1929         <R_SPARC_TLS_LE_HIX22>: Likewise.  Tidy up.
1930         <R_SPARC_TLS_LDM_CALL>: Likewise.
1931         <R_SPARC_TLS_GD_CALL>: Likewise.  Tidy up.
1932         <R_SPARC_TLS_GD_ADD>: Likewise.
1933         <R_SPARC_TLS_LDM_ADD>: Likewise.
1934         <R_SPARC_TLS_LDO_ADD>: Likewise.
1935         <R_SPARC_TLS_IE_LD>: Likewise.
1936
1937 2018-02-06  MiloÅ¡ Stojanović  <milos.stojanovic@rt-rk.com>
1938
1939         PR 22789
1940         * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
1941         functions failed to find the function name, try the generic elf
1942         find function instead.
1943
1944 2018-02-06  Sergio Durigan Junior  <sergiodj@redhat.com>
1945
1946         * coff-rs6000.c (xcoff_write_archive_contents_old): Use
1947         'memcpy' instead of 'strncpy' when writing the magic number.
1948
1949 2018-02-06  Nick Clifton  <nickc@redhat.com>
1950
1951         PR 22794
1952         * opncls.c (bfd_get_debug_link_info_1): Check the size of the
1953         section before attempting to read it in.
1954         (bfd_get_alt_debug_link_info): Likewise.
1955
1956 2018-02-06  Paul Carroll  <pcarroll@codesourcery.com>
1957
1958         * bfd/dwarf2.c (find_abstract_name): Modified to return file and
1959         line information in addition to name, if they can be found.
1960
1961 2018-02-05  Renlin Li  <renlin.li@arm.com>
1962
1963         PR ld/22764
1964         * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
1965         R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
1966         check for writeable section as well.
1967
1968 2018-02-05  H.J. Lu  <hongjiu.lu@intel.com>
1969
1970         PR ld/22782
1971         * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
1972         _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
1973         undefined weak symbol to 0.
1974         * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
1975         if _GLOBAL_OFFSET_TABLE_ is referenced.
1976         * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
1977         got_referenced instead of ref_regular_nonweak.  Remove the
1978         unused _GLOBAL_OFFSET_TABLE_ from symbol table.
1979         * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
1980
1981 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
1982
1983         * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
1984         initialize `hi_reloc'.
1985
1986 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
1987
1988         * elfxx-mips.c (_bfd_mips_elf_section_processing): For
1989         SHT_MIPS_REGINFO sections don't assert the correct size and
1990         report an error instead.
1991
1992 2018-02-05  Maciej W. Rozycki  <macro@mips.com>
1993
1994         * elf.c (_bfd_elf_write_object_contents): Propagate a failure
1995         status from `->elf_backend_section_processing'.
1996
1997 2018-02-02  Jim Wilson  <jimw@sifive.com>
1998
1999         PR ld/22756
2000         * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
2001         If link_info->wrap_hash, check for a duplicate symbol and ignore.
2002         (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
2003         Pass new argument to riscv_relax_delete_bytes.
2004         (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise.  Remove
2005         ATTRIBUTE_UNUSED from link_info parameter.
2006
2007 2018-02-02  Alan Modra  <amodra@gmail.com>
2008
2009         * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
2010         emitted for toc sequence optimization.  Set and use "howto" later.
2011
2012 2018-02-01  Simon Marchi  <simon.marchi@ericsson.com>
2013
2014         * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
2015         arithmetic on NULL pointer.
2016         * elflink.c (_bfd_elf_archive_symbol_lookup,
2017         elf_link_add_archive_symbols): Likewise.
2018
2019 2018-01-31  Michael Matz  <matz@suse.de>
2020
2021         * elflink.c (bfd_elf_define_start_stop): Fix check of
2022         def_dynamic.
2023
2024 2018-01-31  H.J. Lu  <hongjiu.lu@intel.com>
2025
2026         PR ld/21964
2027         * elflink.c (bfd_elf_define_start_stop): Check if __start and
2028         __stop symbols are referenced by shared objects.
2029
2030 2018-01-30  Alan Modra  <amodra@gmail.com>
2031
2032         PR 22758
2033         * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
2034         segment when demand paged with lma on the same page.  Test this
2035         before load/non-load, executable/non-executable,
2036         writable/non-writable tests and simplify.  Delete bogus relro
2037         condition in writable/non-writable test.  Delete outdated
2038         comment.  Formatting.
2039
2040 2018-01-30  Alan Modra  <amodra@gmail.com>
2041
2042         * elflink.c (bfd_elf_define_start_stop): Make __start and __stop
2043         symbols dynamic.
2044
2045 2018-01-29  Alan Modra  <amodra@gmail.com>
2046
2047         PR 22741
2048         * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
2049         range before converting to a symbol table pointer.
2050
2051 2018-01-27  Nick Clifton  <nickc@redhat.com>
2052
2053         * po/ru.po: Updated Russian translation.
2054
2055 2018-01-26  Alan Modra  <amodra@gmail.com>
2056
2057         * elflink.c (bfd_elf_define_start_stop): Override symbols when
2058         they are defined dynamically.
2059
2060 2018-01-26  Alan Modra  <amodra@gmail.com>
2061
2062         * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
2063         .branch_lt changes size.
2064
2065 2018-01-25  Alan Modra  <amodra@gmail.com>
2066
2067         PR 22746
2068         * elfcode.h (elf_object_p): Avoid integer overflow.
2069
2070 2018-01-25  Eric Botcazou  <ebotcazou@adacore.com>
2071
2072         PR ld/22727
2073         * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
2074         Do a mere lookup of the __tls_get_addr symbol instead of adding it.
2075
2076         Revert
2077         2017-10-19  H.J. Lu  <hongjiu.lu@intel.com>
2078
2079         PR ld/22263
2080         * elfxx-sparc.c (sparc_elf_tls_transition): Replace
2081         bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
2082         bfd_link_executable for TLS check.
2083         (_bfd_sparc_elf_check_relocs): Likewise.
2084         (allocate_dynrelocs): Likewise.
2085         (_bfd_sparc_elf_relocate_section): Likewise.
2086
2087 2018-01-24  Renlin Li  <renlin.li@arm.com>
2088
2089         * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
2090         BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
2091         BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
2092         BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
2093         BFD_RELOC_AARCH64_MOVW_PREL_G3.
2094         * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
2095         (_bfd_aarch64_elf_resolve_relocation): Likewise.
2096
2097 2018-01-24  Renlin Li  <renlin.li@arm.com>
2098
2099         * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
2100         BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
2101         BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
2102         BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
2103         * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
2104         BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
2105         BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
2106         BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
2107         BFD_RELOC_AARCH64_MOVW_PREL_G3.
2108         * bfd-in2.h: Regenerate.
2109         * libbfd.h: Regenerate.
2110
2111 2018-01-23  Maciej W. Rozycki  <macro@mips.com>
2112
2113         * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
2114         `mips_elf32_section_processing' comment reference.
2115
2116 2018-01-20  H.J. Lu  <hongjiu.lu@intel.com>
2117
2118         PR ld/22721
2119         * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
2120         versioned __tls_get_addr symbol.
2121
2122 2018-01-19  Nick Clifton  <nickc@redhat.com>
2123
2124         * po/fr.po: Updated French translation.
2125
2126 2018-01-18  Alan Modra  <amodra@gmail.com>
2127
2128         * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
2129         * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
2130         (ppc64_elf_build_stubs): Likewise.
2131
2132 2018-01-17  Nick Clifton  <nickc@redhat.com>
2133
2134         * po/ru.po: Updated Russian translation.
2135         * po/uk/po: Updated Ukranian translation.
2136
2137 2018-01-17  Alan Modra  <amodra@gmail.com>
2138
2139         * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
2140
2141 2018-01-17  Alan Modra  <amodra@gmail.com>
2142
2143         * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
2144         (CRSETEQ, BEQCTRM): Define.
2145         (is_nonpic_glink_stub): Don't check bctr.
2146         (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
2147         (ppc_elf_relax_section): Size speculation barrier.
2148         (output_bctr): New function.
2149         (write_glink_stub): Use output_bctr.
2150         (ppc_elf_relocate_section): Use output_bctr for long branch stub.
2151         (ppc_elf_finish_dynamic_symbol): Likewise.
2152         (ppc_elf_finish_dynamic_sections): Use output_bctr.
2153         * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
2154         * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
2155         (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
2156         (size_global_entry_stubs): Handle speculation barrier sizing.
2157         (plt_stub_size): Likewise.
2158         (output_bctr): New function.
2159         (build_plt_stub, build_tls_get_addr_stub): Output speculation
2160         barrier.
2161         (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
2162         (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
2163         (build_global_entry_stubs): Output speculation barrier.
2164         (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
2165         * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
2166
2167 2018-01-17  Alan Modra  <amodra@gmail.com>
2168
2169         * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
2170         __tls_get_addr_opt, and alignment sizing.
2171         (TLS_GET_ADDR_GLINK_SIZE): Delete.
2172         (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
2173         (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
2174         or 8 insns.
2175         (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
2176         (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
2177         (ppc_elf_size_dynamic_sections): Likewise.  Size branch table
2178         by PLT reloc count.
2179         (write_glink_stub): Handle __tls_get_addr_opt stub.
2180         Pad out to size given by GLINK_ENTRY_SIZE.
2181         (ppc_elf_relocate_section): Adjust write_glink_stub call.
2182         (ppc_elf_finish_dynamic_symbol): Likewise.
2183         (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
2184         insn array since so many need rewriting.
2185         * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
2186         * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
2187         GLINK_CALL_STUB_SIZE.  Add htab param and evaluate to size without
2188         nops.  Adjust all uses.
2189         (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
2190         in glink_vma calculation.
2191         (struct ppc_link_hash_table): Add global_entry section pointer.
2192         (create_linkage_sections): Create separate section for global
2193         entry stubs.
2194         (PPC_LO, PPC_HI, PPC_HA): Move earlier.
2195         (size_global_entry_stubs): Handle sizing for aligned stubs.
2196         (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
2197         and don't stash end of glink branch table in rawsize.
2198         (ppc_build_one_stub): Rewrite stub size calculations.
2199         (build_global_entry_stubs): Use new section.
2200         (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
2201         Build lazy link stubs out to end of section.  Build global entry
2202         stubs in new section.
2203
2204 2018-01-15  Nick Clifton  <nickc@redhat.com>
2205
2206         * po/uk.po: Updated Ukranian translation.
2207
2208 2018-01-13  Nick Clifton  <nickc@redhat.com>
2209
2210         * po/bfd.pot: Regenerated.
2211
2212 2018-01-13  Nick Clifton  <nickc@redhat.com>
2213
2214         * version.m4: Bump version to 2.30.51
2215         * configure: Regenerate.
2216
2217 2018-01-13  Nick Clifton  <nickc@redhat.com>
2218
2219         2.30 branch created.
2220
2221 2018-01-12  Jens Widell  <jl@opera.com>
2222
2223         * elf.c (setup_group): Optimize search for group by remembering
2224         last found group and restarting search at that index.
2225         * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
2226
2227 2018-01-12  Gunther Nikl  <gnikl@users.sourceforge.net>
2228
2229         * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
2230         bfd_link_common_skip_none in switch.
2231
2232 2018-01-12  Alan Modra  <amodra@gmail.com>
2233
2234         PR ld/22649
2235         * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
2236         references on forced local symbols.
2237
2238 2018-01-12  Vlad Ivanov  <vlad@ivanov.email>
2239
2240         * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
2241         .reginfo section has wrong size.
2242
2243 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2244
2245         PR ld/22393
2246         * elf.c (_bfd_elf_map_sections_to_segments): When generating
2247         separate code and read-only data LOAD segments, create a new
2248         LOAD segment if the previous section contains text and the
2249         current section doesn't or vice versa.  Don't put a writable
2250         section in a read-only segment if there is a RELRO segment.
2251
2252 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2253
2254         PR ld/22649
2255         * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
2256         references on forced local symbols.
2257
2258 2018-01-11  H.J. Lu  <hongjiu.lu@intel.com>
2259
2260         PR ld/22677
2261         * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
2262         INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
2263
2264 2018-01-09  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
2265
2266         PR 22662
2267         * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
2268
2269 2018-01-03  John Baldwin  <jhb@FreeBSD.org>
2270
2271         * elf.c (elfcore_grok_freebsd_note): Handle
2272         NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
2273         NT_FREEBSD_PROCSTAT_VMMAP.
2274
2275 2018-01-03  Alan Modra  <amodra@gmail.com>
2276
2277         Update year range in copyright notice of all files.
2278
2279 For older changes see ChangeLog-2017
2280 \f
2281 Copyright (C) 2018 Free Software Foundation, Inc.
2282
2283 Copying and distribution of this file, with or without modification,
2284 are permitted in any medium without royalty provided the copyright
2285 notice and this notice are preserved.
2286
2287 Local Variables:
2288 mode: change-log
2289 left-margin: 8
2290 fill-column: 74
2291 version-control: never
2292 End: