429e423caa8a5d8265e25de84fb20361c9604429
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2019-10-20 John David Anglin <danglin@gcc.gnu.org>
2
3 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Provide 8-byte
4 minimum alignment for .plt section.
5
6 2019-10-19 John David Anglin <danglin@gcc.gnu.org>
7
8 * elf32-hppa.c: Revise import stub sequences.
9 (LONG_BRANCH_STUB_SIZE): Define.
10 (LONG_BRANCH_SHARED_STUB_SIZE): Define.
11 (IMPORT_STUB_SIZE): Define.
12 (IMPORT_SHARED_STUB_SIZE): Define.
13 (EXPORT_STUB_SIZE): Define.
14 (plt_stub): Revise to not use register %r22.
15 (LDO_R1_R22): Define.
16 (LDW_R22_R21): Define.
17 (LDW_R22_R19): Define.
18 (hppa_build_one_stub): Update stub generation and use new defines.
19 (hppa_size_one_stub): Likewise.
20
21 2019-10-17 Nelson Chu <nelson.chu@sifive.com>
22
23 * elfnn-riscv.c (riscv_elf_relocate_section): Report the error message
24 that user should recompile their code with `fPIC` when linking non-pic
25 code into shared library.
26
27 * elfnn-riscv.c (riscv_elf_relocate_section): Use asprintf to extend
28 the error message if needed, and then store the result into the
29 `msg_buf`. Finally, remember to free the unused `msg_buf`. All error
30 message for the dangerous relocation should be set before we call the
31 callback function. If we miss the error message since linker runs out
32 of memory, we should set the default error message for the error.
33
34 2019-10-16 Alan Modra <amodra@gmail.com>
35
36 PR 13616
37 * cpu-powerpc.c (bfd_arch_ppc_nop_fill): New function, use it
38 for all ppc arch info.
39 * linker.c (default_data_link_order): Pass info->big_endian to
40 arch_info->fill function.
41
42 2019-10-15 Alan Modra <amodra@gmail.com>
43
44 * elf32-m68hc1x.c (reloc_warning): Add printf attribute.
45 (elf32_m68hc11_relocate_section): Don't use a variable for format
46 strings. Delete some unnecessary xgettext:c-format comments.
47
48 2019-10-15 Alan Modra <amodra@gmail.com>
49
50 PR 24955
51 * elf32-arm.c (set_cmse_veneer_addr_from_implib): Use bfd_malloc
52 rather than xmalloc.
53 * elf32-m68hc1x.c (reloc_warning): New function.
54 (elf32_m68hc11_relocate_section): Use it here. Cast bfd_vma values
55 corresponding to %lx in format strings.
56 * elf32-nds32.c (nds32_insertion_sort): Use a stack temporary.
57
58 2019-10-15 Alan Modra <amodra@gmail.com>
59
60 PR 25100
61 * elf64-ppc.c (sfpr_define): Delete dead code that triggered a warning.
62
63 2019-10-15 Alan Modra <amodra@gmail.com>
64
65 * bfd.c (bfd_check_compression_header): Check for powers of two
66 with x == (x & -x).
67
68 2019-10-14 Alan Modra <amodra@gmail.com>
69
70 * syms.c (struct indexentry): Add idx field.
71 (cmpindexentry): Final sort on idx.
72 (_bfd_stab_section_find_nearest_line): Set idx.
73
74 2019-10-14 Alan Modra <amodra@gmail.com>
75
76 * dwarf2.c (struct lookup_funcinfo): Add idx field.
77 (compare_lookup_funcinfos): Perform final sort on idx.
78 (build_lookup_funcinfo_table): Set idx.
79 (compare_sequences): Perform final sort on num_lines.
80 (build_line_info_table): Set num_lines and line_info_lookup earlier.
81 (sort_line_sequences): Set num_lines for sort.
82
83 2019-10-14 Alan Modra <amodra@gmail.com>
84
85 * elflink.c (elf_sort_symbol): Sort on type and name as well.
86 (elf_link_add_object_symbols): Style fix.
87
88 2019-10-14 Alan Modra <amodra@gmail.com>
89
90 * elf.c (_bfd_elf_map_sections_to_segments): Init target_index
91 for sections about to be sorted.
92 (assign_file_positions_for_load_sections): Likewise.
93 (elf_sort_sections): Don't bother optimising both TOEND case.
94 * elflink.c (bfd_elf_final_link): Reset target_index.
95
96 2019-10-14 Alan Modra <amodra@gmail.com>
97
98 * elflink.c (elf_get_linked_section_vma): Delete.
99 (compare_link_order): Use elf_linked_to_section and sort by lma,
100 size, and id.
101 (elf_fixup_link_order): Use size_t variables where appropriate.
102 Make use of elf_linked_to_section. Formatting. Properly align
103 sections.
104
105 2019-10-14 Alan Modra <amodra@gmail.com>
106
107 * elf-strtab.c (strrevcmp): Comment.
108 * merge.c (strrevcmp): Likewise.
109 * elf64-ppc.c (compare_symbols): Correct final pointer comparison.
110 Comment on why comparing pointers ensures a stable sort.
111 * elflink.c (struct elf_symbol): Add void* to union.
112 (elf_sort_elf_symbol): Ensure a stable sort with pointer comparison.
113 (elf_sym_name_compare): Likewise.
114 (bfd_elf_match_symbols_in_sections): Style fix.
115 (elf_link_sort_cmp1): Comment.
116
117 2019-10-14 Alan Modra <amodra@gmail.com>
118
119 PR 24955
120 * elflink.c (elf_output_implib): Don't use xmalloc. Don't ignore
121 return value of bfd_alloc2.
122 * peXXigen.c (_bfd_XXi_write_codeview_record): Don't use xmalloc.
123 * pef.c (bfd_pef_print_symbol): Likewise. Don't ignore return
124 value of bfd_get_section_contents.
125 * som.c (som_write_space_strings): Don't use xmalloc.
126 (som_write_symbol_strings): Likewise.
127
128 2019-10-11 Max Filippov <jcmvbkbc@gmail.com>
129
130 * dwarf2.c (stash_maybe_enable_info_hash_tables): Only set
131 stash->info_hash_status = STASH_INFO_HASH_ON when
132 stash_maybe_update_info_hash_tables succeeds.
133
134 2019-10-09 Alan Modra <amodra@gmail.com>
135
136 PR 25070
137 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Catch overflow of
138 total_size calculation.
139
140 2019-10-08 Alan Modra <amodra@gmail.com>
141
142 PR 25078
143 * dwarf2.c (find_abstract_instance): Delete orig_info_ptr, add
144 recur_count. Error on recur_count reaching 100 rather than
145 info_ptr matching orig_info_ptr. Adjust calls.
146
147 2019-10-07 Jozef Lawrynowicz <jozef.l@mittosystems.com>
148
149 * elf32-msp430.c (elf32_msp430_merge_mspabi_attributes): Rename to..
150 (elf32_msp430_merge_msp430_attributes): Add support for merging
151 the GNU object attribute for data region.
152
153 2019-10-07 Alan Modra <amodra@gmail.com>
154
155 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Do allocate
156 space for local got non-tls relocs when PIE.
157
158 2019-10-07 Alan Modra <amodra@gmail.com>
159
160 * elflink.c (elf_fixup_link_order): Don't attempt to find
161 an elf_section for linker created bfd sections.
162
163 2019-10-07 Alan Modra <amodra@gmail.com>
164
165 * elf32-ppc.c (ppc_elf_tls_optimize): Don't process R_PPC_TLSLD
166 with non-local symbol. Don't double count __tls_get_addr calls
167 with marker relocs.
168 * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
169
170 2019-10-07 Alan Modra <amodra@gmail.com>
171
172 * elf32-ppc.c (nomark_tls_get_addr): Rename from has_tls_get_addr_call
173 throughout.
174 * elf64-ppc.c (nomark_tls_get_addr): Likewise.
175
176 2019-10-04 Alan Modra <amodra@gmail.com>
177
178 * elf64-ppc.c (ppc64_elf_check_relocs): Move initialisation of vars.
179 (ppc64_elf_tls_optimize): Correct is_local condition.
180 (allocate_got): Don't reserve dynamic relocations for any of the
181 tls got relocs in PIEs when the symbol is local.
182 (allocate_dynrelocs): Correct validity test for local sym using
183 tlsld_got slot.
184 (ppc64_elf_size_dynamic_sections): Don't reserve dynamic relocations
185 for any of the tls got relocs in PIEs.
186 (ppc64_elf_layout_multitoc): Likewise.
187 (ppc64_elf_relocate_section): Correct validity test for local sym
188 using tlsld_got slot. Don't emit dynamic relocations for any of
189 the tls got relocs in PIEs when the symbol is local.
190 * elf32-ppc.c (ppc_elf_tls_optimize): Correct is_local condition.
191 (got_relocs_needed): Delete.
192 (allocate_dynrelocs): Correct validity test for local sym using
193 tlsld_got slot. Don't reserve dynamic relocations for any of the
194 tls got relocs in PIEs when the symbol is local.
195 (ppc_elf_size_dynamic_sections): Don't reserve dynamic relocations
196 for any of the tls got relocs in PIEs.
197 (ppc_elf_relocate_section): Correct validity test for local sym
198 using tlsld_got slot. Don't emit dynamic relocations for any of
199 the tls got relocs in PIEs when the symbol is local.
200
201 2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
202
203 PR ld/22263
204 PR ld/25056
205 * elf32-arm.c (elf32_arm_tls_transition): Use bfd_link_dll instead of
206 bfd_link_pic for TLS checks.
207 (elf32_arm_final_link_relocate): Likewise.
208 (allocate_dynrelocs_for_symbol): Likewise.
209
210 2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
211
212 PR ld/25062
213 * elf32-arm.c (elf32_arm_final_link_relocate): Sign extend data.
214
215 2019-09-30 Nick Alcock <nick.alcock@oracle.com>
216
217 * elf-bfd.h (bfd_section_is_ctf): New inline function.
218 * elf.c (special_sections_c): Add ".ctf".
219 (assign_file_positions_for_non_load_sections): Note that
220 compressed debugging sections etc are not assigned here. Treat
221 CTF sections like SEC_ELF_COMPRESS sections when is_linker_output:
222 sh_offset -1.
223 (assign_file_positions_except_relocs): Likewise.
224 (find_section_in_list): Note that debugging and CTF sections, as
225 well as reloc sections, are assigned later.
226 (_bfd_elf_assign_file_positions_for_non_load): CTF sections get
227 their size and contents updated.
228 (_bfd_elf_set_section_contents): Skip CTF sections: unlike
229 compressed sections, they have no uncompressed content to copy at
230 this stage.
231 * elflink.c (elf_link_swap_symbols_out): Call the examine_strtab
232 callback right before the strtab is written out.
233 (bfd_elf_final_link): Don't cache the section contents of CTF
234 sections: they are not populated yet. Call the emit_ctf callback
235 right at the end, after all the symbols and strings are flushed
236 out.
237
238 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
239
240 * elf-strtab.c (_bfd_elf_strtab_len): New.
241 (_bfd_elf_strtab_str): Likewise.
242 * bfd-elf.h: Declare them.
243
244 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
245
246 * elf-bfd.h (bfd_elf_get_str_section): Add.
247 * elf.c (bfd_elf_get_str_section): No longer static.
248
249 2019-09-26 Alan Modra <amodra@gmail.com>
250
251 PR 24262
252 * Makefile.am (AM_CPPFLAGS): Add -DLIBDIR.
253 * plugin.c (load_plugin): Search both ${libdir}/bfd-plugins and
254 ${bindir}/../lib/bfd-plugins if different.
255 * Makefile.in: Regenerate.
256
257 2019-09-23 Alan Modra <amodra@gmail.com>
258
259 * elf64-ppc.c (ppc64_elf_check_relocs): Use bfd_link_executable
260 in choosing between different actions for shared library and
261 non-shared library cases. Delete ELIMINATE_COPY_RELOCS test.
262 (dec_dynrel_count): Likewise. Account for ifunc special case.
263 (ppc64_elf_adjust_dynamic_symbol): Copy relocs are for executables,
264 not non-pic.
265 (allocate_dynrelocs): Comment fixes. Delete ELIMINATE_COPY_RELOCS
266 test.
267
268 2019-09-23 Alan Modra <amodra@gmail.com>
269
270 * Makefile.am (SOURCE_HFILES): Add many missing .h files.
271 * Makefile.in: Regenerate.
272 * po/SRC-POTFILES.in: Regenerate.
273
274 2019-09-23 Alan Modra <amodra@gmail.com>
275
276 * bfd-in.h (bfd_symbol, bfd_section_already_linked),
277 (bfd_elf_version_tree): Delete forward declarations.
278 Move other forward decls and remaining elf function decl later.
279 (bfd_section_already_linked_table_init),
280 (bfd_section_already_linked_table_free),
281 (_bfd_handle_already_linked, _bfd_nearby_section),
282 (_bfd_fix_excluded_sec_syms): Move to bfdlink.h.
283
284 2019-09-23 Alan Modra <amodra@gmail.com>
285
286 * bfd-in.h: Move ecoff function declarations..
287 * ecoff-bfd.h: ..to here, new file.
288 * ecoff.c: Include ecoff-bfd.h.
289 * ecofflink.c: Likewise.
290 * elf64-alpha.c: Likewise.
291 * elfxx-mips.c: Likewise.
292 * bfd-in2.h: Regenerate.
293
294 2019-09-23 Alan Modra <amodra@gmail.com>
295
296 * bfd-in.h (enum notice_asneeded_action): Move to bfdlink.h.
297 Move most other elf declarations..
298 * elf-bfd.h: ..to here.
299 * bfd-in2.h: Regenerate.
300
301 2019-09-23 Alan Modra <amodra@gmail.com>
302
303 * bfd-in.h: Move m68k function declaration..
304 * cpu-m68k.h: ..to here, new file..
305 * elf32-m68k.h: ..and here, new file.
306 * elf32-m68k.c: Include cpu-m68k.h and elf32-m68k.h.
307 * bfd-in2.h: Regenerate.
308
309 2019-09-23 Alan Modra <amodra@gmail.com>
310
311 * bfd-in.h: Move bfin function declaration..
312 * elf32-bfin.h: ..to here, new file.
313 * elf32-bfin.c: Include elf32-bfin.h.
314 * bfd-in2.h: Regenerate.
315
316 2019-09-23 Alan Modra <amodra@gmail.com>
317
318 * bfd-in.h: Move cr16 function declaration..
319 * elf32-cr16.h: ..to here, new file.
320 * elf32-cr16.c: Include elf32-cr16.h.
321 * bfd-in2.h: Regenerate.
322
323 2019-09-23 Alan Modra <amodra@gmail.com>
324
325 * bfd-in.h (bfd_sunos_get_needed_list),
326 (bfd_sunos_record_link_assignment),
327 (bfd_sunos_size_dynamic_sections),
328 (bfd_i386linux_size_dynamic_sections),
329 (bfd_sparclinux_size_dynamic_sections): Delete obsolete decls.
330 * bfd-in2.h: Regenerate.
331
332 2019-09-23 Alan Modra <amodra@gmail.com>
333
334 * bfd-in.h: Move xcoff function declarations..
335 * xcofflink.h: ..to here, new file.
336 * xcofflink.c: Include xcofflink.h.
337 * coff-rs6000.c (bfd_xcoff_ar_archive_set_magic): Delete unused func.
338 * bfd-in2.h: Regenerate.
339
340 2019-09-23 Alan Modra <amodra@gmail.com>
341
342 * bfd-in.h: Delete coff forward refs and move coff declaration..
343 * coff-bfd.h: ..to here.
344 * bfd-in2.h: Regenerate.
345
346 2019-09-23 Alan Modra <amodra@gmail.com>
347
348 * bfd-in.h: Move arm declaraions..
349 * cpu-arm.h: ..to here, new file..
350 * coff-arm.h: ..and here, new file..
351 * elf32-arm.h: ..and here, new file.
352 * cpu-arm.c: Include cpu-arm.h.
353 * coff-arm.c: Include cpu-arm.h and coff-arm.h.
354 * elf32-arm.c: Include cpu-arm.h and elf32-arm.h.
355 * pe-arm.c: Move function rename defines later.
356 * pe-arm-wince.c: Likewise and include sysdep.h and bfd.h early.
357 * bfd-in2.h: Regenerate.
358
359 2019-09-23 Alan Modra <amodra@gmail.com>
360
361 * bfd-in.h: Move tic6x function declaration..
362 * elf32-tic6x.h: ..to here.
363 * bfd-in2.h: Regenerate.
364
365 2019-09-23 Alan Modra <amodra@gmail.com>
366
367 * bfd-in.h: Move aarch64 declarations and defines..
368 * cpu-aarch64.h: ..to here, new file..
369 * elfxx-aarch64.h: ..and here.
370 * cpu-aarch64.c: Include cpu-aarch64.h.
371 * elfnn-aarch64.c: Likewise.
372 * bfd-in2.h: Regenerate.
373
374 2019-09-23 Alan Modra <amodra@gmail.com>
375
376 * bfd-in.h: Delete ticoff function declarations.
377 * coff-tic54x.c (bfd_ticoff_set_section_load_page),
378 (bfd_ticoff_get_section_load_page): Make static.
379 * bfd-in2.h: Regenerate.
380
381 2019-09-23 Alan Modra <amodra@gmail.com>
382
383 * bfd-in.h: Move h8300 function declaration to..
384 * cpu-h8300.h: ..here, new file.
385 * cpu-h8300.c: Include cpu-h8300.h.
386 * elf32-h8300.c: Likewise.
387 * bfd-in2.h: Regenerate.
388
389 2019-09-23 Alan Modra <amodra@gmail.com>
390
391 * bfd-in.h: Move ia64 function declarations..
392 * elfxx-ia64.h: ..to here.
393 * bfd-in2.h: Regenerate.
394
395 2019-09-23 Alan Modra <amodra@gmail.com>
396
397 * bfd-in.h: Move v850 function declarations..
398 * elf32-v850.h: ..to here, new file.
399 * elf32-v850.c: Include elf32-v850.h.
400 * bfd-in2.h: Regenerate.
401
402 2019-09-23 Alan Modra <amodra@gmail.com>
403
404 * bfd-in.h: Move mips function declaration to..
405 * elfxx-mips.h: ..here.
406 * bfd-in2.h: Regenerate.
407
408 2019-09-23 Alan Modra <amodra@gmail.com>
409
410 * bfd-in.h: Move csky function declarations to..
411 * elf32-csky.h: ..here, new file.
412 * elf32-csky.c: Include elf32-csky.h.
413 * bfd-in2.h: Regenerate.
414
415 2019-09-20 Nelson Chu <nelson.chu@sifive.com>
416
417 * elfnn-riscv.c (riscv_pcgp_hi_reloc): Add new field undefined_weak.
418 (riscv_record_pcgp_hi_reloc): New parameter undefined_weak.
419 Set undefined_weak field from it.
420 (relax_func_t): New parameter undefined_weak.
421 (_bfd_riscv_relax_call): New ignored parameter undefined_weak.
422 (_bfd_riscv_relax_tls_le): Likewise.
423 (_bfd_riscv_relax_align): Likewise.
424 (_bfd_riscv_relax_delete): Likewise.
425 (_bfd_riscv_relax_lui): New parameter undefined_weak. If true,
426 allow relaxing. For LO12* relocs, set rs1 to x0 when undefined_weak.
427 (_bfd_riscv_relax_pc): New parameter undefined_weak. For LO12* relocs,
428 set undefined_weak from hi_reloc. If true, allow relaxing. For LO12*
429 relocs, set rs1 to x0 when undefined_weak and change to non-pcrel
430 reloc.
431 (_bfd_riscv_relax_section): New local undefined_weak. Set for
432 undef weak relocs that can be relaxed. Pass to relax_func call.
433
434 2019-09-20 Alan Modra <amodra@gmail.com>
435
436 * bfd-in.h (bfd_section_name, bfd_section_size, bfd_section_vma),
437 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
438 (bfd_section_userdata, bfd_is_com_section, discarded_section),
439 (bfd_get_section_limit_octets, bfd_get_section_limit): Delete macros.
440 * bfd.c (bfd_get_section_limit_octets, bfd_get_section_limit),
441 (bfd_section_list_remove, bfd_section_list_append),
442 (bfd_section_list_prepend, bfd_section_list_insert_after),
443 (bfd_section_list_insert_before, bfd_section_removed_from_list):
444 New inline functions.
445 * section.c (bfd_is_und_section, bfd_is_abs_section),
446 (bfd_is_ind_section, bfd_is_const_section, bfd_section_list_remove),
447 (bfd_section_list_append, bfd_section_list_prepend),
448 (bfd_section_list_insert_after, bfd_section_list_insert_before),
449 (bfd_section_removed_from_list): Delete macros.
450 (bfd_section_name, bfd_section_size, bfd_section_vma),
451 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
452 (bfd_section_userdata, bfd_is_com_section, bfd_is_und_section),
453 (bfd_is_abs_section, bfd_is_ind_section, bfd_is_const_section),
454 (discarded_section): New inline functions.
455 * bfd-in2.h: Regenerate.
456
457 2019-09-20 Alan Modra <amodra@gmail.com>
458
459 * bfd-in.h (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
460 (bfd_asymbol_bfd, bfd_asymbol_flavour, bfd_set_asymbol_name): Delete.
461 * bfd.c (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
462 (bfd_asymbol_bfd, bfd_set_asymbol_name): New inline functions.
463 * targets.c (bfd_asymbol_flavour): Likewise.
464 * bfd-in2.h: Regenerate.
465
466 2019-09-20 Alan Modra <amodra@gmail.com>
467
468 * archive.c (bfd_generic_archive_p): Use bfd_set_thin_archive.
469 * bfd-in.h (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
470 (bfd_get_target, bfd_get_flavour, bfd_family_coff, bfd_big_endian),
471 (bfd_little_endian, bfd_header_big_endian, bfd_header_little_endian),
472 (bfd_get_file_flags, bfd_applicable_file_flags),
473 (bfd_applicable_section_flags, bfd_has_map, bfd_is_thin_archive),
474 (bfd_valid_reloc_types, bfd_usrdata, bfd_get_start_address),
475 (bfd_get_symcount, bfd_get_outsymbols, bfd_count_sections),
476 (bfd_get_dynamic_symcount, bfd_get_symbol_leading_char): Delete.
477 * bfd/bfd.c (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
478 (bfd_get_file_flags, bfd_get_start_address, bfd_get_symcount),
479 (bfd_get_dynamic_symcount, bfd_get_outsymbols, bfd_count_sections),
480 (bfd_has_map, bfd_is_thin_archive, bfd_set_thin_archive),
481 (bfd_usrdata, bfd_set_usrdata): New inline functions.
482 * targets.c (bfd_get_target, bfd_get_flavour),
483 (bfd_applicable_file_flags, bfd_family_coff, bfd_big_endian),
484 (bfd_little_endian, bfd_header_big_endian),
485 (bfd_header_little_endian, bfd_applicable_section_flags),
486 (bfd_get_symbol_leading_char): New inline functions.
487 * bfd-in2.h: Regenerate.
488
489 2019-09-20 Alan Modra <amodra@gmail.com>
490
491 * elf64-ppc.c (ppc64_glibc_dynamic_reloc): New function.
492 (ppc64_elf_relocate_section): Warn if emitting unsupported dynamic
493 relocations.
494
495 2019-09-18 Alan Modra <amodra@gmail.com>
496
497 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma),
498 (bfd_get_section_lma, bfd_get_section_alignment),
499 (bfd_get_section_size, bfd_get_section_flags),
500 (bfd_get_section_userdata): Delete.
501 (bfd_section_name, bfd_section_size, bfd_section_vma),
502 (bfd_section_lma, bfd_section_alignment): Lose bfd parameter.
503 (bfd_section_flags, bfd_section_userdata): New.
504 (bfd_is_com_section): Rename parameter.
505 * section.c (bfd_set_section_userdata, bfd_set_section_vma),
506 (bfd_set_section_alignment, bfd_set_section_flags, bfd_rename_section),
507 (bfd_set_section_size): Delete bfd parameter, rename section parameter.
508 (bfd_set_section_lma): New.
509 * bfd-in2.h: Regenerate.
510 * mach-o.c (bfd_mach_o_init_section_from_mach_o): Delete bfd param,
511 update callers.
512 * aoutx.h, * bfd.c, * coff-alpha.c, * coff-arm.c, * coff-mips.c,
513 * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c,
514 * compress.c, * ecoff.c, * elf-eh-frame.c, * elf-hppa.h,
515 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-properties.c,
516 * elf-s390-common.c, * elf-vxworks.c, * elf.c, * elf32-arc.c,
517 * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c,
518 * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c, * elf32-csky.c,
519 * elf32-d10v.c, * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c,
520 * elf32-ft32.c, * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c,
521 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
522 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
523 * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c,
524 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
525 * elf32-nios2.c, * elf32-or1k.c, * elf32-ppc.c, * elf32-pru.c,
526 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
527 * elf32-score7.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
528 * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c, * elf32-visium.c,
529 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
530 * elf64-bpf.c, * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
531 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
532 * elflink.c, * elfnn-aarch64.c, * elfnn-ia64.c, * elfnn-riscv.c,
533 * elfxx-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c,
534 * elfxx-tilegx.c, * elfxx-x86.c, * i386msdos.c, * linker.c,
535 * mach-o.c, * mmo.c, * opncls.c, * pdp11.c, * pei-x86_64.c,
536 * peicode.h, * reloc.c, * section.c, * syms.c, * vms-alpha.c,
537 * xcofflink.c: Update throughout for bfd section macro and function
538 changes.
539
540 2019-09-18 Alan Modra <amodra@gmail.com>
541
542 * bfd-in.h (bfd_asymbol_section): Rename from bfd_get_section.
543 (bfd_get_output_section): Delete.
544 (bfd_asymbol_base): Delete.
545 (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
546 (bfd_asymbol_bfd, bfd_asymbol_flavour): Tidy.
547 (bfd_set_asymbol_name): New macro.
548 * bfd-in2.h: Regenerate.
549 * aout-cris.c: Update throughout to use bfd_asymbol_section.
550 * aoutx.h: Likewise.
551 * cofflink.c: Likewise.
552 * dwarf2.c: Likewise.
553 * ecoff.c: Likewise.
554 * elf.c: Likewise.
555 * elf32-arm.c: Likewise.
556 * elf32-mips.c: Likewise.
557 * elf32-score.c: Likewise.
558 * elf32-score7.c: Likewise.
559 * elfn32-mips.c: Likewise.
560 * elfnn-aarch64.c: Likewise.
561 * elfxx-mips.c: Likewise.
562 * linker.c: Likewise.
563 * pdp11.c: Likewise.
564 * elf64-mmix.c (mmix_elf_reloc): Part expand bfd_get_output_section.
565
566 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
567
568 * Makefile.in: Re-generate.
569 * configure: Re-generate.
570 * doc/Makefile.in: Re-generate.
571
572 2019-09-18 Alan Modra <amodra@gmail.com>
573
574 * aoutx.h (slurp_symbol_table): Don't set symcount using bfd_get
575 macros.
576 * pdp11.c (slurp_symbol_table): Likewise.
577 * som.c (som_slurp_symbol_table): Likewise.
578 * coff-ppc.c (ppc_bfd_coff_final_link): Likewise.
579 * coffcode.h (coff_slurp_symbol_table): Likewise.
580 * cofflink.c (_bfd_coff_final_link): Likewise.
581 * ecoff.c (ecoff_slurp_symbolic_header): Likewise.
582 (_bfd_ecoff_slurp_symbolic_info): Likewise.
583 (_bfd_ecoff_slurp_symbol_table): Likewise.
584 (_bfd_ecoff_bfd_final_link): Likewise.
585 * elf.c (_bfd_elf_canonicalize_symtab): Likewise.
586 * elflink.c (elf_link_output_symstrtab): Likewise.
587 (bfd_elf_final_link): Likewise.
588 * peicode.h (pe_ILF_build_a_bfd): Likewise.
589 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
590 * aoutx.h (some_aout_object_p, slurp_symbol_table): Don't set
591 start_address or symcount using bfd_get macros.
592 * coffgen.c (coff_real_object_p): Likewise.
593 * pdp11.c (some_aout_object_p, slurp_symbol_table): Likewise.
594 * som.c (som_object_setup, som_slurp_symbol_table): Likewise.
595 * elfcore.h (elf_core_file_p): Don't set start_address using
596 bfd_get macro.
597 * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Don't set dynsymcount
598 using bfd_get macro.
599 * bfd.c (bfd_set_file_flags): Don't set flags using bfd_get macro.
600 * linker.c (bfd_generic_link_read_symbols): Don't set outsymbols
601 or symcount using bfd_get macros.
602 (_bfd_generic_final_link, generic_add_output_symbol): Likewise.
603 * syms.c (bfd_set_symtab): Likewise.
604 * vms-alpha.c (alpha_vms_bfd_final_link): Likewise.
605 * archive.c (do_slurp_bsd_armap): Don't set has_armap using
606 bfd_has_map macro.
607 (do_slurp_coff_armap, bfd_slurp_armap): Likewise.
608 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
609 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Likewise.
610 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
611 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
612 * som.c (som_slurp_armap): Likewise.
613
614 2019-09-18 Alan Modra <amodra@gmail.com>
615
616 * archures.c (bfd_get_arch): Make param const.
617 (bfd_get_mach, bfd_arch_bits_per_byte): Likewise.
618 (bfd_arch_bits_per_address, bfd_octets_per_byte): Likewise.
619 * bfd-in2.h: Regenerate.
620
621 2019-09-18 Alan Modra <amodra@gmail.com>
622
623 * bfd-in.h (carsym.name): Make const.
624 * reloc.c (struct reloc_howto_struct.name): Likewise.
625 * targets.c (bfd_target.name): Likewise.!
626 * bfd.c (bfd_get_sign_extend_vma): Make variable const.
627 * som.c (som_bfd_fill_in_ar_symbols): Use an intermediary variable
628 when setting carsym.name.
629 * bfd-in2.h: Regenerate.
630
631 2019-09-18 Alan Modra <amodra@gmail.com>
632
633 * mach-o.c (bfd_mach_o_fat_member_init): Likewise. Replace
634 xstrdup and xmalloc with bfd_strdup and bfd_malloc. Return an
635 error status. Adjust calls.
636 * vms-lib.c (_bfd_vms_lib_get_module): Test mhd->id earlier.
637 Close bfd on failure. Replace xstrdup/bfd_alloc use with
638 bfd_malloc. Use bfd_set_filename.
639
640 2019-09-18 Alan Modra <amodra@gmail.com>
641
642 * elf64-ppc.c (must_be_dyn_reloc): Return 0 for TOC16 relocs.
643 (ppc64_elf_check_relocs): Support dynamic/copy relocs for TOC16.
644 (ppc64_elf_adjust_dynamic_symbol): Don't keep dynamic reloc when
645 needs_copy even if all relocs are in rw sections.
646 (dec_dynrel_count): Handle TOC16 relocs.
647 (ppc64_elf_relocate_section): Support dynamic relocs for TOC16.
648 (ppc64_elf_finish_dynamic_symbol): Adjust to handle needs_copy
649 semantic change.
650
651 2019-09-16 Phil Blundell <pb@pbcl.net>
652
653 * version.m4: Set version to 2.33.50.
654 * Makefile.in, configure, doc/Makefile.in: Regenerated.
655
656 2019-09-11 Tom Tromey <tom@tromey.com>
657
658 * opncls.c (bfd_set_filename): New function.
659 * bfd-in2.h: Regenerate.
660
661 2019-09-11 Alan Modra <amodra@gmail.com>
662
663 * targets.c (struct bfd_target): Add _bfd_group_name.
664 (BFD_JUMP_TABLE): Likewise.
665 * coffgen.c (bfd_coff_group_name): New function.
666 * elf.c (bfd_elf_group_name): New function.
667 * linker.c (_bfd_nolink_bfd_group_name): New function.
668 * section.c (bfd_generic_group_name): New function.
669 * elf-bfd.h (bfd_elf_group_name): Declare.
670 * libbfd-in.h (_bfd_nolink_bfd_group_name): Declare.
671 * libcoff-in.h (bfd_coff_group_name): Declare.
672 * aout-target.h (MY_bfd_group_name): Define.
673 * aout-tic30.c (MY_bfd_group_name): Define.
674 * bfd.c (bfd_group_name): Define.
675 * binary.c (binary_bfd_group_name): Define.
676 * coff-alpha.c (_bfd_ecoff_bfd_group_name): Define.
677 * coff-mips.c (_bfd_ecoff_bfd_group_name): Define.
678 * coff-rs6000.c (_bfd_xcoff_bfd_group_name): Define.
679 * coffcode.h (coff_bfd_group_name): Define.
680 * elfxx-target.h (bfd_elfNN_bfd_group_name): Define.
681 * i386msdos.c (msdos_bfd_group_name): Define.
682 * ihex.c (ihex_bfd_group_name): Define.
683 * mach-o-target.c (bfd_mach_o_bfd_group_name): Define.
684 * mmo.c (mmo_bfd_group_name): Define.
685 * pef.c (bfd_pef_bfd_group_name): Define.
686 * plugin.c (bfd_plugin_bfd_group_name): Define.
687 * ppcboot.c (ppcboot_bfd_group_name): Define.
688 * som.c (som_bfd_group_name): Define.
689 * srec.c (srec_bfd_group_name): Define.
690 * tekhex.c (tekhex_bfd_group_name): Define.
691 * verilog.c (verilog_bfd_group_name): Define.
692 * vms-alpha.c (vms_bfd_group_name, alpha_vms_bfd_group_name): Define.
693 * xsym.c (bfd_sym_bfd_group_name): Define.
694 * coff64-rs6000.c (rs6000_xcoff64_vec): Init new field.
695 (rs6000_xcoff64_aix_vec): Likewise.
696 * bfd-in2.h: Regenerate.
697 * libbfd.h: Regenerate.
698 * libcoff.h: Regenerate.
699
700 2019-09-10 Nick Clifton <nickc@redhat.com>
701
702 PR 24907
703 * archures.c (bfd_arch_info_type): Add max_reloc_offset_into_insn
704 field.
705 (bfd_default_arch_struct): Initialise the new field.
706 * bfd-in2.h: Regenerate.
707 * cpu-aarch64.c: Initialise the new field.
708 * cpu-alpha.c: Likewise.
709 * cpu-arc.c: Likewise.
710 * cpu-arm.c: Likewise.
711 * cpu-avr.c: Likewise.
712 * cpu-bfin.c: Likewise.
713 * cpu-bpf.c: Likewise.
714 * cpu-cr16.c: Likewise.
715 * cpu-cr16c.c: Likewise.
716 * cpu-cris.c: Likewise.
717 * cpu-crx.c: Likewise.
718 * cpu-csky.c: Likewise.
719 * cpu-d10v.c: Likewise.
720 * cpu-d30v.c: Likewise.
721 * cpu-dlx.c: Likewise.
722 * cpu-epiphany.c: Likewise.
723 * cpu-fr30.c: Likewise.
724 * cpu-frv.c: Likewise.
725 * cpu-ft32.c: Likewise.
726 * cpu-h8300.c: Likewise.
727 * cpu-hppa.c: Likewise.
728 * cpu-i386.c: Likewise.
729 * cpu-ia64.c: Likewise.
730 * cpu-iamcu.c: Likewise.
731 * cpu-ip2k.c: Likewise.
732 * cpu-iq2000.c: Likewise.
733 * cpu-k1om.c: Likewise.
734 * cpu-l1om.c: Likewise.
735 * cpu-lm32.c: Likewise.
736 * cpu-m10200.c: Likewise.
737 * cpu-m10300.c: Likewise.
738 * cpu-m32c.c: Likewise.
739 * cpu-m32r.c: Likewise.
740 * cpu-m68hc11.c: Likewise.
741 * cpu-m68hc12.c: Likewise.
742 * cpu-m68k.c: Likewise.
743 * cpu-m9s12x.c: Likewise.
744 * cpu-m9s12xg.c: Likewise.
745 * cpu-mcore.c: Likewise.
746 * cpu-mep.c: Likewise.
747 * cpu-metag.c: Likewise.
748 * cpu-microblaze.c: Likewise.
749 * cpu-mips.c: Likewise.
750 * cpu-mmix.c: Likewise.
751 * cpu-moxie.c: Likewise.
752 * cpu-msp430.c: Likewise.
753 * cpu-mt.c: Likewise.
754 * cpu-nds32.c: Likewise.
755 * cpu-nfp.c: Likewise.
756 * cpu-nios2.c: Likewise.
757 * cpu-ns32k.c: Likewise.
758 * cpu-or1k.c: Likewise.
759 * cpu-pdp11.c: Likewise.
760 * cpu-pj.c: Likewise.
761 * cpu-plugin.c: Likewise.
762 * cpu-powerpc.c: Likewise.
763 * cpu-pru.c: Likewise.
764 * cpu-riscv.c: Likewise.
765 * cpu-rl78.c: Likewise.
766 * cpu-rs6000.c: Likewise.
767 * cpu-rx.c: Likewise.
768 * cpu-s12z.c: Likewise.
769 * cpu-s390.c: Likewise.
770 * cpu-score.c: Likewise.
771 * cpu-sh.c: Likewise.
772 * cpu-sparc.c: Likewise.
773 * cpu-spu.c: Likewise.
774 * cpu-tic30.c: Likewise.
775 * cpu-tic4x.c: Likewise.
776 * cpu-tic54x.c: Likewise.
777 * cpu-tic6x.c: Likewise.
778 * cpu-tic80.c: Likewise.
779 * cpu-tilegx.c: Likewise.
780 * cpu-tilepro.c: Likewise.
781 * cpu-v850.c: Likewise.
782 * cpu-v850_rh850.c: Likewise.
783 * cpu-vax.c: Likewise.
784 * cpu-visium.c: Likewise.
785 * cpu-wasm32.c: Likewise.
786 * cpu-xc16x.c: Likewise.
787 * cpu-xgate.c: Likewise.
788 * cpu-xstormy16.c: Likewise.
789 * cpu-xtensa.c: Likewise.
790 * cpu-z80.c: Likewise.
791 * cpu-z8k.c: Likewise.
792
793 2019-09-09 Phil Blundell <pb@pbcl.net>
794
795 binutils 2.33 branch created.
796
797 2019-09-06 Alan Modra <amodra@gmail.com>
798
799 * aout-target.h (object_p): Formatting.
800 * bfd-in.h (bfd_get_filename): Don't cast to char*.
801 * corefile.c (generic_core_file_matches_executable_p): Constify
802 variables and remove cast.
803 * bfd-in2.h: Regenerate.
804
805 2019-09-05 Alan Modra <amodra@gmail.com>
806
807 * elf64-ppc.c (ppc64_elf_check_relocs): Interpret an addend in
808 GOT_PCREL and PLT_PCREL relocs as affecting the value stored
809 in the GOT/PLT entry rather than affecting the offset to that
810 GOI/PLT entry.
811 (ppc64_elf_edit_toc, ppc64_elf_relocate_section): Likewise.
812
813 2019-09-05 Alan Modra <amodra@gmail.com>
814
815 * elf64-ppc.c (xlate_pcrel_opt): Handle prefix loads and stores
816 in second instruction.
817 (ppc64_elf_relocate_section): Likewise.
818
819 2019-09-05 Alan Modra <amodra@gmail.com>
820
821 PR 24955
822 * libbfd-in.h (bfd_strdup): New inline function.
823 * archive.c (_bfd_get_elt_at_filepos): Use bfd_strdup. Close
824 bfd on error.
825 * elfcode.h (_bfd_elf_bfd_from_remote_memory): Use bfd_strdup.
826 * opncls.c (bfd_fopen): Use bfd_strdup. Close fd and stream
827 on error.
828 (bfd_openstreamr): Use bfd_strdup.
829 (bfd_openr_iovec, bfd_openw, bfd_create): Likewise.
830 * plugin.c (try_load_plugin): Use bfd_malloc.
831 * libbfd.h: Regenerate.
832
833 2019-09-02 Alan Modra <amodra@gmail.com>
834
835 PR 11983
836 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Free debug_filename
837 on success. Tidy.
838 (read_alt_indirect_string): Likewise.
839 (read_alt_indirect_ref): Likewise.
840
841 2019-08-31 Jim Wilson <jimw@sifive.com>
842
843 PR 23825
844 * elfnn-riscv.c (riscv_elf_create_dynamic_sections): Add SEC_LOAD,
845 SEC_DATA, and SEC_HAS_CONTENTS to .tdata.dyn section.
846
847 2019-08-30 Jim Wilson <jimw@sifive.com>
848
849 * elfnn-riscv.c (riscv_elf_relocate_section): For unresolvable reloc
850 error, call bfd_set_error, set ret to FALSE, and goto out label.
851
852 2019-08-30 H.J. Lu <hongjiu.lu@intel.com>
853
854 PR ld/24951
855 * archive.c (_bfd_get_elt_at_filepos): Copy BFD_COMPRESS,
856 BFD_DECOMPRESS and BFD_COMPRESS_GABI flags for thin archive.
857
858 2019-08-29 Alan Modra <amodra@gmail.com>
859
860 PR 24697
861 * elf32-ppc.c (ppc_elf_check_relocs): Call bad_shared_reloc
862 when !bfd_link_executable for R_PPC_EMB_SDA2I16 and
863 R_PPC_EMB_SDA2REL. Don't call bad_shared_reloc for any other
864 reloc.
865
866 2019-08-29 Alan Modra <amodra@gmail.com>
867
868 * elf64-ppc.c (xlate_pcrel_opt): Add poff parameter. Allow offset
869 on second insn, return it in poff.
870 (ppc64_elf_relocate_section): Add offset to paddi addend for
871 PCREL_OPT.
872
873 2019-08-28 Jim Wilson <jimw@sifive.com>
874
875 * elfnn-riscv.c (_bfd_riscv_relax_lui): Add check to exclude abs
876 section when setting max_alignment. Update comment.
877 (_bfd_riscv_relax_pc): Likewise.
878
879 2019-08-29 Alan Modra <amodra@gmail.com>
880
881 PR 24891
882 * bfd.c (struct bfd): Add no_element_cache.
883 * archive.c (_bfd_get_elt_at_filepos): Don't add element to
884 archive cache when no_element_cache.
885 (bfd_generic_archive_p): Set no_element_cache when opening first
886 element to check format. Close first element too.
887 (do_slurp_bsd_armap): Don't zero ardata->cache here.
888 * bfd-in2.h: Regenerate.
889
890 2019-08-24 Alan Modra <amodra@gmail.com>
891
892 * elf64-ppc.c (ppc64_elf_edit_toc): Exclude undefined weak
893 symbols from GOT optimisation.
894
895 2019-08-23 Stafford Horne <shorne@gmail.com>
896
897 * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Use correct value for
898 PLT GOT entries.
899
900 2019-08-23 Nick Clifton <nickc@redhat.com>
901
902 PR 24456
903 * elf.c (bfd_section_from_shdr): Issue an informative warning
904 message and continue processing other sections after encountering
905 a reloc section for a section which already has other relocs
906 associated with it.
907
908 2019-08-23 Alan Modra <amodra@gmail.com>
909
910 PR 24933
911 * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Don't exit
912 on error without freeing plts[] contents.
913
914 2019-08-22 Dennis Zhang <dennis.zhang@arm.com>
915
916 * cpu-arm.c: New entries for Cortex-M35P, Cortex-A77, Cortex-A76AE.
917
918 2019-08-22 Nick Clifton <nickc@redhat.com>
919
920 PR 24922
921 * pei-x86_64.c (pex64_xdata_print_uwd_codes): Add checks before
922 reading data from extra records.
923
924 2019-08-22 Tamar Christina <tamar.christina@arm.com>
925
926 PR ld/24601
927 * elfnn-aarch64.c (aarch64_relocate): Handle weak TLS and undefined TLS.
928 Also Pass input_bfd to _bfd_aarch64_elf_resolve_relocation.
929 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use it.
930 * elfxx-aarch64.h (_bfd_aarch64_elf_resolve_relocation): Emit warning
931 for weak TLS.
932
933 2019-08-22 Alan Modra <amodra@gmail.com>
934
935 * elf32-arm.c (cmse_scan): Don't use ARM_GET_SYM_CMSE_SPCL,
936 instead recognize CMSE_PREFIX in symbol name.
937 (elf32_arm_gc_mark_extra_sections): Likewise.
938 (elf32_arm_filter_cmse_symbols): Don't test ARM_GET_SYM_CMSE_SPCL.
939 (elf32_arm_swap_symbol_in): Don't invoke ARM_SET_SYM_CMSE_SPCL.
940
941 2019-08-20 Dennis Zhang <dennis.zhang@arm.com>
942
943 * cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
944 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
945
946 2019-08-20 Tamar Christina <tamar.christina@arm.com>
947
948 * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
949 elf32_arm_stub_long_branch_v4t_thumb_thumb,
950 elf32_arm_stub_long_branch_v4t_thumb_arm,
951 elf32_arm_stub_short_branch_v4t_thumb_arm,
952 elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
953 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
954 elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
955 previous instruction.
956
957 2019-08-19 Tom Tromey <tromey@adacore.com>
958
959 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
960 holding symbols.
961
962 2019-08-19 Alan Modra <amodra@gmail.com>
963
964 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
965 to has_optrel.
966 (struct _ppc64_elf_section_data): Likewise.
967 (ppc64_elf_check_relocs): Set has_optrel for more relocs.
968 (ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
969 than TOC loop. Check PLT16 insns too.
970
971 2019-08-16 H.J. Lu <hongjiu.lu@intel.com>
972
973 PR ld/24905
974 * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
975 PC-relative relocations back to ...
976 (elf_x86_64_relocate_section): Here.
977
978 2019-08-16 Martin Liska <mliska@suse.cz>
979
980 PR ld/24912
981 * elflink.c: Report error only for not relocatable.
982 * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
983 here lto_slim_object as it's handled in caller.
984
985 2019-08-16 Alan Modra <amodra@gmail.com>
986
987 * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
988
989 2019-08-15 Jim Wilson <jimw@sifive.com>
990
991 * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
992 RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
993 to c.li instruction, and use ENCODE_RVC_IMM to set value.
994
995 2019-08-15 Tom Tromey <tromey@adacore.com>
996
997 * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
998 of section.
999
1000 2019-08-14 Alan Modra <amodra@gmail.com>
1001
1002 PR 24623
1003 * dwarf2.c (stash_comp_unit): New function, extracted from..
1004 (_bfd_dwarf2_find_nearest_line): ..here.
1005 (find_abstract_instance): Parse comp units and decode line info
1006 as needed.
1007
1008 2019-08-14 Alan Modra <amodra@gmail.com>
1009
1010 * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
1011 (comp_unit_find_nearest_line): Use it here..
1012 (_bfd_dwarf2_find_symbol_bias): ..and here.
1013
1014 2019-08-14 Alan Modra <amodra@gmail.com>
1015
1016 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
1017 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
1018 * coffgen.c (coff_find_nearest_line_with_names): Adjust
1019 _bfd_dwarf2_find_nearest_line calls.
1020 * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
1021 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
1022 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
1023 * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
1024 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
1025 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
1026 * libbfd.h: Regenerate.
1027
1028 2019-08-09 Mihailo Stojanovic <mihailo.stojanovic@rt-rk.com>
1029
1030 * elf-bfd.h (struct elf_backend_data): New members.
1031 * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
1032 .gnu.hash section if necessary.
1033 (struct collect_gnu_hash_codes): New member.
1034 (elf_gnu_hash_process_symidx): New function name.
1035 (elf_renumber_gnu_hash_syms): Ignore local and undefined
1036 symbols. Record xlat location for every symbol which should have
1037 a .MIPS.xhash entry.
1038 (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
1039 dynamic section if necessary.
1040 (GNU_HASH_SECTION_NAME): New define.
1041 (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
1042 Update the section size info.
1043 * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
1044 (struct mips_elf_link_hash_entry): New member.
1045 (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
1046 table location.
1047 (mips_elf_sort_hash_table): Initialize the pointer to the
1048 .MIPS.xhash section.
1049 (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
1050 translation table entry with the symbol dynindx.
1051 (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
1052 (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
1053 info.
1054 (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
1055 section.
1056 (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
1057 dynamic section.
1058 (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
1059 (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
1060 sh_link info.
1061 (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
1062 (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
1063 (_bfd_mips_post_process_headers): Mark the ABI version as
1064 MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
1065 but not a .hash section.
1066 (_bfd_mips_elf_record_xhash_symbol): New function. Record a
1067 position in the translation table, associated with the hash
1068 entry.
1069 * elfxx-mips.h (literal_reloc_p): Define
1070 elf_backend_record_xhash_symbol backend hook.
1071 * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
1072 backend hook.
1073
1074 2019-08-07 Jose E. Marchesi <jose.marchesi@oracle.com>
1075
1076 * elf64-bpf.c (bpf_elf_relocate_section): New function.
1077 (bpf_elf_insn_disp_reloc): Delete function.
1078 (elf_backend_relocate_section): Define.
1079
1080 2019-08-07 Alan Modra <amodra@gmail.com>
1081
1082 PR 24644
1083 * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
1084 for overflow in expressions involving nsymz.
1085
1086 2019-08-01 Ilia Diachkov <ilia.diachkov@optimitech.com>
1087
1088 * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
1089 two pages in relro presence.
1090
1091 2019-08-01 Max Filippov <jcmvbkbc@gmail.com>
1092
1093 * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
1094 (get_wsr_lbeg_opcode): New functions.
1095 (check_loop_aligned): Detect relaxed loops and adjust loop_len
1096 and insn_len for the first actual instruction of the loop.
1097
1098 2019-07-30 Alan Modra <amodra@gmail.com>
1099
1100 PR 24768
1101 * bfd.c (struct bfd): Add lto_slim_object flag.
1102 * bfd-in2.h: Regenerate.
1103
1104 2019-07-29 Martin Liska <mliska@suse.cz>
1105
1106 PR 24768
1107 * archive.c (_bfd_compute_and_write_armap): Come up with
1108 report_plugin_err variable.
1109 * bfd-in2.h (struct bfd): Add lto_slim_object flag.
1110 * elf.c (struct lto_section): New.
1111 (_bfd_elf_make_section_from_shdr): Parse content of
1112 .gnu_lto_.lto section.
1113 * elflink.c: Report error for a missing LTO plugin.
1114 * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
1115
1116 2019-07-28 Alan Modra <amodra@gmail.com>
1117
1118 PR 24857
1119 PR 24339
1120 * elflink.c (elf_link_add_object_symbols): Report an informative
1121 error on finding local symbols with index equal or greater than
1122 symbol table sh_info. Correct comment. Allow such symbols in
1123 dynamic objects. Abort on NULL section for symbol.
1124
1125 2019-07-26 Alan Modra <amodra@gmail.com>
1126
1127 * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
1128 (elf_linker): Don't define.
1129 * elflink.c (bfd_elf_final_link): Don't set elf_linker.
1130
1131 2019-07-25 YunQiang Su <syq@debian.org>
1132
1133 PR 24832
1134 * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
1135 mips inputs.
1136
1137 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
1138
1139 * elf32-arc.c (bfd_get_32_me): Add a small description, fix
1140 formating.
1141 (reloc_type_to_name): Fix formating.
1142 (arc_elf_object_p): Likewise.
1143 (debug_arc_reloc): Likewise.
1144 (arc_do_relocation): Likewise.
1145
1146 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
1147
1148 * elf32-arc.c (bfd_get_32_me): New function.
1149 (bfd_put_32_me): Likewise.
1150 (arc_elf_relax_section): Likewise.
1151 (bfd_elf32_bfd_relax_section): Define.
1152
1153 2019-07-24 Alan Modra <amodra@gmail.com>
1154
1155 * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
1156 elf_backend_final_write_processing, don't pass linker arg.
1157 (_bfd_elf_final_write_processing): Update prototype.
1158 * elf.c (_bfd_elf_write_object_contents): Adjust call.
1159 (_bfd_elf_final_write_processing): Return error on incompatible
1160 OSABI and has_gnu_osabi. Remove linker arg.
1161 * elf-nacl.h (nacl_final_write_processing): Update prototype.
1162 * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
1163 * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
1164 (_bfd_mips_elf_final_write_processing): Likewise.
1165 * elf-hppa.h (elf_hppa_final_write_processing): Return status
1166 and remove linker arg.
1167 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
1168 * elf-nacl.c (nacl_final_write_processing): Likewise.
1169 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
1170 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1171 * elf32-arm.c (arm_final_write_processing): Likewise.
1172 (elf32_arm_final_write_processing): Likewise.
1173 (elf32_arm_nacl_final_write_processing): Likewise.
1174 (elf32_arm_vxworks_final_write_processing): Likewise.
1175 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
1176 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
1177 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
1178 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
1179 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
1180 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
1181 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
1182 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
1183 * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
1184 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
1185 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
1186 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
1187 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
1188 * elf32-ppc.c (ppc_final_write_processing): Likewise.
1189 (ppc_elf_final_write_processing): Likewise.
1190 (ppc_elf_vxworks_final_write_processing): Likewise.
1191 * elf32-sparc.c (sparc_final_write_processing): Likewise.
1192 (elf32_sparc_final_write_processing): Likewise.
1193 (elf32_sparc_vxworks_final_write_processing): Likewise.
1194 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
1195 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
1196 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1197 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
1198 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
1199 * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
1200 (_bfd_mips_elf_final_write_processing): Likewise.
1201
1202 2019-07-24 Alan Modra <amodra@gmail.com>
1203
1204 * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
1205 early.
1206 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1207 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1208
1209 2019-07-24 Alan Modra <amodra@gmail.com>
1210
1211 * elf32-visium.c (visium_elf_post_process_headers): Don't set
1212 EI_OSABI header byte here.
1213 (ELF_OSABI): Define.
1214
1215 2019-07-23 Alan Modra <amodra@gmail.com>
1216
1217 * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
1218 * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
1219 (get_program_header_size): Formatting. Only test SH_GNU_MBIND
1220 when elf_gnu_osabi_mbind is set.
1221 (_bfd_elf_map_sections_to_segments): Likewise.
1222 (_bfd_elf_init_private_section_data): Likewise.
1223 (_bfd_elf_final_write_processing): Update comment.
1224 * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
1225 (elf_backend_special_sections): Define without .tbss for linux.
1226
1227 2019-07-23 Alan Modra <amodra@gmail.com>
1228
1229 * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
1230 Remove none, any, all enums.
1231 (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
1232 (_bfd_elf_final_write_processing): Declare.
1233 * elf.c (_bfd_elf_write_object_contents): Unconditionally call
1234 elf_backend_final_write_processing.
1235 (_bfd_elf_post_process_headers): Move body of function to..
1236 (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
1237 only when not already set. Adjust for rename.
1238 * elfxx-target.h (elf_backend_final_write_processing): Default to
1239 _bfd_elf_final_write_processing.
1240 * elf-hppa.h (elf_hppa_final_write_processing): Call
1241 _bfd_elf_final_write_processing.
1242 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
1243 * elf-nacl.c (nacl_final_write_processing): Likewise.
1244 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
1245 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1246 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
1247 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
1248 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
1249 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
1250 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
1251 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
1252 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
1253 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
1254 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
1255 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
1256 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
1257 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
1258 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
1259 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
1260 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1261 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
1262 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
1263 * elf32-arm.c (arm_final_write_processing): Split out from..
1264 (elf32_arm_final_write_processing): ..here. Call
1265 _bfd_elf_final_write_processing.
1266 (elf32_arm_nacl_final_write_processing): Adjust.
1267 * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
1268 (_bfd_mips_elf_final_write_processing): ..here. Call
1269 _bfd_elf_final_write_processing.
1270 * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
1271 * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
1272 * elf32-ppc.c (ppc_final_write_processing): Split out from..
1273 (ppc_elf_final_write_processing): ..here. Call
1274 _bfd_elf_final_write_processing.
1275 (ppc_elf_vxworks_final_write_processing): Adjust.
1276 * elf32-sparc.c (sparc_final_write_processing): Split out from..
1277 (elf32_sparc_final_write_processing): ..here. Call
1278 _bfd_elf_final_write_processing.
1279 (elf32_sparc_vxworks_final_write_processing): Adjust.
1280 * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
1281 * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
1282 * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
1283 * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
1284 * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
1285 * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
1286 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1287 * elflink.c (elf_link_add_object_symbols): Likewise.
1288 (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
1289 instead.
1290
1291 2019-07-23 Omar Majid <omajid@redhat.com>
1292
1293 * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
1294 I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
1295 AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
1296 AMD64_NETBSD_MAGIC.
1297 * peXXigen.c: Add comment about source of .NET magic numbers.
1298
1299 2019-07-19 Alan Modra <amodra@gmail.com>
1300
1301 * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
1302 (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
1303 (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
1304 (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
1305 * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
1306 (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
1307 (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
1308 (ppc64_elf_check_relocs): Support pcrel tls relocs.
1309 (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
1310 * bfd-in2.h: Regenerate.
1311 * libbfd.h: Regenerate.
1312
1313 2019-07-18 Alan Modra <amodra@gmail.com>
1314
1315 * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
1316 a TLS section symbol for edited relocs. Tighten TLS symbol/reloc
1317 match test.
1318
1319 2019-07-18 Alan Modra <amodra@gmail.com>
1320
1321 * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
1322 (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
1323 is more than 8 bits.
1324 (ppc64_elf_tls_optimize): Likewise. Make tls_set, tls_clear, and
1325 tls_type vars unsigned int.
1326 (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
1327 to select r_type edit.
1328
1329 2019-07-18 Alan Modra <amodra@gmail.com>
1330
1331 * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
1332 Correct comment.
1333 * elf64-ppc.c (TLS_GDIE): Likewise.
1334
1335 2019-07-18 Alan Modra <amodra@gmail.com>
1336
1337 * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
1338 range of tp-relative offsets.
1339
1340 2019-07-15 Alan Modra <amodra@gmail.com>
1341
1342 * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
1343 alias is no longer bfd_link_hash_defined, clear the alias.
1344
1345 2019-07-13 Alan Modra <amodra@gmail.com>
1346
1347 * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
1348 tls_sec.
1349 (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
1350 (_bfd_elf_init_2_index_sections): Likewise.
1351 * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
1352 relocations for local TLS symbols, use STN_UNDEF as the relocation
1353 symbol.
1354 * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
1355 leave TLS symbol value in the addend.
1356
1357 2019-07-08 Alan Modra <amodra@gmail.com>
1358
1359 PR 24785
1360 * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
1361 size before reading first word.
1362
1363 2019-07-02 Nick Clifton <nickc@redhat.com>
1364
1365 PR 24717
1366 * elf.c (is_debuginfo_file): New function.
1367 (assign_file_positions_for_non_load_sections): Do not warn about
1368 allocated sections outside of loadable segments if they are found
1369 in a debuginfo file.
1370 * elf-bfd.h (is_debuginfo_file): Prototype.
1371
1372 2019-07-02 Nick Clifton <nickc@redhat.com>
1373
1374 PR 24753
1375 * compress.c (bfd_get_full_section_contents): Do not complain
1376 about linker created sections that are larger than the file size.
1377
1378 2019-07-02 Christophe Lyon <christophe.lyon@linaro.org>
1379
1380 * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
1381 (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
1382 for CMSE stubs.
1383 (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
1384
1385 2019-07-02 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1386
1387 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
1388 sections when .text section contain secure entry functions
1389 is marked.
1390
1391 2019-07-01 Nick Clifton <nickc@redhat.com>
1392
1393 PR 23839
1394 * elf32-arm.c (elf32_arm_update_relocs): Do not include the
1395 section VMA in the offset used to update exidx relocs.
1396
1397 2019-06-28 Nick Clifton <nickc@redhat.com>
1398
1399 PR 24708
1400 * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
1401 large version reference section.
1402 * compress.c (bfd_get_full_section_contents): Check for an
1403 uncompressed section whose size is larger than the file size.
1404
1405 2019-06-28 Alan Modra <amodra@gmail.com>
1406
1407 * format.c (bfd_check_format_matches): Don't match plugin target
1408 if another target matches. Expand comment.
1409 * targets.c (_bfd_target_vector): Move plugin_vec after all other
1410 non-corefile targets, outside !SELECT_VECS.
1411 * config.bfd: Don't handle targ=plugin here.
1412 * configure.ac: Don't add plugin to enable_targets or handle in
1413 target loop setting selvecs and other target vars.
1414 * configure: Regenerate.
1415
1416 2019-06-26 Nick Clifton <nickc@redhat.com>
1417
1418 PR 24703
1419 * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
1420 messages for failures.
1421 * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
1422 if returning an error value.
1423
1424 2019-06-25 Jan Beulich <jbeulich@suse.com>
1425
1426 * elf-properties.c (elf_find_and_remove_property): Rename last
1427 parameter. Mention it in comment.
1428
1429 2019-06-24 Ilia Diachkov <ilia.diachkov@optimitech.com>
1430
1431 * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
1432 SEC_MERGE or SEC_CODE flags are set.
1433 (_bfd_riscv_relax_section): New local symtype. Set sym_sec and
1434 symtype consistently. Don't include sec_addr (sym_sec) in symval.
1435 Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
1436 Add sec_addr (sym_sec) after handling merge sections.
1437
1438 2019-06-24 H.J. Lu <hongjiu.lu@intel.com>
1439
1440 PR ld/24721
1441 * elf-properties.c (elf_merge_gnu_property_list): Remove the
1442 property after reporting property removal.
1443
1444 2019-06-23 Alan Modra <amodra@gmail.com>
1445
1446 PR 24704
1447 * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
1448 (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
1449 Reduce range of offsets allowed for other GOT relocs.
1450
1451 2019-06-23 Alan Modra <amodra@gmail.com>
1452
1453 PR 24689
1454 * elfcode.h (elf_object_p): Warning fix.
1455
1456 2019-06-21 Alan Modra <amodra@gmail.com>
1457
1458 PR 24689
1459 * elfcode.h (elf_object_p): Check type of e_shstrndx section.
1460
1461 2019-06-19 Alan Modra <amodra@gmail.com>
1462
1463 PR 24697
1464 * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
1465 R_PPC_EMB_RELSDA. Mask low bit of R_PPC_EMB_SDA21 r_offset.
1466
1467 2019-06-19 Alan Modra <amodra@gmail.com>
1468
1469 * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
1470 functions that require r2 valid to use local entry.
1471 (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
1472
1473 2019-06-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
1474
1475 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
1476 (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
1477 with elfNN_aarch64_allocate_local_dynrelocs.
1478
1479 2019-06-14 Szabolcs Nagy <szabolcs.nagy@arm.com>
1480
1481 * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
1482
1483 2019-06-14 Alan Modra <amodra@gmail.com>
1484
1485 * Makefile.in: Regenerate.
1486 * configure: Regenerate.
1487
1488 2019-06-14 Alan Modra <amodra@gmail.com>
1489
1490 * elf64-ppc.c: Fix comments involving paddi.
1491
1492 2019-06-12 Adam Lackorzymski <adam@os.inf.tu-dresden.de>
1493
1494 PR 24643
1495 * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
1496 absent, or the bfd is not in the ELF formart.
1497 * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
1498
1499 2019-06-10 Christos Zoulas <christos@zoulas.com>
1500
1501 PR 24650
1502 * elf.c (elfcore_make_auxv_note_section): New function.
1503 (elfcore_grok_note): Use it.
1504 (elfcore_grok_freebsd_note): Likewise.
1505 (elfcore_grok_openbsd_note): Likewise.
1506 (elfcore_grok_netbsd_note): Likewise. Plus add support for
1507 NT_NETBSDCORE_AUXV notes.
1508
1509 2019-06-06 Sudakshina Das <sudi.das@arm.com>
1510
1511 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
1512 alignment of the new gnu property section.
1513
1514 2019-06-06 Sudakshina Das <sudi.das@arm.com>
1515
1516 * bfd-in.h: Change comment.
1517 * bfd-in2.h: Regenerate.
1518 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
1519 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
1520 Likwise.
1521
1522 2019-05-28 Faraz Shahbazker <fshahbazker@wavecomp.com>
1523
1524 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
1525 Remove overflow check.
1526
1527 2019-05-28 Alan Modra <amodra@gmail.com>
1528
1529 PR 24596
1530 * cofflink.c (coff_link_check_archive_element): Don't assume
1531 element is a coff object file after calling add_archive_element.
1532
1533 2019-05-28 Alan Modra <amodra@gmail.com>
1534
1535 PR 24596
1536 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
1537 attempt to set sh_entsize for excluded PLT section.
1538
1539 2019-05-28 Alan Modra <amodra@gmail.com>
1540
1541 PR 24596
1542 * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
1543 to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
1544 allocated in alpha_dynamic_entries_for_reloc.
1545
1546 2019-05-28 Alan Modra <amodra@gmail.com>
1547
1548 PR 24596
1549 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
1550 on NULL output_section.
1551 * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
1552
1553 2019-05-28 Alan Modra <amodra@gmail.com>
1554
1555 PR 24596
1556 * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
1557 entry when MUST_FIND. Abort when MUST_FIND not found.
1558 (elf_m68k_get_bfd2got_entry): Likewise.
1559 (elf_m68k_relocate_section): Remove now useless assert.
1560
1561 2019-05-28 Alan Modra <amodra@gmail.com>
1562
1563 PR 24596
1564 * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
1565 from bfd_link_info, not an output section owner.
1566 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
1567 (elf_hppa_final_link_relocate): Likewise.
1568
1569 2019-05-28 Alan Modra <amodra@gmail.com>
1570
1571 PR 24596
1572 * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
1573 create_object_symbols_section, obj_textsec, obj_datasec or
1574 obj_bsssec. Fix other errors in placement.
1575 * config.bfd: Obsolete tic30-aout.
1576
1577 2019-05-28 Alan Modra <amodra@gmail.com>
1578
1579 PR 24596
1580 * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
1581 end of section list as well as section_count.
1582 * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
1583 section list before returning error.
1584
1585 2019-05-27 Alan Modra <amodra@gmail.com>
1586
1587 * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
1588
1589 2019-05-27 Alan Modra <amodra@gmail.com>
1590
1591 PR 24596
1592 * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
1593
1594 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1595
1596 * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
1597 (struct elf_aarch64_link_hash_table): Add variant_pcs member.
1598 (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
1599 (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
1600 (elf_backend_merge_symbol_attribute): Define.
1601
1602 2019-05-24 Alan Modra <amodra@gmail.com>
1603
1604 * po/SRC-POTFILES.in: Regenerate.
1605
1606 2019-05-24 Alan Modra <amodra@gmail.com>
1607
1608 * elf64-ppc.c: Comment on powerxx _notoc stub variants.
1609 (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
1610 (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
1611 (struct ppc_link_hash_table): Add powerxx_stubs.
1612 (ppc64_elf_check_relocs): Set powerxx_stubs.
1613 (build_powerxx_offset, size_powerxx_offset),
1614 (num_relocs_for_powerxx_offset),
1615 (emit_relocs_for_powerxx_offset): New functions.
1616 (plt_stub_size): Size powerxx stubs.
1617 (ppc_build_one_stub): Emit powerxx stubs.
1618 (ppc_size_one_stub): Size powerxx stubs. Omit .eh_frame for
1619 powerxx stubs.
1620
1621 2019-05-24 Alan Modra <amodra@gmail.com>
1622
1623 * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
1624 R_PPC64_GOT_PCREL34.
1625 (xlate_pcrel_opt): New function.
1626 (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
1627 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1628 for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation.
1629
1630 2019-05-24 Alan Modra <amodra@gmail.com>
1631
1632 * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
1633 (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
1634 (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
1635 (BFD_RELOC_PPC64_PLT_PCREL34),
1636 (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
1637 (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
1638 (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
1639 (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
1640 (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
1641 * elf64-ppc.c (PNOP): Define.
1642 (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
1643 (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
1644 (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
1645 relocs.
1646 (ppc64_elf_prefix_reloc): New function.
1647 (struct ppc_link_hash_table): Add notoc_plt.
1648 (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
1649 (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
1650 R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
1651 (ppc64_elf_check_relocs): Handle pcrel got and plt relocs. Set
1652 has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC. Handle
1653 possible need for dynamic relocs on non-pcrel powerxx relocs.
1654 (dec_dynrel_count): Handle non-pcrel powerxx relocs.
1655 (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
1656 (toc_adjusting_stub_needed): Likewise.
1657 (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
1658 (ppc64_elf_relocate_section): Handle new powerxx relocs.
1659 * bfd-in2.h: Regenerate.
1660 * libbfd.h: Regenerate.
1661
1662 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1663
1664 * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
1665 * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
1666 bpf_elf64_be_vec.
1667 * configure: Regenerate.
1668
1669 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1670
1671 * configure: Regenerated.
1672 * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
1673 (ALL_MACHINES_CFILES): Add cpu-bpf.c.
1674 (BFD64_BACKENDS): Add elf64-bpf.lo.
1675 (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
1676 * Makefile.in (SOURCE_HFILES): Regenerate.
1677 * config.bfd (targ_cpu): Handle bpf-*-* targets.
1678 * cpu-bpf.c: New file.
1679 * elf64-bpf.c: Likewise.
1680 * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
1681 bpf_elf64_le_vec.
1682 * archures.c: Define architecture bfd_arch_bpf and machine
1683 bfd_arch_bpf.
1684 * reloc.c: Define BFD relocations used by the BPF target.
1685 * bfd-in2.h: Regenerated.
1686 * libbfd.h: Likewise.
1687
1688 2019-05-22 Alan Modra <amodra@gmail.com>
1689
1690 * elf32-arm.c (arm_allocate_glue_section_space): Clear section
1691 contents.
1692
1693 2019-05-22 Alan Modra <amodra@gmail.com>
1694
1695 * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
1696 processing on "size error in section".
1697
1698 2019-05-22 Alan Modra <amodra@gmail.com>
1699
1700 * som.c (som_bfd_free_cached_info): Call
1701 _bfd_generic_close_and_cleanup.
1702
1703 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1704
1705 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
1706 for TLS_TPREL_HI16(/LO16) relocations in shared library.
1707
1708 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1709
1710 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
1711 checks. Search the RELA table for n64 relocations.
1712
1713 2019-05-21 Matthew Fortune <matthew.fortune@mips.com>
1714 Faraz Shahbazker <fshahbazker@wavecomp.com>
1715
1716 * elfxx-mips.c (LA25_BC): New macro.
1717 (mips_elf_link_hash_table)<compact_branches>: New field.
1718 (STUB_JALRC): New macro.
1719 (mipsr6_o32_exec_plt0_entry_compact): New array.
1720 (mipsr6_n32_exec_plt0_entry_compact): Likewise.
1721 (mipsr6_n64_exec_plt0_entry_compact): Likewise.
1722 (mipsr6_exec_plt_entry_compact): Likewise.
1723 (mips_elf_create_la25_stub): Use BC instead of J for stubs
1724 when compact_branches is true.
1725 (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
1726 PLT for MIPSR6 with compact_branches. Do not reorder the
1727 compact branches PLT. Switch the lazy stub for MIPSR6
1728 with compact_branches to use JALRC.
1729 (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
1730 when compact_branches is true.
1731 (_bfd_mips_elf_compact_branches): New function.
1732 * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
1733
1734 2019-05-21 Tamar Christina <tamar.christina@arm.com>
1735
1736 PR ld/24373
1737 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
1738 Fix print formatter.
1739
1740 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1741
1742 PR 24460
1743 * elf32-arm.c (get_value_helper): Remove.
1744 (elf32_arm_final_link_relocate): Fix branch future relocations.
1745
1746 2019-05-21 Tamar Christina <tamar.christina@arm.com>
1747
1748 PR ld/24373
1749 * bfd-in.h (enum erratum_84319_opts): New
1750 (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
1751 int to enum erratum_84319_opts.
1752 * bfd-in2.h: Regenerate.
1753 * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
1754 fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
1755 (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
1756 (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
1757 (_bfd_aarch64_resize_stubs): Amend comment.
1758 (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
1759 requested.
1760 (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
1761 (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
1762 erratum workaround.
1763 (clear_erratum_843419_entry): Update erratum conditional.
1764
1765 2019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1766
1767 PR ld/24571
1768 * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
1769 when computing distance_short_enough.
1770
1771 2019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1772
1773 PR ld/24564
1774 * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
1775 Wrap around even if distance equals avr_pc_wrap_around.
1776
1777 2019-05-20 Nick Clifton <nickc@redhat.com>
1778
1779 * po/fr.po: Updated French translation.
1780
1781 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1782
1783 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
1784
1785 2019-05-16 Alan Modra <amodra@gmail.com>
1786
1787 * elf32-arm.c (elf32_arm_write_section): Revert last change.
1788
1789 2019-05-15 Alan Modra <amodra@gmail.com>
1790
1791 * elf32-arm.c (elf32_arm_write_section): Don't leave
1792 error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
1793 unitialised section contents.
1794
1795 2019-05-14 Jamey Hicks <jamey.hicks@gmail.com>
1796
1797 PR 19921
1798 * verilog.c: (VerilogDataWidth): New variable.
1799 (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
1800
1801 2019-05-08 Nick Clifton <nickc@redhat.com>
1802
1803 PR 24523
1804 * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
1805 rather than FALSE if encountering a non-ELF file.
1806
1807 2019-05-06 Alan Modra <amodra@gmail.com>
1808
1809 * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
1810
1811 2019-05-06 Alan Modra <amodra@gmail.com>
1812
1813 * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
1814 (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
1815 Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
1816 * libbfd.h: Regenerate.
1817 * bfd-in2.h: Regenerate.
1818
1819 2019-05-04 Alan Modra <amodra@gmail.com>
1820
1821 PR 24511
1822 * syms.c (coff_section_type): Only allow '.', '$' and numeric
1823 following the standard section names.
1824 (bfd_decode_symclass): Prioritize section flag tests in
1825 decode_section_type before name tests in coff_section_type.
1826 * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
1827 and fake_common_section using BFD_FAKE_SECTION. Use "fake" as
1828 their names and choose standard .text section flags for
1829 fake_section.
1830
1831 2019-05-02 Nick Clifton <nickc@redhat.com>
1832
1833 PR 24493
1834 * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
1835 .gnu.debugaltlink sections as debugging sections.
1836
1837 2019-04-30 Alan Modra <amodra@gmail.com>
1838
1839 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
1840 (struct _ppc64_elf_section_data): Likewise.
1841 (ppc64_elf_check_relocs): Set above fields.
1842 (ppc64_elf_edit_toc): Add a pass over GOT relocs.
1843 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1844 when possible.
1845
1846 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
1847
1848 PR ld/24486
1849 * elflink.c (elf_link_output_extsym): Don't complain undefined
1850 weak dynamic reference.
1851
1852 2019-04-25 Sudakshina Das <sudi.das@arm.com>
1853
1854 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
1855 (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
1856 (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
1857 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
1858 (elfNN_aarch64_small_plt0_pac_entry): Remove.
1859 (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
1860 (elfNN_aarch64_small_plt0_bti_entry): Update.
1861 (elfNN_aarch64_small_plt_bti_entry): Update.
1862 (elfNN_aarch64_small_plt_pac_entry): Update.
1863 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
1864 (setup_plt_values): Setup new entries.
1865 (elfNN_aarch64_finish_dynamic_sections): Remove size change.
1866 (elfNN_aarch64_plt_sym_val): Likewise.
1867
1868 2019-04-22 Jim Wilson <jimw@sifive.com>
1869
1870 * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
1871
1872 2019-04-19 Alan Modra <amodra@gmail.com>
1873
1874 * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
1875
1876 2019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1877
1878 * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
1879 building shared object.
1880 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
1881
1882 2019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1883
1884 PR ld/24458
1885 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
1886 linker_def.
1887
1888 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1889
1890 * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
1891 relocation.
1892 * bfd-in2.h: Regenerate.
1893 * libbfd.h: Likewise.
1894
1895 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1896
1897 * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
1898 * bfd-in2.h: Regenerated.
1899 * libbfd.h: Regenerated.
1900
1901 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1902
1903 * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
1904 * bfd-in2.h: Regenerated.
1905 * libbfd.h: Likewise.
1906
1907 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1908
1909 * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
1910 * bfd-in2.h: Regenerated.
1911 * libbfd.h: Regenerated.
1912 * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
1913 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
1914 and R_ARM_THM_BF12 together.
1915 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
1916
1917 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1918
1919 * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
1920 * libbfd.h: Regenerated.
1921 * bfd-in2.h: Regenerated.
1922 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
1923 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
1924 and R_ARM_THM_BF18 together.
1925 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
1926
1927 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1928
1929 * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
1930 * bfd-in2.h: Regenerated.
1931 * libbfd.h: Regenerated.
1932 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
1933 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
1934 and R_ARM_THM_BF16 together.
1935 (get_value_helper): New reloc helper.
1936 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
1937
1938 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1939
1940 * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
1941 * bfd-in2.h: Regenerate.
1942 * libbfd.h: Regenerate.
1943
1944 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1945
1946 * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
1947 * bfd-in2.h: Regenerate.
1948 * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
1949 * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
1950 and update assert.
1951 (using_thumb2): Likewise.
1952 (using_thumb2_bl): Update assert.
1953 (arch_has_arm_nop): Likewise.
1954 (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
1955 (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
1956
1957 2019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1958
1959 * elf-linker-x86.h (elf_x86_cet_report): New.
1960 (elf_linker_x86_params): Add cet_report.
1961 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
1962 missing IBT and SHSTK properties if needed.
1963
1964 2019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1965
1966 PR ld/24436
1967 * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
1968 "h != NULL". Don't check "h != NULL" before calling.
1969 bfd_elf_gc_record_vtentry.
1970 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
1971 * elf32-bfin.c (bfin_check_relocs): Likewise.
1972 * elf32-cris.c (cris_elf_check_relocs): Likewise.
1973 * elf32-csky.c (csky_elf_check_relocs): Likewise.
1974 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
1975 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
1976 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
1977 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
1978 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
1979 * elf32-i386.c (elf_i386_check_relocs): Likewise.
1980 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1981 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
1982 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1983 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
1984 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
1985 * elf32-metag.c (elf_metag_check_relocs): Likewise.
1986 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1987 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
1988 * elf32-s390.c (elf_s390_check_relocs): Likewise.
1989 * elf32-sh.c (sh_elf_check_relocs): Likewise.
1990 * elf32-v850.c (v850_elf_check_relocs): Likewise.
1991 * elf32-vax.c (elf_vax_check_relocs): Likewise.
1992 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
1993 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
1994 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
1995 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1996 * elf64-s390.c (elf_s390_check_relocs): Likewise.
1997 * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
1998 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
1999 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
2000 * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
2001 VTENTRY entry.
2002
2003 2019-04-11 Alan Modra <amodra@gmail.com>
2004
2005 PR 24435
2006 * elflink.c (elf_link_add_object_symbols): Don't read partial
2007 dynamic entries from fuzzed objects.
2008
2009 2019-04-11 Tamar Christina <tamar.christina@arm.com>
2010
2011 PR ld/24302
2012 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
2013 DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
2014 (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
2015
2016 2019-04-10 Michael Forney <mforney@mforney.org>
2017
2018 PR 24427
2019 * doc/chew.c (free_words): Correctly free "push_text" strings.
2020
2021 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
2022
2023 * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
2024
2025 2019-04-08 Alan Modra <amodra@gmail.com>
2026
2027 * configure.ac (elfxx_x86): Define and use.
2028 * configure: Regenerate.
2029
2030 2019-04-06 H.J. Lu <hongjiu.lu@intel.com>
2031
2032 * elf-linker-x86.h: New file.
2033 * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
2034 to get x86-specific linker options.
2035 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
2036 (elf_x86_64_check_relocs): Likewise.
2037 (elf_x86_64_relocate_section): Likewise.
2038 (elf_x86_64_link_setup_gnu_properties): Likewise.
2039 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
2040 (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
2041 (_bfd_elf_linker_x86_set_options): New function.
2042 * elfxx-x86.h: Include "elf-linker-x86.h".
2043 (elf_x86_link_hash_table): Add params.
2044
2045 2019-04-03 Alan Modra <amodra@gmail.com>
2046
2047 * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
2048 * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
2049 * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
2050 * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
2051 * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
2052 * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
2053
2054 2019-04-02 Jim Wilson <jimw@sifive.com>
2055
2056 PR 24389
2057 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
2058 ELF header flags to after check for ELF object file. Loop through
2059 sections looking for code sections, if none, then skip ABI checks.
2060
2061 2019-03-30 Andrew Waterman <andrew@sifive.com>
2062
2063 * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
2064 rd == X_RA case.
2065
2066 2019-03-29 Max Filippov <jcmvbkbc@gmail.com>
2067
2068 * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
2069 info->export_dynamic to the conditional.
2070
2071 2019-03-28 Alan Modra <amodra@gmail.com>
2072
2073 PR 24392
2074 * configure.ac: Invoke AC_CHECK_SIZEOF(int).
2075 * configure: Regenerate.
2076 * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
2077 workaround with SIZEOF_LONG vs. SIZEOF_INT check.
2078 * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
2079 * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
2080 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
2081
2082 2019-03-21 Jim Wilson <jimw@sifive.com>
2083
2084 PR 24365
2085 * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
2086 verify sym non-NULL before using. Add identical check using h.
2087
2088 2019-03-21 Sudakshina Das <sudi.das@arm.com>
2089
2090 * elf-bfd.h (struct elf_backend_data): Add argument to
2091 merge_gnu_properties.
2092 * elf-properties.c (elf_merge_gnu_properties): Add argument to
2093 itself and while calling bed->merge_gnu_properties.
2094 (elf_merge_gnu_property_list): Update the calls for
2095 elf_merge_gnu_properties.
2096 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
2097 of --force-bti warning and add argument.
2098 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
2099 warning.
2100 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
2101 * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
2102 declaration.
2103
2104 2019-03-20 Sudakshina Das <sudi.das@arm.com>
2105
2106 * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
2107 * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
2108 (elf_backend_fixup_gnu_properties): Define for AArch64.
2109
2110 2019-03-18 Alan Modra <amodra@gmail.com>
2111
2112 PR 24355
2113 * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
2114 for local iplt syms with ent->plt.offset == -1. Remove ineffective
2115 attempt at writing glink stubs only once.
2116
2117 2019-03-16 Alan Modra <amodra@gmail.com>
2118
2119 PR 24337
2120 * elf.c (_bfd_elf_rela_local_sym): Revert last change.
2121 (_bfd_elf_rel_local_sym): Likewise.
2122 * elflink.c (elf_link_input_bfd): Use bfd_und_section for
2123 section of symbols with unrecognized shndx.
2124
2125 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
2126
2127 PR ld/24267
2128 * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
2129 section.
2130 * cofflink.c (coff_link_add_symbols): Check for symbols defined
2131 in discarded section.
2132
2133 2019-03-15 Alan Modra <amodra@gmail.com>
2134
2135 PR 24339
2136 * elflink.c (elf_link_add_object_symbols): Bail out on a local
2137 symbol after globals if elf_bad_symtab is not set.
2138
2139 2019-03-15 Alan Modra <amodra@gmail.com>
2140
2141 PR 24337
2142 * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
2143 (_bfd_elf_rel_local_sym): Likewise.
2144
2145 2019-03-15 Alan Modra <amodra@gmail.com>
2146
2147 PR 24336
2148 * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
2149 object files with sh_size not a multiple of sh_entsize.
2150
2151 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
2152
2153 PR ld/24338
2154 * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
2155 input with bad relocation.
2156
2157 22019-03-15 H.J. Lu <hongjiu.lu@intel.com>
2158
2159 * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
2160
2161 2019-03-14 Nick Clifton <nickc@redhat.com>
2162
2163 PR 24334
2164 * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
2165 (save_section_vma): Initialise field to the number of entries in
2166 the sec_vma table.
2167 (section_vma_same): Check that the number of entries in the
2168 sec_vma table matches the number of sections in the bfd.
2169
2170 2019-03-14 Nick Clifton <nickc@redhat.com>
2171
2172 PR 24333
2173 * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
2174 section owner pointer when adding the default symbol.
2175
2176 2019-03-14 Nick Clifton <nickc@redhat.com>
2177
2178 PR 24332
2179 * elflink.c (elf_link_add_object_symbols): Add new local variable
2180 extversym_end. Initialise it to point to the end of the version
2181 symbol table, if present. Check it when initialising and updating
2182 the ever pointer.
2183
2184 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2185
2186 * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
2187 (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
2188 (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
2189 (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
2190 and PLT_PAC_PLT.
2191 (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
2192 (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
2193 (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
2194
2195 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2196 Szabolcs Nagy <szabolcs.nagy@arm.com>
2197
2198 * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
2199 (aarch64_bti_pac_info): New.
2200 (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
2201 (bfd_elf32_aarch64_set_options): Likewise.
2202 * bfd-in2.h: Regenerate
2203 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
2204 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
2205 (elfNN_aarch64_small_plt0_bti_entry): New.
2206 (elfNN_aarch64_small_plt_bti_entry): New.
2207 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
2208 (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
2209 (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
2210 tlsdesc_plt_entry_size fields.
2211 (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
2212 (setup_plt_values): New helper function.
2213 (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
2214 bti enable type.
2215 (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
2216 fixed macros.
2217 (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
2218 (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
2219 to plt stubs instead of fixed ones and update filling them according
2220 to the need for bti.
2221 (elfNN_aarch64_init_small_plt0_entry): Likewise.
2222 (elfNN_aarch64_finish_dynamic_sections): Likewise.
2223 (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
2224 (elfNN_aarch64_plt_sym_val): Update size accordingly.
2225 (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
2226 is set.
2227 (bfd_elfNN_get_synthetic_symtab): Define.
2228 (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
2229 and mising BTI NOTE SECTION.
2230
2231
2232 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2233
2234 * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
2235 linker created inputs from merge.
2236 * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
2237 GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
2238 (elfNN_aarch64_link_setup_gnu_properties): New.
2239 (elfNN_aarch64_merge_gnu_properties): New.
2240 (elf_backend_setup_gnu_properties): Define for AArch64.
2241 (elf_backend_merge_gnu_properties): Likewise.
2242 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
2243 (_bfd_aarch64_elf_parse_gnu_properties): Define.
2244 (_bfd_aarch64_elf_merge_gnu_properties): Define.
2245 * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
2246 (_bfd_aarch64_elf_parse_gnu_properties): Declare.
2247 (_bfd_aarch64_elf_merge_gnu_properties): Declare.
2248 (elf_backend_parse_gnu_properties): Define for AArch64.
2249
2250 2019-03-13 H.J. Lu <hongjiu.lu@intel.com>
2251
2252 PR ld/24322
2253 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
2254 merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
2255
2256 2019-03-12 Alan Modra <amodra@gmail.com>
2257
2258 * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add
2259 nmemb parameter. Use bfd_alloc2.
2260 (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls.
2261 Delete assertion.
2262 (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
2263 (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls.
2264 * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
2265 doesn't overflow.
2266 * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix.
2267 (assign_section_numbers): Style fix.
2268 (swap_out_syms): Use bfd_malloc2.
2269 (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
2270 overflow.
2271 (_bfd_elf_make_empty_symbol): Style fix.
2272 (elfobj_grok_stapsdt_note_1): Formatting.
2273 * elfcode.h (elf_object_p): Use bfd_alloc2.
2274 (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
2275 (elf_slurp_symbol_table): Use bfd_zalloc2.
2276 (elf_slurp_reloc_table): Use bfd_alloc2.
2277 (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
2278 * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
2279 size calculation doesn't overflow.
2280 (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
2281 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
2282 * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
2283
2284 2019-03-08 Alan Modra <amodra@gmail.com>
2285
2286 PR 24311
2287 * merge.c (merge_strings): Return secinfo. Don't pad section
2288 to alignment here.
2289 (_bfd_merge_sections): Pad section to alignment here, if input
2290 sections contributing to merged output all pad to alignment.
2291 Formatting.
2292
2293 2019-03-06 Nick Clifton <nickc@redhat.com>
2294
2295 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
2296 table pointer.
2297 * coffgen.c (coff_find_nearest_line_with_names): Do not call
2298 _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
2299
2300 2019-03-01 Andreas Krebbel <krebbel@linux.ibm.com>
2301
2302 This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
2303 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
2304
2305 PR 20113
2306 * elf32-s390.c (allocate_dynrelocs): Update comment.
2307
2308 2019-02-28 Tamar Christina <tamar.christina@arm.com>
2309
2310 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
2311
2312 2019-02-28 Nick Clifton <nickc@redhat.com>
2313
2314 PR 24273
2315 * elf.c (bfd_elf_string_from_elf_section): Check for a string
2316 section that is not NUL terminated.
2317
2318 2019-02-27 H.J. Lu <hongjiu.lu@intel.com>
2319
2320 PR ld/24276
2321 * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
2322 by linker when checking copy reloc on protected symbol.
2323
2324 2019-02-24 Alan Modra <amodra@gmail.com>
2325
2326 PR 24144
2327 * pdp11.c (set_section_contents): Revert 2015-02-24 change.
2328
2329 2019-02-20 Eric Tsai <erictsai@cadence.com>
2330
2331 * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
2332 sections between the call site and call destination and adjust
2333 call distance by the largest alignment.
2334
2335 2019-02-20 Alan Hayward <alan.hayward@arm.com>
2336
2337 * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
2338 * elf.c (elfcore_grok_aarch_pauth): New function.
2339 (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
2340 (elfcore_write_aarch_pauth): New function.
2341 (elfcore_write_register_note): Check for AArch64 pauth section.
2342
2343 2019-02-20 Alan Modra <amodra@gmail.com>
2344
2345 PR 24225
2346 * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
2347 return value.
2348
2349 2019-02-20 Michael Roitzsch <reactorcontrol@icloud.com>
2350
2351 * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
2352 Darwin hosts, not just or1k.
2353 * configure: Regenerate.
2354
2355 2019-02-20 Alan Modra <amodra@gmail.com>
2356
2357 PR 24236
2358 * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
2359 sentinel NUL to string buffer nearer to loop where it is used.
2360 Don't go past sentinel when scanning strings, and don't write
2361 NUL again.
2362 * archive.c (do_slurp_coff_armap): Simplify string handling to
2363 archive64.c style.
2364
2365 2019-02-19 Alan Modra <amodra@gmail.com>
2366
2367 PR 24235
2368 * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
2369 attempting to prevent read past end of section.
2370
2371 2019-02-18 Alan Modra <amodra@gmail.com>
2372
2373 PR 24225
2374 * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
2375 PRIx64 to generate warning messages. Print local sym names too.
2376
2377 2019-02-09 Vineet Gupta <vgupta@synopsys.com>
2378
2379 * elf32-arc (INIT_SYM_STRING): Delete.
2380 (FINI_SYM_STRING): Likewise.
2381 (init_str): Likewise.
2382 (fini_str): Likewise.
2383
2384 2019-02-08 Alan Modra <amodra@gmail.com>
2385
2386 * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
2387 for bss-plt" warning to make it an error.
2388
2389 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2390
2391 PR ld/18841
2392 * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
2393 reloc_class_ifunc for ifunc symbols.
2394 * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
2395
2396 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2397
2398 * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
2399 <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
2400
2401 2019-02-07 Nick Clifton <nickc@redhat.com>
2402
2403 * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
2404 into the definitely obsolete list.
2405
2406 2019-02-05 H.J. Lu <hongjiu.lu@intel.com>
2407
2408 PR ld/24151
2409 * elf64-x86-64.c (elf_x86_64_need_pic): Check
2410 SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
2411 (elf_x86_64_relocate_section): Move PIC check for PC-relative
2412 relocations to ...
2413 (elf_x86_64_check_relocs): Here.
2414 (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
2415 to check if a symbol is defined in a non-shared object.
2416 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
2417
2418 2019-01-21 Sergio Durigan Junior <sergiodj@redhat.com>
2419
2420 * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
2421 of 'labs' (and fix GCC warning).
2422
2423 2019-01-25 Nick Clifton <nickc@redhat.com>
2424
2425 * po/ru.po: Updated Russian translation.
2426
2427 2019-01-23 Nick Clifton <nickc@redhat.com>
2428
2429 * po/fr.po: Updated French translation.
2430
2431 2019-01-21 Nick Clifton <nickc@redhat.com>
2432
2433 * po/pt.po: Updated Portuguese translation.
2434 * po/uk.po: Updated Ukranian translation.
2435
2436 2019-01-21 Yuri Chornoivan <yurchor@ukr.net>
2437
2438 PR 24108
2439 * elf32-nds32.c (nds32_relocate_section): Add space between words
2440 in error message.
2441 * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
2442 error message.
2443 (riscv_i_or_e_p): Likewise.
2444 (riscv_merge_arch_attr_info): Likewise.
2445
2446 2019-01-19 Nick Clifton <nickc@redhat.com>
2447
2448 * version.m4: Reset to 2.32.51
2449 * configure: Regenerate.
2450 * po/bfd.pot: Regenerate.
2451
2452 2018-06-24 Nick Clifton <nickc@redhat.com>
2453
2454 2.32 branch created.
2455
2456 2019-01-16 Kito Cheng <kito@andestech.com>
2457
2458 * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
2459 for OBJ_ATTR_PROC.
2460
2461 2019-01-16 Kito Cheng <kito@andestech.com>
2462 Nelson Chu <nelson@andestech.com>
2463
2464 * elfnn-riscv.c (in_subsets): New.
2465 (out_subsets): Likewise.
2466 (merged_subsets): Likewise.
2467 (riscv_std_ext_p): Likewise.
2468 (riscv_non_std_ext_p): Likewise.
2469 (riscv_std_sv_ext_p): Likewise.
2470 (riscv_non_std_sv_ext_p): Likewise.
2471 (riscv_version_mismatch): Likewise.
2472 (riscv_i_or_e_p): Likewise.
2473 (riscv_merge_std_ext): Likewise.
2474 (riscv_merge_non_std_and_sv_ext): Likewise.
2475 (riscv_merge_arch_attr_info): Likewise.
2476 (riscv_merge_attributes): Likewise.
2477 (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
2478
2479 * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
2480 (elf_backend_obj_attrs_vendor): Define.
2481 (elf_backend_obj_attrs_section_type): Likewise.
2482 (elf_backend_obj_attrs_section): Likewise.
2483 (elf_backend_obj_attrs_arg_type): Define as
2484 riscv_elf_obj_attrs_arg_type.
2485 * elfxx-riscv.c (riscv_estimate_digit): New.
2486 (riscv_estimate_arch_strlen1): Likewise.
2487 (riscv_estimate_arch_strlen): Likewise.
2488 (riscv_arch_str1): Likewise.
2489 (riscv_arch_str): Likewise.
2490 * elfxx-riscv.h (riscv_arch_str): Declare.
2491
2492 2019-01-14 John Darrington <john@darrington.wattle.id.au>
2493
2494 * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
2495 * libbfd.h: regen.
2496 * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
2497 source field. (md_apply_fix): Apply final fix
2498 to BFD_RELOC_S12Z_OPR.
2499 * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
2500
2501 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
2502
2503 PR 20113
2504 * elf32-s390.c (allocate_dynrelocs): Update comment.
2505
2506 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
2507
2508 * warning.m4: Adjust egrep pattern for non-GNU compilers.
2509 * configure: Regenerate.
2510
2511 2019-01-08 Alan Modra <amodra@gmail.com>
2512
2513 PR 23699
2514 PR 24065
2515 * ihex.c (ihex_write_object_contents): Properly check 32-bit
2516 address range.
2517
2518 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
2519
2520 * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
2521 * bfd/bfd-in2.h: Regenerate.
2522 * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
2523 * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
2524
2525 2019-01-04 Lifang Xia <lifang_xia@c-sky.com>
2526
2527 * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
2528 default target, little endian target is more suitable.
2529
2530 2019-01-04 Alan Modra <amodra@gmail.com>
2531
2532 PR 24061
2533 PR 21786
2534 * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
2535 adjust all callers.
2536 (EQ_VALUE_IN_FIELD): Likewise.
2537 * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
2538
2539 2019-01-01 Alan Modra <amodra@gmail.com>
2540
2541 Update year range in copyright notice of all files.
2542
2543 For older changes see ChangeLog-2018
2544 \f
2545 Copyright (C) 2019 Free Software Foundation, Inc.
2546
2547 Copying and distribution of this file, with or without modification,
2548 are permitted in any medium without royalty provided the copyright
2549 notice and this notice are preserved.
2550
2551 Local Variables:
2552 mode: change-log
2553 left-margin: 8
2554 fill-column: 74
2555 version-control: never
2556 End:
This page took 0.112163 seconds and 4 git commands to generate.