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