]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - bfd/ChangeLog
Fix a translation problem in the x86 assembler.
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
1 2023-01-03 Nick Clifton <nickc@redhat.com>
2
3 * po/fr.po: Updated French trabslation.
4 * po/uk.po: Updated Ukrainian trabslation.
5
6 2022-12-31 Nick Clifton <nickc@redhat.com>
7
8 * 2.40 branch created.
9
10 2022-12-23 Nick Clifton <nickc@redhat.com>
11
12 PR 29936
13 * dwarf2.c (concat_filename): Fix check for a directory index off
14 the end of the directory table.
15
16 2022-12-21 Nick Clifton <nickc@redhat.com>
17
18 * po/ro.po: Updated Romanian translation.
19
20 2022-12-06 Nick Clifton <nickc@redhat.com>
21
22 PR 29852
23 * elf32-arm.c (cmse_scan): Check for NULL entries in the
24 sym_hashes array.
25 (elf32_arm_gc_mark_extra_sections): Likewise.
26
27 2022-12-05 Nick Clifton <nickc@redhat.com>
28
29 PR 29848
30 * vms-alpha.c (parse_module): Fix potential out of bounds memory
31 access.
32
33 2022-12-01 Nick Clifton <nickc@redhat.com>
34
35 PR 25202
36 * bfd.c (VerilogDataEndianness): New variable.
37 (verilog_write_record): Use VerilogDataEndianness, if set, to
38 choose the endianness of the output.
39 (verilog_write_section): Adjust the address by the data width.
40
41 2022-11-21 Nick Clifton <nickc@redhat.com>
42
43 PR 29764
44 * cpu-arm.c (scan): Accept machine names prefixed with "arm:".
45 * cpu-aarch64.c (scan): Accept machine names prefixed with "aarch64:".
46
47 2022-10-19 Nick Clifton <nickc@redhat.com>
48
49 PR 29699
50 * elf.c (_bfd_elf_slurp_version_tables): Fail if the sh_info field
51 of the section header is zero.
52
53 2022-09-09 Nick Clifton <nickc@redhat.com>
54
55 PR 29532
56 * elf.c (setup_group): Do not return false if there is no group
57 information available.
58
59 2022-09-02 Aaron Merey <amerey@redhat.com>
60
61 * aout-target.h (MY_find_nearest_line_with_alt): New macro.
62 * bfd-in2.h: Regenerate.
63 * bfd.c (bfd_find_nearest_line_with_alt): New macro.
64 * binary.c (binary_find_nearest_line_with_alt): New macro.
65 * coff-rs6000.c (_bfd_xcoff_find_nearest_line_with_alt): New macro.
66 (rs6000_xcoff64_vec): Add coff_find_nearest_line_with_alt.
67 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Calls
68 _bfd_dwarf2_find_nearest_line_with_alt.
69 (_bfd_dwarf2_find_nearest_line_with_alt): New function. Implements the
70 former _bfd_dwarf2_find_nearest_line. Adds parameter alt_filename.
71 Attempt to open alt_filename and use it as the .dwz file if not NULL.
72 * elf-bfd.h (_bfd_elf_find_nearest_line_with_alt): New declaration.
73 * elf.c (_bfd_elf_find_nearest_line): Calls
74 _bfd_elf_find_nearest_line_with_alt.
75 (_bfd_elf_find_nearest_line_with_alt): New function. Implements the
76 former _bfd_elf_find_nearest_line. Adds parameter alt_filename.
77 * elf32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
78 * elf64-mips.c (bfd_elf64_find_nearest_line_with_alt): New macro.
79 * elfn32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro.
80 * elfxx-mips.h (_bfd_mips_elf_find_nearest_line_with_alt): New macro.
81 * elfxx-target.h (bfd_elfNN_find_nearest_line_with_alt): New macro.
82 * i386mdos.c (msdos_find_nearest_line_with_alt): New macro.
83 * ihex.c (ihex_find_nearest_line_with_alt): New macro.
84 * libbfd-in.h (_bfd_nosymbols_find_nearest_line_with_alt): New
85 declaration.
86 (_bfd_dwarf2_find_nearest_line_with_alt): New declaration.
87 * libbfd.h: Regenerate.
88 * libcoff-in.h (coff_find_nearest_line_with_alt): New macro.
89 * libcoff.h: Regenerate.
90 * libecoff.h (_bfd_ecoff_find_nearest_line_with_alt): New macro.
91 * mach-o.h (bfd_mach_o_find_nearest_line_with_alt): New macro.
92 * mmo.c (mmo_find_nearest_line_with_alt): New macro.
93 * pef.c (bfd_pef_find_nearest_line_with_alt): New macro.
94 * plugin.c (bfd_plugin_find_nearest_line_with_alt): New macro.
95 * ppcboot.c (ppcboot_find_nearest_line_with_alt): New macro.
96 * som.h (som_find_nearest_line_with_alt): New macro.
97 * srec.c (srec_find_nearest_line_with_alt): New macro.
98 * syms.c (_bfd_nosymbols_find_nearest_line_with_alt): New function.
99 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add symbol for
100 NAME##_find_nearest_line_with_alt.
101 (_bfd_find_nearest_line_with_alt): Add declaration.
102 * tekhex.c (tekhex_find_nearest_line_with_alt): New macro.
103 * verilog.c (verilog_find_nearest_line_with_alt): New macro.
104 * vms-alpha.c (_bfd_vms_find_nearest_line_with_alt): New macro.
105 * wasm-module.c (wasm_find_nearest_line_with_alt): New macro.
106 * xsym.c (bfd_sym_find_nearest_line_with_alt): New macro.
107
108 2022-09-02 Frederic Cambus <fred@statdns.com>
109
110 * config.bfd (arm-*-openbsd*): Restore target.
111
112 2022-08-30 Nick Clifton <nickc@redhat.com>
113
114 PR 29529
115 * dwarf2.c (struct line_info_table): Add new field:
116 use_dir_and_file_0.
117 (concat_filename): Use new field to help select the correct table
118 slot.
119 (read_formatted_entries): Do not skip entry 0.
120 (decode_line_info): Set new field depending upon the version of
121 DWARF being parsed. Initialise filename based upon the setting of
122 the new field.
123
124 2022-08-22 Frederic Cambus <fred@statdns.com>
125
126 * config.bfd (aarch64-*-openbsd*): Add target.
127
128 2022-08-03 Nick Clifton <nickc@redhat.com>
129
130 PR 29389
131 * bfd.c (BFD_CLOSED_BY_CACHE): New bfd flag.
132 * cache.c (bfd_cache_delete): Set BFD_CLOSED_BY_DELETE on the
133 closed bfd.
134 (bfd_cache_lookup_worker): Clear BFD_CLOSED_BY_DELETE on the newly
135 reopened bfd.
136 * opncls.c (bfd_set_filename): Refuse to change the name of a bfd
137 that has been closed by bfd_cache_delete. Mark changed bfds as
138 uncacheable.
139 * bfd-in2.h: Regenerate.
140
141 2022-07-29 Nick Clifton <nickc@redhat.com>
142
143 PR 29424
144 * dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and
145 DW_FORM_loclistx.
146
147 2022-07-26 Nick Clifton <nickc@redhat.com>
148
149 * elfnn-loongarch.c (loongarch_elf_relocate_section): Fix
150 indentation.
151
152 2022-07-08 Nick Clifton <nickc@redhat.com>
153
154 * 2.39 branch created.
155
156 2022-05-19 Yvan Roux <yvan.roux@foss.st.com>
157
158 PR 25713
159 * bfdio.c (_bfd_real_fopen): Delete ccs string.
160
161 2022-04-27 John Baldwin <jhb@FreeBSD.org>
162
163 * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes.
164
165 2022-04-25 Nick Clifton <nickc@redhat.com>
166
167 PR 29072
168 * elflink.c (bfd_elf_size_dynamic_sections): Display a note to the
169 user that the current ehaviour of creating an executable stack
170 because of a missing .note.GNU-stack section is deprecated and
171 will be changed in a future release.
172
173 2022-04-20 Clément Chigot <clement.chigot@atos.net>
174
175 * coff-rs6000.c (xcoff_reloc_type_noop): Add info argument.
176 (xcoff_reloc_type_fail): Likewise.
177 (xcoff_reloc_type_pos): Likewise.
178 (xcoff_reloc_type_neg): Likewise.
179 (xcoff_reloc_type_rel): Likewise.
180 (xcoff_reloc_type_toc): Likewise.
181 (xcoff_reloc_type_ba): Likewise.
182 (xcoff_reloc_type_crel): Likewise.
183 (xcoff_reloc_type_tls): Likewise.
184 (xcoff_reloc_type_br): Add stub handler.
185 (xcoff_ppc_relocate_section): Add info to
186 xcoff_calculate_relocation.
187 (xcoff_stub_indirect_call_code): New constant.
188 (xcoff_stub_shared_call_code): Likewise.
189 (bfd_xcoff_backend_data): Add stub code fields.
190 (bfd_pmac_xcoff_backend_data): Likewise.
191 * coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler.
192 (xcoff64_ppc_relocate_section): Add info to
193 xcoff64_calculate_relocation.
194 (xcoff64_stub_indirect_call_code): New constant.
195 (xcoff64_stub_shared_call_code): Likewise.
196 (bfd_xcoff_backend_data): Add stub code fields.
197 (bfd_xcoff_aix5_backend_data): Likewise.
198 * libxcoff.h (struct xcoff_backend_data_rec): Add stub fields.
199 (bfd_xcoff_stub_indirect_call_code): New define.
200 (bfd_xcoff_stub_indirect_call_size): New define.
201 (bfd_xcoff_stub_shared_call_code): New define.
202 (bfd_xcoff_stub_shared_call_size): New define.
203 (xcoff_reloc_function): Add info argument.
204 (enum xcoff_stub_type): New enum.
205 (struct xcoff_stub_hash_entry): New structure.
206 * xcofflink.c (struct xcoff_link_hash_table): Add stub hash
207 table and params fields.
208 (xcoff_stub_hash_entry): New define.
209 (xcoff_stub_hash_lookup): New define.
210 (stub_hash_newfunc): New function.
211 (_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash
212 table.
213 (_bfd_xcoff_bfd_link_hash_table_create): Create the new stub
214 hash table.
215 (xcoff_link_add_symbols): Save rawsize for XTY_SD.
216 (bfd_xcoff_link_init): New function.
217 (xcoff_stub_csect_name): New function.
218 (xcoff_stub_get_csect_in_range): New function.
219 (xcoff_stub_name): New function.
220 (bfd_xcoff_get_stub_entry): New function.
221 (bfd_xcoff_type_of_stub): New function.
222 (xcoff_add_stub): New function.
223 (xcoff_build_one_stub): New function.
224 (bfd_xcoff_size_stubs): New function.
225 (bfd_xcoff_build_stubs): New function.
226 (xcoff_stub_create_relocations): New function.
227 (xcoff_link_input_bfd): Adapt relocations to stub.
228 (xcoff_write_global_symbol): Adapt to new TOC entries generated
229 for stubs.
230 (_bfd_xcoff_bfd_final_link): Handle stub file.
231 * xcofflink.h (struct bfd_xcoff_link_params): New structure.
232
233 2022-04-20 Clément Chigot <clement.chigot@atos.net>
234
235 * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in
236 ldinfo->strings instead of directly in the output_bfd.
237 * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
238 * xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count
239 field. Add ldinfo field.
240 (xcoff_mark_symbol): Adjust to new ldinfo field.
241 (xcoff_mark): Likewise.
242 (bfd_xcoff_link_count_reloc): Likewise.
243 (xcoff_build_loader_section): Split into two functions: one that
244 build the loader section (this function) and one that only size
245 it...
246 (xcoff_size_loader_section): ... (this function).
247 (bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field.
248 Move the part where the dynamic sections are build to ...
249 (bfd_xcoff_build_dynamic_sections): ... this function.
250 * xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype.
251
252 2022-04-13 Alexander von Gluck IV <kallisti5@unixzen.com>
253
254 * config.bfd (x86-haiku): Add i386_pei_vec as a selectable format.
255
256 2022-04-08 Nick Clifton <nickc@redhat.com>
257
258 PR 29038
259 * coffgen.c (coff_find_nearest_line_with_names): Fix typo
260 retrieving saved bias.
261
262 2022-04-07 Mark Harmstone <mark@harmstone.com>
263
264 * coff-i386.c (in_reloc_p): Add R_SECTION.
265 (howto_table): Add R_SECTION.
266 (coff_pe_i386_relocation_section): Add support for R_SECTION.
267 (coff_i386_reloc_type_lookup): Add support for
268 BFD_RELOC_16_SECCIDX.
269 * coff-x86_64.c (in_reloc_p): Add R_SECTION.
270 (howto_table): Add R_SECTION.
271 (coff_pe_amd64_relocation_section): Add support for R_SECTION.
272 (coff_amd64_reloc_type_lookup): Add support for
273 BFD_RELOC_16_SECCIDX.
274 * reloc.c: Add BFD_RELOC_16_SECIDX.
275 * bfd-in2.h: Regenerate.
276 * libbfd.h: Regenerate.
277
278 2022-04-01 John Baldwin <jhb@FreeBSD.org>
279
280 * elf-bfd.h (elfcore_write_x86_segbases): New.
281 * elf.c (elfcore_grok_freebsd_note): Add pseudosections for
282 NT_FREEBSD_X86_SEGBASES register notes.
283 (elfcore_write_x86_segbases): New.
284 (elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES
285 register notes.
286
287 2022-04-01 John Baldwin <jhb@FreeBSD.org>
288
289 * elf.c (elfcore_grok_freebsd_note): Remove checks for namesz.
290
291 2022-03-22 Steiner H Gunderson <steinar+sourceware@gunderson.no>
292
293 * dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is
294 found, but no line number info, then return a result of 2.
295
296 2022-03-21 Steiner H Gunderson <steinar+sourceware@gunderson.no>
297
298 PR 28978
299 * dwarf2.c (scan_unit_for_symbols): When performing second pass,
300 check to see if the function or variable being processed is the
301 same as the previous one.
302
303 2022-03-18 Viorel Preoteasa <viorel.preoteasa@gmail.com>
304
305 PR 28924
306 * elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition.
307 (THM2_MAX_FWD_BRANCH_OFFSET): Likewise.
308
309 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
310
311 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES):
312 Add cpu-amdgcn.c.
313 (BFD64_BACKENDS): Add elf64-amdgcn.lo.
314 (BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c.
315 * Makefile.in: Re-generate.
316 * cpu-amdgcn.c: New.
317 * elf64-amdgcn.c: New.
318 * archures.c (bfd_architecture): Add bfd_arch_amdgcn and related
319 mach defines.
320 (bfd_amdgcn_arch): New.
321 (bfd_archures_list): Add bfd_amdgcn_arch.
322 * bfd-in2.h: Re-generate.
323 * config.bfd: Handle amdgcn* target.
324 * configure.ac: Handle amdgcn_elf64_le_vec.
325 * configure: Re-generate.
326 * elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA.
327 * targets.c (amdgcn_elf64_le_vec): New.
328 (_bfd_target_vector): Add amdgcn_elf64_le_vec.
329
330 2022-03-01 Torbjörn Svensson <torbjorn.svensson@st.com>
331 Fred Eisele <fredrick.eisele@gmail.com>
332
333 PR 25713
334 * bfdio.c (_bfd_real_fopen): Fix typo.
335
336 2022-03-01 Nick Clifton <nickc@redhat.com>
337
338 PR 28848
339 * elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first
340 input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have
341 TAG_FP_arch set then reset the TAG_ABI_HardFP_use.
342
343 2022-02-28 Torbjörn Svensson <torbjorn.svensson@st.com>
344 Fred Eisele <fredrick.eisele@gmail.com>
345
346 PR 25713
347 * bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260
348 characters on Windows hosts.
349
350 2022-02-28 Nick Clifton <nickc@redhat.com>
351
352 PR 28886
353 * config.bfd: Update error message for obsolete configurations.
354
355 2022-02-17 Nick Clifton <nickc@redhat.com>
356
357 * po/sr.po: Updated Serbian translation.
358
359 2022-02-16 Fangrui Song <maskray@google.com>
360 Nick Clifton <nickc@redhat.com>
361
362 PR ld/28841
363 * bfd-in2.h (struct bfd_section): Add type.
364 (discarded_section): Add field.
365 * elf.c (elf_fake_sections): Handle bfd_section::type.
366 * section.c (BFD_FAKE_SECTION): Add field.
367 * mri.c (mri_draw_tree): Update function call.
368
369 2022-02-11 Michael Forney <mforney@mforney.org>
370
371 * bfd.c (bfd_set_gp_value): Remove return with expression
372 in void function.
373
374 2022-02-09 Nick Clifton <nickc@redhat.com>
375
376 * config.bfd: Move pending obsolesence targets into the definitely
377 obsolete list.
378
379 2022-02-02 Nick Clifton <nickc@redhat.com>
380
381 PR 28834
382 * dwarf2.c (read_section): Change the heuristic that checks for
383 overlarge dwarf debug info sections.
384
385 2022-02-02 Stafford Horne <shorne@gmail.com>
386
387 PR 28735
388 * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define.
389 (or1k_elf_relocate_section): Use new howto instead of trying to
390 mask out relocation bits.
391
392 2022-01-24 Roland McGrath <mcgrathr@google.com>
393
394 * doc/local.mk (%D%/bfdver.texi): Add mkdir command.
395
396 2022-01-24 Nick Clifton <nickc@redhat.com>
397
398 * po/fr.po: Updated French translation.
399 * po/ro.po: Updated Romanian translation.
400 * po/uk.po: Updated Ukranian translation.
401
402 2022-01-22 Nick Clifton <nickc@redhat.com>
403
404 * version.m4: Change to 2.38.50.
405 * configure: Regenerate.
406 * po/bfd.pot: Regenerate.
407
408 2022-01-22 Nick Clifton <nickc@redhat.com>
409
410 * 2.38 release branch created.
411
412 2022-01-17 Nick Clifton <nickc@redhat.com>
413
414 * Makefile.in: Regenerate.
415 * configure: Regenerate.
416 * doc/Makefile.in: Regenerate.
417 * po/bfd.pot: Regenerate.
418
419 2021-12-15 Nikita Popov <npv1310@gmail.com>
420
421 PR 28687
422 * dwarf1.c (parse_die): Fix undefined behaviour in range tests.
423
424 2021-11-17 Nick Clifton <nickc@redhat.com>
425
426 PR 28452
427 * elf.c (assign_file_positions_for_non_load_sections): Replace
428 assertion with a warning message.
429
430 2021-10-19 Nick Clifton <nickc@redhat.com>
431
432 * linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL
433 name before checking to see if the symbol is __gnu_lto_slim.
434 * archive.c (_bfd_compute_and_write_armap): Likewise.
435
436 2021-09-27 Nick Alcock <nick.alcock@oracle.com>
437
438 * configure: Regenerate.
439
440 2021-09-15 Andrew Burgess <andrew.burgess@embecosm.com>
441
442 * archures.c (bfd_arch_list): Use 'char *' instead of 'char **'
443 when calculating space for a string list.
444
445 2021-09-014 Cupertino Miranda <cmiranda@synopsys.com>
446 Claudiu Zissulescu <claziss@synopsys.com>
447
448 * arc-got.h (arc_static_sym_data): New structure.
449 (get_static_sym_data): New function.
450 (relocate_fix_got_relocs_for_got_info): Move the computation fo
451 symbol value and section to above introduced function, and use
452 this new function.
453
454 2021-09-07 Luis Machado <luis.machado@linaro.org>
455
456 Revert: [AArch64] MTE corefile support
457
458 2021-05-21 Luis Machado <luis.machado@linaro.org>
459
460 * elf.c (elfcore_make_memtag_note_section): New function.
461 (elfcore_grok_note): Handle NT_MEMTAG note types.
462
463 2021-09-07 Nick Clifton <nickc@redhat.com>
464
465 PR 28305
466 * elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range
467 reloc.
468
469 PR 28303
470 * elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of
471 range relocs.
472
473 2021-08-10 Nick Clifton <nickc@redhat.com>
474
475 * po/sr.po: Updated Serbian translation.
476
477 2021-07-18 Nick Clifton <nickc@redhat.com>
478
479 * config.bfd: Move pending obsoletion targets to obsolete list.
480
481 2021-07-16 Giulio Benetti <giulio.benetti@benettiengineering.com>
482
483 * elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry
484 in switch case R_OR1K_INSN_REL_26 where we need to check for
485 !SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL().
486
487 2021-07-14 Clément Chigot <clement.chigot@atos.net>
488
489 * libxcoff.h (struct xcoff_dwsect_name): Add DWARF name.
490 * coff-rs6000.c (xcoff_dwsect_names): Update.
491 * coffcode.h (sec_to_styp_flags): Likewise.
492 (coff_new_section_hook): Likewise.
493
494 2021-07-10 Alan Modra <amodra@gmail.com>
495
496 * dwarf2.c (read_address): Remove accidental commit.
497 (read_ranges): Compare offset rather than pointers.
498
499 2021-07-08 Nick Clifton <nickc@redhat.com>
500
501 * po/pt.po: Updated Portuguese translation.
502
503 2021-07-07 Nick Clifton <nickc@redhat.com>
504
505 * elfcode.h (elf_swap_symbol_out): Revert accidental change that
506 removed an abort if the shndx pointer is NULL.
507
508 2021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
509
510 * sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on
511 Solaris.
512
513 2021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
514
515 * configure.ac: Check for strnlen declaration.
516 * configure, config.in: Regenerate.
517
518 2021-07-07 Nick Clifton <nickc@redhat.com>
519
520 PR 28051
521 * coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in
522 order to fix problems when translating.
523 * cofflink.c (_bfd_coff_write_global_sym): Likewise.
524 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
525 Likewise.
526 * po/bfd.pot: Regenerate.
527
528 2021-07-06 Michael Matz <matz@suse.de>
529
530 PR ld/28021
531 * elfnn-riscv.c (riscv_relax_delete_bytes): Check for any
532 versioning.
533
534 2021-07-06 Alan Modra <amodra@gmail.com>
535
536 PR 28055
537 * elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED.
538
539 2021-07-05 Alan Modra <amodra@gmail.com>
540
541 PR 28055
542 * elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put
543 and bfd_put_32 calls. Correct section limit checks.
544
545 2021-07-03 Nick Clifton <nickc@redhat.com>
546
547 * version.m4: Update version number.
548 * configure: Regenerate.
549 * po/opcodes.pot: Regenerate.
550
551 2021-07-03 Nick Clifton <nickc@redhat.com>
552
553 * 2.37 release branch created.
554
555 2021-07-02 Nick Clifton <nickc@redhat.com>
556
557 PR 28046
558 * dwarf2.c (read_ranges): Check that range_ptr does not exceed
559 range_end.
560
561 2021-06-30 YunQiang Su <yunqiang.su@cipunited.com>
562
563 PR mips/28009
564 * bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr,
565 _bfd_mips_elf_fake_sections): Mark LTO debug info as
566 SHT_MIPS_DWARF.
567
568 2021-06-29 Nick Clifton <nickc@redhat.com>
569
570 * config.bfd (obsolete configurations): Add netbsdpe.
571
572 2021-06-22 Nelson Chu <nelson.chu@sifive.com>
573
574 * elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store
575 the original relocation type, in case the type is converted to
576 R_RISCV_HI20.
577 (riscv_pcrel_lo_reloc): Removed unused name field.
578 (riscv_pcrel_relocs): Added comments.
579 (riscv_zero_pcrel_hi_reloc): Removed unused input_bfd.
580 (riscv_record_pcrel_hi_reloc): Updated.
581 (riscv_record_pcrel_lo_reloc): Likewise.
582 (riscv_resolve_pcrel_lo_relocs): Likewise. Check the original
583 type of auipc, to make sure the %pcrel_lo without any addends.
584 Otherwise, report dangerous relocation error.
585 (riscv_elf_relocate_section): Updated above functions are changed.
586 For R_RISCV_GOT_HI20, report dangerous relocation error when addend
587 isn't zero.
588
589 2021-06-19 H.J. Lu <hongjiu.lu@intel.com>
590
591 PR ld/27998
592 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF
593 relocation against IFUNC symbols.
594 (_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
595
596 2021-06-19 H.J. Lu <hongjiu.lu@intel.com>
597
598 * elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in
599 PDE.
600
601 2021-06-18 H.J. Lu <hongjiu.lu@intel.com>
602
603 * elf-properties.c (_bfd_elf_parse_gnu_properties): Handle
604 GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
605 GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
606 (elf_merge_gnu_properties): Likewise.
607
608 2021-06-11 Alan Modra <amodra@gmail.com>
609
610 PR 27952
611 * elf-bfd.h (struct elf_obj_tdata): Add is_pie.
612 * elflink.c (elf_link_add_object_symbols): Set is_pie.
613
614 2021-06-09 Nick Clifton <nickc@redhat.com>
615
616 PR 27666
617 * config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec
618 vectors to Sparc Solaris2 targets.
619
620 2021-06-08 Michael Matz <matz@suse.de>
621
622 * elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag.
623 (_bfd_elf_slurp_secondary_reloc_section): Use it for early-out.
624
625 2021-06-07 Jan Beulich <jbeulich@suse.com>
626
627 * dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant.
628
629 2021-06-02 Alan Modra <amodra@gmail.com>
630
631 * elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if
632 subsection length is too small to cover tag and length field.
633
634 2021-05-31 Nelson Chu <nelson.chu@sifive.com>
635 Lifang Xia <lifang_xia@c-sky.com>
636
637 PR 27566
638 * elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer
639 to monitor the data segment phase.
640 (bfd_elfNN_riscv_set_data_segment_info): New function called by
641 after_allocation, to set the data_segment_phase from expld.dataseg.
642 (_bfd_riscv_relax_section): Don't relax when data_segment_phase is
643 exp_seg_relro_adjust (0x4).
644 * elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern.
645 (bfd_elf64_riscv_set_data_segment_info): Likewise
646
647 2021-05-28 H.J. Lu <hongjiu.lu@intel.com>
648
649 PR ld/27905
650 * elf32-i386.c: Don't include "libiberty.h".
651 (elf_howto_table): Revert commits a7664973b24 and 50c95a739c9.
652 (elf_i386_rtype_to_howto): Revert commit 50c95a739c9.
653 (elf_i386_info_to_howto_rel): Likewise.
654 (elf_i386_tls_transition): Likewise.
655 (elf_i386_relocate_section): Likewise.
656 * elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
657 a7664973b24 and 50c95a739c9.
658 (elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9.
659 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
660 * elfxx-x86.h (elf_x86_obj_tdata): Likewise.
661 (elf_x86_has_code16): Likewise.
662
663 2021-05-26 H.J. Lu <hongjiu.lu@intel.com>
664
665 PR ld/27905
666 * elf32-i386.c: Include "libiberty.h".
667 (elf_howto_table): Add 16-bit R_386_PC16 entry.
668 (elf_i386_rtype_to_howto): Add a BFD argument. Use 16-bit
669 R_386_PC16 if input has 16-bit mode instructions.
670 (elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto
671 call.
672 (elf_i386_tls_transition): Likewise.
673 (elf_i386_relocate_section): Likewise.
674 * elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit
675 R_X86_64_PC16 entry.
676 (elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input
677 has 16-bit mode instructions.
678 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set
679 elf_x86_has_code16 if relocatable input is marked with
680 GNU_PROPERTY_X86_FEATURE_2_CODE16.
681 * elfxx-x86.h (elf_x86_obj_tdata): Add has_code16.
682 (elf_x86_has_code16): New.
683
684 2021-05-26 Nelson Chu <nelson.chu@sifive.com>
685
686 * elfxx-riscv.h (check_unknown_prefixed_ext): New bool.
687 * elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the
688 prefixed extension name if check_unknown_prefixed_ext is false.
689 * elfnn-riscv.c (riscv_merge_arch_attr_info): Set
690 check_unknown_prefixed_ext to false for linker.
691
692 2021-05-25 Nick Clifton <nickc@redhat.com>
693
694 * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field.
695 (elf32_arm_num_entries): New macro.
696 (elf32_arm_allocate_local_sym_info): Initialise the new field.
697 Allocate arrays individually so that buffer overruns can be
698 detected by memory checkers.
699 (elf32_arm_create_local_iplt): Check num_entries.
700 (elf32_arm_get_plt_info): Likewise.
701 (elf32_arm_final_link_relocate): Likewise.
702 (elf32_arm_check_relocs): Likewise.
703 (elf32_arm_size_dynamic_sections): Likewise.
704 (elf32_arm_output_arch_local_syms): Likewise.
705
706 2021-05-25 Nick Clifton <nickc@redhat.com>
707
708 * elf32-arm.c: Fix formatting.
709
710 2021-05-25 Alan Modra <amodra@gmail.com>
711
712 * elf-attrs.c (elf_attr_strdup): New function.
713 (_bfd_elf_attr_strdup): Use it here.
714 (elf_add_obj_attr_string): New function, extracted from..
715 (bfd_elf_add_obj_attr_string): ..here.
716 (elf_add_obj_attr_int_string): New function, extracted from..
717 (bfd_elf_add_obj_attr_int_string): ..here.
718 (_bfd_elf_parse_attributes): Don't allocate an extra byte for a
719 string terminator. Instead ensure parsing doesn't go past
720 end of sub-section. Use size_t variables for lengths.
721
722 2021-05-22 Alan Modra <amodra@gmail.com>
723
724 * libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter.
725 Replace data pointer with pointer to pointer. Increment pointer
726 over bytes read.
727 * libbfd-in.h (_bfd_safe_read_leb128): Update prototype.
728 * elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit. Be
729 careful not to increment data pointer past end. Remove now
730 redundant pr17512 check.
731 * wasm-module.c (READ_LEB128): Adjust to suit changes to
732 _bfd_safe_read_leb128.
733 * dwarf2.c (read_n_bytes): New inline function, old one renamed to..
734 (read_blk): ..this. Allocate and return block. Increment bfd_byte**
735 arg.
736 (read_3_bytes): New function.
737 (read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes),
738 (read_8_bytes, read_string, read_indirect_string),
739 (read_indirect_line_string, read_alt_indirect_string): Take a
740 byte_byte** arg which is incremented over bytes read. Remove any
741 bytes_read return. Rewrite limit checks to compare lengths
742 rather than pointers.
743 (read_abbrevs, read_attribute_value, read_formatted_entries),
744 (decode_line_info, find_abstract_instance, read_ranges),
745 (read_rnglists, scan_unit_for_symbols, parse_comp_unit),
746 (stash_comp_unit): Adjust to suit. Rewrite limit checks to
747 compare lengths rather than pointers.
748 * libbfd.h: Regenerate.
749
750 2021-05-21 Luis Machado <luis.machado@linaro.org>
751
752 * elf.c (elfcore_make_memtag_note_section): New function.
753 (elfcore_grok_note): Handle NT_MEMTAG note types.
754
755 2021-05-20 Andrew Burgess <andrew.burgess@embecosm.com>
756
757 * section.c (bfd_get_section_by_name): Return NULL if name is
758 NULL.
759 (bfd_get_section_by_name_if): Likewise.
760 * dwarf2.c (read_section): Remove unneeded NULL check.
761 (find_debug_info): Likewise.
762
763 2021-05-19 Nick Clifton <nickc@redhat.com>
764
765 * plugin.c (bfd_plugin_open_input): Inform the user if the limit
766 on the number of open files is reached. If possible, try to
767 increase this limit before failing.
768
769 2021-05-14 Nelson Chu <nelson.chu@sifive.com>
770
771 * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values
772 of %pcrel_hi, before and after adding the addend. Make sure the
773 value won't be changed, otherwise, report dangerous error.
774
775 2021-05-13 Nelson Chu <nelson.chu@sifive.com>
776
777 * elfxx-riscv.c (check_implicit_always): The check_func, always add
778 the implicit subset without checking.
779 (check_implicit_for_i): The check_func for i, only add zicsr and
780 zifencei when the version of i less than 2.1.
781 (struct riscv_implicit_subset): Record the subsets and their
782 corresponding implicit subsets.
783 (riscv_implicit_subsets): Table records all implicit informations.
784 (riscv_parse_add_implicit_subsets): Updated and add implicit subsets
785 according to riscv_implicit_subsets. Remove the redundant codes.
786
787 2021-05-13 Alan Modra <amodra@gmail.com>
788
789 PR 27858
790 * elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid
791 reloc howto.
792
793 2021-05-12 Luis Machado <luis.machado@linaro.org>
794
795 * elf-bfd.h (elfcore_write_aarch_mte): New prototype.
796 * elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New
797 functions.
798 (elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL.
799 (elfcore_write_register_note): Handle MTE notes.
800
801 2021-05-11 Alan Modra <amodra@gmail.com>
802
803 PR 27844
804 * pdp11.c (aout_get_external_symbols): Clear first four bytes of
805 strings array, not just the first byte.
806 * aoutx.h (aout_get_external_symbols): Likewise.
807
808 2021-05-10 H.J. Lu <hongjiu.lu@intel.com>
809
810 PR binutils/27839
811 * simple.c (bfd_simple_get_relocated_section_contents): Remove
812 strayed fprintf.
813
814 2021-05-10 Nick Clifton <nickc@redhat.com>
815
816 PR 27839
817 * simple.c (simple_dummy_add_to_set): New function.
818 (simple_dummy_constructor): New function.
819 (simple_dummy_multiple_common): New function.
820 (bfd_simple_get_relocated_section_contents): Zero out the
821 callbacks structure, and then set the add_to_set, constructor and
822 multiple_common fields.
823
824 2021-05-10 Dimitar Dimitrov <dimitar@dinux.eu>
825
826 * elf32-pru.c (elf_backend_can_gc_sections): Define as 1.
827
828 2021-05-08 Mike Frysinger <vapier@gentoo.org>
829
830 * doc/Makefile.am (html-local, bfd/index.html): New targets.
831 * doc/Makefile.in: Regenerate.
832
833 2021-05-08 Mike Frysinger <vapier@gentoo.org>
834
835 * doc/Makefile.am (AM_MAKEINFOFLAGS): Define.
836 * doc/Makefile.in: Regenerate.
837
838 2021-05-07 Clément Chigot <clement.chigot@atos.net>
839
840 * coff-rs6000.c (xcoff_dwsect_names): Add new DWARF
841 sections.
842 * coffgen.c (coff_pointerize_aux): Handle C_DWARF.
843 (coff_print_symbol): Likewise.
844 * libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update.
845
846 2021-05-07 Jan Beulich <jbeulich@suse.com>
847
848 * elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields
849 to zero.
850
851 2021-05-07 Alan Modra <amodra@gmail.com>
852
853 * bfd-in2.h: Regenerate.
854 * libbfd.h: Regenerate.
855
856 2021-05-06 Stafford Horne <shorne@gmail.com>
857
858 PR 27746
859 * elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT,
860 OR1K_ADD, OR1K_ORI): New macros to help with plt creation.
861 (elf_or1k_link_hash_table): New field plt_count.
862 (elf_or1k_link_hash_entry): New field plt_index.
863 (elf_or1k_plt_entry_size): New function.
864 (or1k_write_plt_entry): Update to support variable size PLTs.
865 (or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry
866 API.
867 (or1k_elf_finish_dynamic_symbol): Update to write large PLTs
868 when needed.
869 (allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for
870 PLT size.
871
872 2021-05-06 Stafford Horne <shorne@gmail.com>
873
874 PR 21464
875 * elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16
876 overflow check if we have R_OR1K_GOT_AHI16 followed by
877 R_OR1K_GOT16.
878
879 2021-05-06 Stafford Horne <shorne@gmail.com>
880
881 PR 21464
882 * bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation.
883 * elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise.
884 (or1k_final_link_relocate, or1k_elf_relocate_section,
885 or1k_elf_check_relocs): Likewise.
886 * libbfd.h (bfd_reloc_code_real_names): Likewise.
887 * reloc.c: Likewise.
888
889 2021-05-06 Stafford Horne <shorne@gmail.com>
890
891 PR 27624
892 * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change
893 condition used to cleanup plt entries to cleanup forced local
894 entries.
895
896 2021-05-05 H.J. Lu <hongjiu.lu@intel.com>
897
898 PR ld/27825
899 * elflink.c (elf_link_output_symstrtab): Always append ".COUNT"
900 to local symbols.
901
902 2021-05-05 Alan Modra <amodra@gmail.com>
903
904 * vms-lib.c (vms_traverse_index): Account for vms_kbn size when
905 sanity checking keylen.
906
907 2021-05-04 Nick Clifton <nickc@redhat.com>
908
909 * libbfd.c (bfd_malloc): Provide some documenation. Treat a size
910 of 0 as 1.
911 (bfd_realloc): Likewise.
912 (bfd_zmalloc): Likewise.
913 (bfd_realloc_or_free): Provide some documentation. Treat a size
914 of 0 as a request to free.
915 * libbfd-in.h (bfd_realloc): Remove prototype.
916 (bfd_realloc_or_free): Remove prototype.
917 (bfd_zmalloc): Remove prototype.
918 * libbfd.h: Regenerate.
919
920 2021-05-03 Jan Beulich <jbeulich@suse.com>
921
922 * elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to
923 complain_overflow_dont.
924 * elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit
925 relocs to complain_overflow_dont.
926
927 2021-05-03 Alan Modra <amodra@gmail.com>
928
929 * elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak
930 symbols when -z dynamic-undefined-weak or when there are no
931 dynamic relocs in read-only sections and -z nodynamic-undefined-weak
932 is not given.
933 * elf64-ppc.c (allocate_dynrelocs): Likewise.
934
935 2021-05-03 Alan Modra <amodra@gmail.com>
936
937 * elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for
938 weak undefined symols that only appear on PLT relocs.
939 * elf64-ppc.c (allocate_dynrelocs): Likewise.
940
941 2021-05-03 Alan Modra <amodra@gmail.com>
942
943 PR 27755
944 * elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop.
945
946 2021-05-03 Alan Modra <amodra@gmail.com>
947
948 * elf32-csky.c (is_mapping_symbol_name): New function.
949 (csky_elf_is_target_special_symbol): Likewise.
950 (csky_elf_maybe_function_sym): Likewise.
951 (bfd_elf32_bfd_is_target_special_symbol): Define.
952 (elf_backend_maybe_function_sym): Define.
953
954 2021-04-30 Nick Clifton <nickc@redhat.com>
955
956 PR 27801
957 * mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to
958 read 32-bit value.
959
960 2021-04-30 Nick Clifton <nickc@redhat.com>
961
962 PR 27799
963 * elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes
964 that are too small.
965
966 2021-04-30 Nick Clifton <nickc@redhat.com>
967
968 PR 27797
969 * libbfd.c (bfd_realloc_or_free): Do not free a pointer than has
970 been realloc'ed to size 0.
971
972 2021-04-30 Nick Clifton <nickc@redhat.com>
973
974 PR 27795
975 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name
976 lengths.
977
978 2021-04-29 Nick Clifton <nickc@redhat.com>
979
980 PR 27793
981 * som.c (som_slurp_symbol_table): Assign symbols without any scope
982 to the undefined section.
983 (som_decode_symclass): Check for a missing symbol section.
984 * syms.c (bfd_decode_symclass): Likewise.
985
986 2021-04-29 Nick Clifton <nickc@redhat.com>
987
988 PR 27792
989 * som.c (som_slurp_string_table): Place a terminating NUL byte at
990 the end of the table.
991 (som_slurp_symbol_table): Check for an over-large offset into the
992 string string table.
993
994 2021-04-28 Nick Clifton <nickc@redhat.com>
995
996 * elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin
997 symbols as potential function symbols.
998 * elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise.
999 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
1000 * elf32-arm.c (elf32_arm_maybe_function_sym): Likewise.
1001
1002 2021-04-26 Mike Frysinger <vapier@gentoo.org>
1003
1004 * elf-bfd.h: Include stdlib.h.
1005
1006 2021-04-26 Jan Beulich <jbeulich@suse.com>
1007
1008 * elf32-i386.c (elf_howto_table): Switch R_386_PC16 to
1009 complain_overflow_signed.
1010 * elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16
1011 to complain_overflow_signed.
1012
1013 2021-04-23 Eric Botcazou <ebotcazou@adacore.com>
1014
1015 * elf.c (special_sections_p): Add .persistent.bss.
1016
1017 2021-04-23 Jan Beulich <jbeulich@suse.com>
1018
1019 * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero
1020 size field.
1021 * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL
1022 has zero size field.
1023
1024 2021-04-22 Clément Chigot <clement.chigot@atos.net>
1025
1026 * hash.c (struct bfd_strtab_hash): Remove xcoff field.
1027 Add length_field_size field.
1028 (_bfd_stringtab_init): Change prototype.
1029 Adapt to new length_field_size.
1030 (_bfd_xcoff_stringtab_init): Likewise.
1031 (_bfd_stringtab_add): Likewise.
1032 (_bfd_stringtab_emit): Likewise.
1033 * libbfd-in.h (_bfd_xcoff_stringtab_init):
1034 Change prototype.
1035 * libbfd.h: Regenerate.
1036 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create):
1037 Call _bfd_xcoff_stringtab_init with isxcoff64 value.
1038
1039 2021-04-22 Clément Chigot <clement.chigot@atos.net>
1040
1041 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for
1042 unsupported storage class or auxialiry entries.
1043 Improve and adapt to new aux structures.
1044 Add C_DWARF support.
1045 (_bfd_xcoff_swap_aux_out): Likewise.
1046 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise.
1047 (_bfd_xcoff64_swap_aux_out): Likewise.
1048
1049 2021-04-21 Eli Zaretskii <eliz@gnu.org>
1050
1051 PR 27760
1052 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display
1053 of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP,
1054 IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags.
1055 Decode the contents of the DllCharacteristics field.
1056
1057 2021-04-21 Nick Clifton <nickc@redhat.com>
1058
1059 PR 27759
1060 * srec.c (srec_read_section): Replace assertions with error
1061 returns.
1062
1063 2021-04-20 Clément Chigot <clement.chigot@atos.net>
1064
1065 PR binutils/21700
1066 * reloc.c (BFD_RELOC_PPC_NEG): New relocation.
1067 * bfd-in2.h: Regenerate.
1068 * libbfd.h: Regenerate.
1069 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add
1070 BFD_RELOC_PPC_NEG handler.
1071 (xcoff_reloc_type_neg): Correctly substract addend.
1072 * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32
1073 howto.
1074 (xcoff64_rtype2howto): Add handler for R_NEG_32.
1075 (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler.
1076 * xcofflink.c (xcoff_need_ldrel_p): Check output section
1077 for R_POS-like relocations. New argument added.
1078 (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument.
1079 (xcoff_link_input_bfd): Likewise.
1080
1081 2021-04-16 Alan Modra <amodra@gmail.com>
1082
1083 PR 27567
1084 * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags.
1085 (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT,
1086 ignore alignment checks when return is false. Formatting.
1087
1088 2021-04-15 Nelson Chu <nelson.chu@sifive.com>
1089
1090 PR27584
1091 * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to
1092 omit local and empty symbols since they usually generated to
1093 mark the auipc instructions.
1094
1095 2021-04-15 Lifang Xia<lifang_xia@c-sky.com>
1096
1097 * elf32-csky.c (csky_elf_howto_table)
1098 <R_CKCORE_PCREL_IMM16BY2>: Set special_function to
1099 bfd_elf_generic_reloc.
1100 <R_CKCORE_PCREL_IMM16BY4>: Likewise.
1101 <R_CKCORE_PCREL_IMM10BY4>: Likewise.
1102 <R_CKCORE_PCREL_IMM18BY2>: Likewise.
1103 <R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise.
1104
1105 2021-04-14 H.J. Lu <hongjiu.lu@intel.com>
1106
1107 PR binutils/27708
1108 * elf.c (assign_file_positions_for_non_load_sections): Set
1109 p_memsz to p_filesz for the loadable PT_NOTE segment.
1110
1111 2021-04-14 Frederic Cambus <fred@statdns.com>
1112
1113 * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef
1114 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
1115
1116 2021-04-14 Alan Modra <amodra@gmail.com>
1117
1118 PR 27631
1119 * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf
1120 when hh might be NULL, test for NULL first.
1121
1122 2021-04-14 Alan Modra <amodra@gmail.com>
1123
1124 PR 27630
1125 * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
1126 hash might be NULL, cast instead.
1127
1128 2021-04-13 Clément Chigot <clement.chigot@atos.net>
1129
1130 * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
1131
1132 2021-04-13 Nelson Chu <nelson.chu@sifive.com>
1133
1134 * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning
1135 when the version of input or output is RISCV_UNKNOWN_VERSION, since
1136 the extension is added implicitly.
1137 * elfxx-riscv.c: Updated the obsolete comments.
1138 (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h.
1139 * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added.
1140
1141 2021-04-12 Alan Modra <amodra@gmail.com>
1142
1143 * elf-bfd.h (ENABLE_CHECKING): Define.
1144 (elf_link_hash_lookup): Abort if wrong type of hash table.
1145 * configure.ac (--enable-checking): Add support.
1146 * config.in: Regenerate.
1147 * configure: Regenerate.
1148
1149 2021-04-12 Alan Modra <amodra@gmail.com>
1150
1151 * elf-bfd.h (is_elf_hash_table): Convert macro to inline function.
1152 (elf_link_hash_lookup, elf_link_hash_traverse): Likewise.
1153 (elf_hash_table, elf_hash_table_id): Likewise.
1154 * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant
1155 is_elf_hash_table check.
1156 * elf32-csky.c (elf32_csky_setup_section_lists): Likewise.
1157 * elf32-hppa.c (clobber_millicode_symbols): Correct param types.
1158 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
1159 * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise.
1160 (elfNN_ia64_global_dyn_sym_thunk: Likewise.
1161 * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise.
1162 (elf64_ia64_global_dyn_sym_thunk): Likewise.
1163 (elf64_vms_link_add_object_symbols): Pass base type of hash table
1164 to is_elf_hash_table.
1165 * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise.
1166 (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise.
1167 (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise.
1168 (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise.
1169 (bfd_elf_final_link): Likewise.
1170 * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise.
1171 * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup.
1172
1173 2021-04-12 Alan Modra <amodra@gmail.com>
1174
1175 * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry*
1176 from elf_backend_archive_symbol_lookup.
1177 (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*.
1178 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check
1179 we have a ppc_hash_table before accessing ppc_link_hash_entry
1180 fields.
1181 * elflink.c (_bfd_elf_archive_symbol_lookup): Return
1182 bfd_link_hash_entry*.
1183 (elf_link_add_archive_symbols): Adjust to suit.
1184
1185 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
1186
1187 * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of
1188 i-ext when expanding g-ext.
1189
1190 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
1191
1192 * elfxx-riscv.c (riscv_ext_dont_care_version): Removed.
1193 (riscv_parse_add_subset): Always add the implicit extensions, even if
1194 their versions are RISCV_UNKNOWN_VERSION.
1195 (riscv_parse_std_ext): Delay to add i-ext as the implicit extension
1196 in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the
1197 implicit extension after it has been expanded.
1198 (riscv_parse_add_implicit_subsets): Updated.
1199
1200 2021-04-12 Nelson Chu <nelson.chu@sifive.com>
1201
1202 * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward.
1203 (riscv_std_s_ext_strtab): Likewise.
1204 (riscv_std_h_ext_strtab): Likewise.
1205 (riscv_std_zxm_ext_strtab): Added for the zxm prefix.
1206 (enum riscv_prefix_ext_class): Moved forward and renamed from
1207 riscv_isa_ext_class. Reorder them according to the parsing order,
1208 since the enum values are used to check the orders in the
1209 riscv_compare_subsets.
1210 (struct riscv_parse_prefix_config): Moved forward and renamed from
1211 riscv_parse_config_t. Also removed the ext_valid_p field, the
1212 related functions are replaced by riscv_valid_prefixed_ext.
1213 (parse_config): Moved forward and updated. The more letters of the
1214 prefix string, the more forward it must be defined. Otherwise, we
1215 will get the wrong mapping when using strncmp in riscv_get_prefix_class.
1216 (riscv_get_prefix_class): Moved forward. Support to parse the
1217 multi-letter prefix, like zxm.
1218 (riscv_known_prefixed_ext): New function, check if the prefixed
1219 extension is supported according to the right riscv_std_*_ext_strtab.
1220 (riscv_valid_prefixed_ext): New function, used to replace the
1221 riscv_ext_*_valid_p functions.
1222 (riscv_init_ext_order): Do not set the values for prefix keywords
1223 since they may have multiple letters for now.
1224 (riscv_compare_subsets): Set the order values of prefix keywords
1225 to negative numbers according to the riscv_prefix_ext_class.
1226 (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we
1227 have parsed the prefixed extensions.
1228 (riscv_parse_prefixed_ext): Updated and removed the parameter config.
1229 Report error when the prefix is unknown.
1230 (riscv_parse_subset): Do not parse the prefixed extensions according
1231 to the orders in the parse_config. Remove the confused message and
1232 let riscv_parse_prefixed_ext to report the details.
1233 * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c.
1234 (riscv_get_prefix_class): Removed to static.
1235
1236 2021-04-08 Mike Frysinger <vapier@gentoo.org>
1237
1238 * configure.ac (ACX_BUGURL): Use https://.
1239 * configure.com (COPY_TEXT): Likewise.
1240 * configure: Regenerate.
1241
1242 2021-04-05 Alan Modra <amodra@gmail.com>
1243
1244 * configure.ac: Don't check for long long or long double type.
1245 Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h,
1246 strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check
1247 for strtoull, free, malloc, realloc, getenv, strstr, snprintf,
1248 vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS.
1249 (AC_ISC_POSIX): Don't invoke.
1250 (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise.
1251 * sysdep.h: Remove many HAVE_*_H checks and fallback declarations.
1252 Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder
1253 header order as per automake AC_INCLUDES_DEFAULT.
1254 * bfd-in.h: Include inttypes.h unconditionally.
1255 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and
1256 long double are available.
1257 (bfd_scan_vma): Assume long long and strtoull are available.
1258 * elflink.c: Include limits.h unconditionally.
1259 * elfnn-riscv.c: Likewise.
1260 * wasm-module.c: Likewise.
1261 * hpux-core.c: Include dirent.h unconditionally.
1262 * trad-core.c: Likewise.
1263 * hosts/x86-64linux.h: Include stdlib.h unconditionally.
1264 * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks.
1265 * elf32-m68hc1x.c: Don't include alloca-conf.h.
1266 * elf64-hppa.c: Likewise.
1267 * som.c: Likewise.
1268 * wasm-module.c: Likewise.
1269 * xsym.c: Likewise.
1270 * bfd-in2.h: Regenerate.
1271 * config.in: Regenerate.
1272 * configure: Regenerate.
1273
1274 2021-04-01 Tamar Christina <tamar.christina@arm.com>
1275
1276 PR ld/26659
1277 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow.
1278
1279 2021-04-01 Martin Liska <mliska@suse.cz>
1280
1281 * ecoff.c (strneq): Remove strneq and use startswith.
1282 (_bfd_ecoff_slurp_armap): Likewise.
1283
1284 2021-04-01 Martin Liska <mliska@suse.cz>
1285
1286 * elf-bfd.h (bfd_section_is_ctf): Use startswith function.
1287 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1288 (elf_get_reloc_section): Likewise.
1289 * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
1290 * elf32-m32r.c (m32r_elf_section_flags): Likewise.
1291 * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise.
1292 * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise.
1293 (nds32_elf_relocate_section): Likewise.
1294 (nds32_elf_action_discarded): Likewise.
1295 (nds32_elf_check_relocs): Likewise.
1296 (nds32_elf_section_flags): Likewise.
1297 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1298 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
1299 * elf32-rx.c (rx_table_find): Likewise.
1300 (rx_table_map): Likewise.
1301 * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise.
1302 (spu_elf_find_overlays): Likewise.
1303 (needs_ovl_stub): Likewise.
1304 (allocate_spuear_stubs): Likewise.
1305 (build_spuear_stubs): Likewise.
1306 (mark_overlay_section): Likewise.
1307 (spu_elf_auto_overlay): Likewise.
1308 (spu_elf_output_symbol_hook): Likewise.
1309 * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise.
1310 * elf32-xtensa.c (xtensa_property_section_name): Likewise.
1311 * elf64-ppc.c (ppc64_elf_section_flags): Likewise.
1312 (ppc64_elf_relocate_section): Likewise.
1313 * elflink.c (resolve_section): Likewise.
1314 (UNARY_OP): Likewise.
1315 (BINARY_OP_HEAD): Likewise.
1316 (elf_link_input_bfd): Likewise.
1317 * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise.
1318 * elfxx-riscv.c (riscv_parse_subset): Likewise.
1319 * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise.
1320 * opncls.c (get_build_id): Likewise.
1321
1322 2021-03-31 Alan Modra <amodra@gmail.com>
1323
1324 PR 27671
1325 * bfd-in.h: Don't poison FALSE or TRUE.
1326 * bfd-in2.h: Regenerate.
1327
1328 2021-03-31 Alan Modra <amodra@gmail.com>
1329
1330 * sysdep.h: POISON_BFD_BOOLEAN: Define.
1331 * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h,
1332 * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c,
1333 * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c,
1334 * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c,
1335 * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c,
1336 * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c,
1337 * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c,
1338 * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c,
1339 * coffcode.h, * coffgen.c, * cofflink.c, * compress.c,
1340 * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c,
1341 * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c,
1342 * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c,
1343 * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c,
1344 * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c,
1345 * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c,
1346 * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c,
1347 * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c,
1348 * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c,
1349 * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c,
1350 * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c,
1351 * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c,
1352 * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c,
1353 * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c,
1354 * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c,
1355 * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c,
1356 * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c,
1357 * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c,
1358 * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c,
1359 * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c,
1360 * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c,
1361 * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c,
1362 * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h,
1363 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c,
1364 * elf-nacl.h, * elf-properties.c, * elf-s390-common.c,
1365 * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h,
1366 * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c,
1367 * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c,
1368 * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c,
1369 * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c,
1370 * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1371 * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c,
1372 * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c,
1373 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
1374 * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1375 * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c,
1376 * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
1377 * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c,
1378 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
1379 * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c,
1380 * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c,
1381 * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c,
1382 * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h,
1383 * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h,
1384 * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c,
1385 * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h,
1386 * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
1387 * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1388 * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c,
1389 * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1390 * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c,
1391 * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c,
1392 * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h,
1393 * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c,
1394 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c,
1395 * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h,
1396 * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h,
1397 * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h,
1398 * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h,
1399 * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c,
1400 * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h,
1401 * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h,
1402 * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c,
1403 * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h,
1404 * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c,
1405 * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c,
1406 * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c,
1407 * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c,
1408 * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c,
1409 * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c,
1410 * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c,
1411 * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h,
1412 * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c,
1413 * xsym.h: Replace bfd_boolean with bool, FALSE with false, and
1414 TRUE with true throughout.
1415 * bfd-in2.h: Regenerate.
1416 * libbfd.h: Regenerate.
1417 * libcoff.h: Regenerate.
1418
1419 2021-03-31 Alan Modra <amodra@gmail.com>
1420
1421 * bfd-in.h: Include stdbool.h.
1422 (bfd_boolean): Define as bool
1423 * bfd-in2.h: Regenerate.
1424
1425 2021-03-31 Alan Modra <amodra@gmail.com>
1426
1427 * .gitignore: Delete bfd_stdint.h entry.
1428 * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h.
1429 (BUILD_HFILES, LOCAL_H_DEPS): Likewise.
1430 * bfd-in.h: Include stdint.h in place of bfd_stdint.h.
1431 * configure.ac: Don't invoke GCC_HEADER_STDINT.
1432 * configure.com: Don't create bfd_stdint.h.
1433 * Makefile.in: Regenerate.
1434 * aclocal.m4: Regenerate.
1435 * bfd-in2.h: Regenerate.
1436 * config.in: Regenerate.
1437 * configure: Regenerate.
1438 * doc/Makefile.in: Regenerate.
1439 * po/BLD-POTFILES.in: Regenerate.
1440
1441 2021-03-31 Alan Modra <amodra@gmail.com>
1442
1443 * bfd-in.h: Include string.h.
1444 (LITMEMCPY, LITSTRCPY): Delete.
1445 * bfd-in2.h: Regenerate.
1446
1447 2021-03-30 Alan Modra <amodra@gmail.com>
1448
1449 * elflink.c (elf_link_add_object_symbols): Don't set h->indx
1450 unless is_elf_hash_table.
1451
1452 2021-03-29 Alan Modra <amodra@gmail.com>
1453
1454 * aoutx.h (aout_link_write_symbols): Don't cast boolean expression
1455 to bfd_boolean.
1456 * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans
1457 against FALSE.
1458 * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE.
1459 (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE".
1460 (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise.
1461 (is_reloc_for_PLT, is_reloc_for_TLS): Likewise.
1462 * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise.
1463 * elf32-nds32.c (insert_nds32_elf_blank): Likewise.
1464 * elf32-rx.c (rx_set_section_contents): Likewise.
1465 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
1466 * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise.
1467 * mach-o.c (bfd_mach_o_read_command): Likewise.
1468 * targets.c (bfd_get_target_info): Likewise.
1469
1470 2021-03-29 Alan Modra <amodra@gmail.com>
1471
1472 * coff-z80.c (z80_is_local_label_name): Return bfd_boolean.
1473 * elf32-z80.c (z80_is_local_label_name): Likewise.
1474 * elf32-spu.c (spu_elf_modify_headers): Likewise.
1475 * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>):
1476 Change type to int.
1477 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test
1478 for error return from vms_write_data_block.
1479
1480 2021-03-29 Alan Modra <amodra@gmail.com>
1481
1482 * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
1483 * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
1484 (elf64_ia64_local_dyn_sym_thunk): Likewise.
1485 * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
1486 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
1487 (elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
1488 * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
1489 (elfNN_ia64_local_dyn_sym_thunk): Likewise.
1490 * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
1491 (riscv_pcrel_reloc_eq): Likewise.
1492 (riscv_elf_finish_local_dynamic_symbol): Likewise.
1493 * elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
1494 (finish_local_dynamic_symbol): Likewise.
1495 * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
1496 * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
1497 (mips_elf_count_got_symbols): Change return type to bfd_boolean.
1498
1499 2021-03-29 Alan Modra <amodra@gmail.com>
1500
1501 * elflink.c (elf_link_output_symstrtab): Make flinfo parameter
1502 a void pointer.
1503 (bfd_elf_final_link): Delete out_sym_func typedef and don't cast
1504 elf_link_output_symstrtab when calling output_arch_syms and
1505 output_arch_local_syms.
1506 * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms,
1507 elf_backend_output_arch_local_syms>): Change return type of func
1508 arg to match elf_link_output_symstrtab.
1509 * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct
1510 return type.
1511 * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type.
1512 (nds32_elf_output_arch_syms): Correct func return type.
1513
1514 2021-03-29 Alan Modra <amodra@gmail.com>
1515
1516 * elf-m10200.c (mn10200_elf_relocate_section): Return int.
1517 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1518 * elf32-arc.c (elf_arc_relocate_section): Likewise.
1519 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1520 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1521 * elf32-bfin.c (bfin_relocate_section): Likewise.
1522 (bfinfdpic_relocate_section): Likewise.
1523 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1524 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1525 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1526 * elf32-csky.c (csky_elf_relocate_section): Likewise.
1527 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1528 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1529 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1530 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1531 * elf32-ft32.c (ft32_elf_relocate_section): Likewise.
1532 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1533 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1534 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1535 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1536 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1537 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1538 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1539 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1540 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1541 * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise.
1542 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1543 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1544 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1545 * elf32-metag.c (elf_metag_relocate_section): Likewise.
1546 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1547 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1548 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1549 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1550 * elf32-nds32.c (nds32_elf_relocate_section): Likewise.
1551 * elf32-nios2.c (nios2_elf32_relocate_section): Likewise.
1552 * elf32-or1k.c (or1k_elf_relocate_section): Likewise.
1553 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1554 * elf32-pru.c (pru_elf32_relocate_section): Likewise.
1555 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1556 * elf32-rx.c (rx_elf_relocate_section): Likewise.
1557 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1558 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1559 (_bfd_score_elf_relocate_section): Likewise.
1560 * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise.
1561 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1562 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1563 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1564 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1565 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1566 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1567 * elf32-visium.c (visium_elf_relocate_section): Likewise.
1568 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1569 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1570 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1571 * elf32-z80.c (z80_elf_relocate_section): Likewise.
1572 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1573 (elf64_alpha_relocate_section): Likewise.
1574 * elf64-bpf.c (bpf_elf_relocate_section): Likewise.
1575 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1576 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise.
1577 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1578 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1579 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1580 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1581 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise.
1582 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1583 * elfnn-riscv.c (riscv_elf_relocate_section): Likewise.
1584 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1585 * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise.
1586 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1587 * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise.
1588 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1589 * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise.
1590
1591 2021-03-26 Keith Seitz <keiths@redhat.com>
1592
1593 * elfcore.h (_bfd_elf_core_find_build_id): Seek file
1594 offset of program headers after calling elf_read_notes.
1595
1596 2021-03-23 Jan Beulich <jbeulich@suse.com>
1597
1598 * dwarf2.c (read_indexed_string): Rename index to idx.
1599
1600 2021-03-22 Martin Liska <mliska@suse.cz>
1601
1602 * bfd-in.h (startswith): Add startswith function.
1603 (CONST_STRNEQ): Remove.
1604 * bfd-in2.h (startswith): Regenerate with make headers.
1605 * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
1606 (_bfd_slurp_extended_name_table): Likewise.
1607 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
1608 * bfd.c (bfd_get_sign_extend_vma): Likewise.
1609 (bfd_convert_section_size): Likewise.
1610 (bfd_convert_section_contents): Likewise.
1611 * coff-stgo32.c (go32exe_create_stub): Likewise.
1612 (go32exe_check_format): Likewise.
1613 * coffcode.h (styp_to_sec_flags): Likewise.
1614 (GNU_DEBUGALTLINK): Likewise.
1615 * coffgen.c (_bfd_coff_section_already_linked): Likewise.
1616 (coff_gc_sweep): Likewise.
1617 (bfd_coff_gc_sections): Likewise.
1618 * cofflink.c (coff_link_add_symbols): Likewise.
1619 (process_embedded_commands): Likewise.
1620 * compress.c (bfd_is_section_compressed_with_header): Likewise.
1621 (bfd_init_section_decompress_status): Likewise.
1622 * dwarf2.c (find_debug_info): Likewise.
1623 (place_sections): Likewise.
1624 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
1625 * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
1626 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1627 (assign_section_numbers): Likewise.
1628 (elfcore_grok_win32pstatus): Likewise.
1629 * elf32-arm.c (cmse_scan): Likewise.
1630 (elf32_arm_gc_mark_extra_sections): Likewise.
1631 (elf32_arm_size_dynamic_sections): Likewise.
1632 (is_arm_elf_unwind_section_name): Likewise.
1633 * elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
1634 * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
1635 * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1636 * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
1637 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1638 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1639 * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
1640 * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
1641 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1642 * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
1643 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
1644 * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
1645 * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
1646 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1647 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1648 * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
1649 * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
1650 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1651 * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
1652 (elf32_tic6x_size_dynamic_sections): Likewise.
1653 * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1654 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
1655 (xtensa_is_insntable_section): Likewise.
1656 (xtensa_is_littable_section): Likewise.
1657 (xtensa_is_proptable_section): Likewise.
1658 (xtensa_property_section_name): Likewise.
1659 (xtensa_callback_required_dependence): Likewise.
1660 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1661 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
1662 * elf64-ia64-vms.c (is_unwind_section_name): Likewise.
1663 (get_reloc_section): Likewise.
1664 (elf64_ia64_size_dynamic_sections): Likewise.
1665 (elf64_ia64_object_p): Likewise.
1666 * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
1667 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
1668 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1669 * elflink.c (elf_link_add_object_symbols): Likewise.
1670 (_bfd_elf_gc_mark_extra_sections): Likewise.
1671 (bfd_elf_parse_eh_frame_entries): Likewise.
1672 (_bfd_elf_section_already_linked): Likewise.
1673 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
1674 * elfnn-ia64.c (is_unwind_section_name): Likewise.
1675 (elfNN_ia64_size_dynamic_sections): Likewise.
1676 (elfNN_ia64_object_p): Likewise.
1677 * elfxx-mips.c (FN_STUB_P): Likewise.
1678 (CALL_STUB_P): Likewise.
1679 (CALL_FP_STUB_P): Likewise.
1680 (_bfd_mips_elf_section_from_shdr): Likewise.
1681 (_bfd_mips_elf_fake_sections): Likewise.
1682 (_bfd_mips_elf_size_dynamic_sections): Likewise.
1683 (_bfd_mips_final_write_processing): Likewise.
1684 (_bfd_mips_elf_final_link): Likewise.
1685 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1686 * elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
1687 (elf_x86_64_is_reloc_section): Likewise.
1688 * hpux-core.c (thread_section_p): Likewise.
1689 * libcoff.h (bfd_pei_p): Likewise.
1690 * linker.c (REAL): Likewise.
1691 (unwrap_hash_lookup): Likewise.
1692 (_bfd_generic_link_add_one_symbol): Likewise.
1693 * mmo.c (mmo_internal_write_section): Likewise.
1694 * osf-core.c (osf_core_core_file_p): Likewise.
1695 * pef.c (bfd_pef_print_symbol): Likewise.
1696 * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
1697 * som.c (som_slurp_symbol_table): Likewise.
1698 (som_slurp_armap): Likewise.
1699 * wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
1700
1701 2021-03-22 Jan Beulich <jbeulich@suse.com>
1702
1703 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
1704 language translation wrapping to _bfd_error_handler()
1705 invocations.
1706
1707 2021-03-21 Alan Modra <amodra@gmail.com>
1708
1709 * bfd-in.h (startswith): New inline.
1710 (CONST_STRNEQ): Use startswith.
1711 * bfd-in2.h: Regenerate.
1712
1713 2021-03-20 Alan Modra <amodra@gmail.com>
1714
1715 PR 27590
1716 * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE
1717 test for .gnu.debuglto*.
1718
1719 2021-03-18 H.J. Lu <hongjiu.lu@intel.com>
1720
1721 PR ld/27590
1722 * elf.c (_bfd_elf_make_section_from_shdr): Treat
1723 .gnu.debuglto_.debug_ section as debugging section unless it is
1724 marked with SHF_EXCLUDE.
1725 * elflink.c (elf_create_symbuf): Revert commit 994b2513281.
1726 (bfd_elf_match_symbols_in_sections): Ignore section symbols when
1727 matching non-debugging sections or linkonce section with comdat
1728 section.
1729
1730 2021-03-18 H.J. Lu <hongjiu.lu@intel.com>
1731
1732 PR ld/27587
1733 * dwarf2.c (read_attribute_value): Check version >= 3 for
1734 DW_FORM_ref_addr.
1735
1736 2021-03-16 Nick Clifton <nickc@redhat.com>
1737
1738 * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer
1739 overrun by using sizeof of the destination x_fname field as the
1740 limit for a memcpy.
1741
1742 2021-03-16 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1743
1744 * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc.
1745
1746 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1747
1748 * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE,
1749 BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD,
1750 BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE,
1751 BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M,
1752 BFD_RELOC_PPC64_TLS_ML): New relocations.
1753 * bfd-in2.h: Regenerate.
1754 * libbfd.h: Regenerate.
1755 * coff-rs6000.c (xcoff_calculate_relocation): Call
1756 xcoff_reloc_type_tls for TLS relocations.
1757 (xcoff_howto_table): Implement TLS relocations.
1758 (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations.
1759 (xcoff_reloc_type_tls): New function.
1760 * coff64-rs6000.c (xcoff_calculate_relocation): Likewise.
1761 (xcoff_howto_table): Likewise.
1762 (_bfd_xcoff_reloc_type_lookup): Likewise.
1763 * coffcode.h (sec_to_styp_flags): Handle TLS sections.
1764 (styp_to_sec_flags): Likewise.
1765 (coff_compute_section_file_positions): Avoid file offset
1766 optimisation for .data when the previous section is .tdata.
1767 (coff_write_object_contents): Handle TLS sections.
1768 * coffswap.h (coff_swap_aouthdr_out): Add support for
1769 new fields in aouthdr.
1770 * libxcoff.h (xcoff_reloc_type_tls): Add prototype.
1771 * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL.
1772 (xcoff_need_ldrel_p): Add cases for TLS relocations.
1773 (xcoff_create_ldrel): Add l_symndx for TLS sections.
1774
1775 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1776
1777 * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO):
1778 New relocations.
1779 * bfd-in2.h: Regenerate.
1780 * libbfd.h: Regenerate.
1781 * coff-rs6000.c (xcoff_calculate_relocation): Call
1782 xcoff_reloc_type_toc for R_TOCU and R_TOCL.
1783 (xcoff_howto_table): Remove src_mask for TOC relocations.
1784 Add R_TOCU and R_TOCL howtos.
1785 (_bfd_xcoff_reloc_type_lookup): Add cases for
1786 BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO.
1787 (xcoff_reloc_type_toc): Compute the whole offset.
1788 Implement R_TOCU and R_TOCL.
1789 * coff64-rs6000.c (xcoff64_calculate_relocation):
1790 Likewise.
1791 (xcoff64_howto_table): Likewise.
1792 (xcoff64_reloc_type_lookup): Likewise.
1793
1794 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1795
1796 * coff-rs6000.c (xcoff_calculate_relocation): Correct and
1797 add new relocations.
1798 (xcoff_howto_table): Likewise.
1799 (xcoff_rtype2howto): Increase r_type maximum value.
1800 (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead
1801 of create a new one from scratch. Enable only some relocations
1802 to have a changing r_size.
1803 * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise.
1804 (xcoff64_howto_table): Likewise.
1805 (xcoff64_rtype2howto): Likewise.
1806 (xcoff64_ppc_relocate_section): Likewise.
1807 * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value.
1808
1809 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1810
1811 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move.
1812
1813 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1814
1815 * coff64-rs6000.c (xcoff64_write_object_contents): Remove.
1816 * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620
1817 support for o_cputype field. Avoid creating an empty a.out header
1818 for XCOFF64.
1819
1820 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1821
1822 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add
1823 missing smclass.
1824
1825 2021-03-11 Nelson Chu <nelson.chu@sifive.com>
1826
1827 * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean
1828 restart_relax, used to check if we need to run the whole
1829 relaxations from relax pass 0 to 2 again.
1830 (riscv_elf_link_hash_table_create): Init restart_relax to FALSE.
1831 (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set.
1832 (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code.
1833 (bfd_elfNN_riscv_restart_relax_sections): New function. Called by
1834 after_allocation to check if we need to run the whole relaxations again.
1835 (_bfd_riscv_relax_section): We will only enter into the relax pass 3
1836 when the restart_relax is FALSE; At last set restart_relax to TRUE if
1837 again is TRUE, too.
1838 * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration.
1839 (bfd_elf64_riscv_restart_relax_sections): Likewise.
1840
1841 2021-03-10 Jan Beulich <jbeulich@suse.com>
1842
1843 * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol
1844 offset.
1845
1846 2021-03-10 Alan Modra <amodra@gmail.com>
1847 Jan Beulich <jbeulich@suse.com>
1848
1849 * elf.c (bfd_elf_generic_reloc): Make references between debug
1850 sections use section relative values.
1851
1852 2021-03-09 Jan Beulich <jbeulich@suse.com>
1853
1854 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA.
1855
1856 2021-03-05 H.J. Lu <hongjiu.lu@intel.com>
1857
1858 PR ld/27425
1859 PR ld/27432
1860 * bfd.c (_bfd_get_link_info): New function.
1861 * elf-bfd.h (output_elf_obj_tdata): Add link_info.
1862 (elf_link_info): New.
1863 * libbfd-in.h (_bfd_get_link_info): New prototype.
1864 * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for
1865 R_AMD64_IMAGEBASE when generating x86-64 ELF executable.
1866 * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h".
1867 (pex64_link_add_symbols): New function.
1868 (coff_bfd_link_add_symbols): New macro.
1869 * libbfd.h: Regenerated.
1870
1871 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1872 Andrew Burgess <andrew.burgess@embecosm.com>
1873
1874 * elf-bfd.h (elfcore_write_riscv_csr): Declare.
1875 * elf.c (elfcore_grok_riscv_csr): New function.
1876 (elfcore_grok_note): Handle NT_RISCV_CSR.
1877 (elfcore_write_riscv_csr): New function.
1878 (elfcore_write_register_note): Handle '.reg-riscv-csr'.
1879
1880 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1881 Andrew Burgess <andrew.burgess@embecosm.com>
1882
1883 * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define.
1884 (PRPSINFO_PR_PSARGS_LENGTH): Define.
1885 (riscv_write_core_note): New function.
1886 (riscv_elf_grok_psinfo): Make use of two new length defines.
1887 (elf_backend_write_core_note): Define.
1888
1889 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1890 Andrew Burgess <andrew.burgess@embecosm.com>
1891
1892 * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function.
1893 * elf.c (elfcore_grok_gdb_tdesc): New function.
1894 (elfcore_grok_note): Handle NT_GDB_TDESC.
1895 (elfcore_write_gdb_tdesc): New function.
1896 (elfcore_write_register_note): Handle NT_GDB_TDESC.
1897
1898 2021-03-05 Nick Clifton <nickc@redhat.com>
1899
1900 PR 27521
1901 * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
1902 (read_indexed_string): Placeholder function.
1903 (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
1904 forms.
1905
1906 2021-03-05 Alan Modra <amodra@gmail.com>
1907
1908 * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and
1909 2020-09-16 changes.
1910 * coff-x86_64.c (coff_amd64_reloc): Do more or less the same
1911 adjustments here instead. Separate pc-relative adjustments
1912 from symbol related adjustments. Tidy comments and formatting.
1913
1914 2021-03-04 Jan Beulich <jbeulich@suse.com>
1915
1916 * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in
1917 final PE images.
1918
1919 2021-03-04 Alan Modra <amodra@gmail.com>
1920
1921 * rs6000-core.c (rs6000coff_core_p): Correct prototype.
1922
1923 2021-03-03 Alan Modra <amodra@gmail.com>
1924
1925 PR 27500
1926 * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop
1927 processing not when start/stop symbol section is unmarked but
1928 on first time a start/stop symbol is processed.
1929
1930 2021-03-03 Alan Modra <amodra@gmail.com>
1931
1932 * reloc.c: Include x86_64.h rather than internal.h.
1933
1934 2021-03-02 Nick Clifton <nickc@redhat.com>
1935
1936 PR 27484
1937 * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate
1938 function and variable tags and a second time to resolve their
1939 attributes.
1940
1941 2021-03-02 Nick Alcock <nick.alcock@oracle.com>
1942
1943 * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount.
1944
1945 2021-03-02 Alan Modra <amodra@gmail.com>
1946
1947 PR 27451
1948 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized
1949 linker defined start/stop symbols when start_stop_gc.
1950
1951 2021-03-02 Alan Modra <amodra@gmail.com>
1952
1953 * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got
1954 indirect to pc-relative or toc-relative for undefined symbols.
1955
1956 2021-03-01 Alan Modra <amodra@gmail.com>
1957 Fangrui Song <maskray@google.com>
1958
1959 * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker
1960 defined start/stop symbols when start_stop_gc.
1961 (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
1962 (bfd_elf_define_start_stop): Don't modify ldscript_def syms.
1963 * linker.c (bfd_generic_define_start_stop): Likewise.
1964
1965 2021-02-25 Alan Modra <amodra@gmail.com>
1966
1967 PR 27441
1968 * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak.
1969 * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and
1970 use when deciding an as-needed library should be loaded instead
1971 of using the binding of the library definition.
1972
1973 2021-02-24 Alan Modra <amodra@gmail.com>
1974
1975 PR 27459
1976 * coff-stgo32.c (go32exe_check_format): Sanity check size of
1977 header to avoid a buffer overflow.
1978
1979 2021-02-22 Alan Modra <amodra@gmail.com>
1980
1981 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
1982 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
1983
1984 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
1985
1986 PR 27158
1987 * elfnn-riscv.c (perform_relocation): Updated encoding macros.
1988 (_bfd_riscv_relax_call): Likewise.
1989 (_bfd_riscv_relax_lui): Likewise.
1990 * elfxx-riscv.c (howto_table): Likewise.
1991
1992 2021-02-18 Nelson Chu <nelson.chu@sifive.com>
1993
1994 * Makefile.am: Added cpu-riscv.h.
1995 * Makefile.in: Regenerated.
1996 * po/SRC-POTFILES.in: Regenerated.
1997 * cpu-riscv.h: Added to support spec versions controlling.
1998 Also added extern arrays and functions for cpu-riscv.c.
1999 (enum riscv_spec_class): Define all spec classes here uniformly.
2000 (struct riscv_spec): Added for all specs.
2001 (RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
2002 (RISCV_GET_SPEC_NAME): Likewise.
2003 (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
2004 (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
2005 (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
2006 * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
2007 (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
2008 (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
2009 (riscv_priv_specs): Moved below.
2010 (riscv_get_priv_spec_class_from_numbers): Likewise, updated.
2011 (riscv_isa_specs): Moved from include/opcode/riscv.h.
2012 * elfnn-riscv.c: Included cpu-riscv.h.
2013 (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
2014 * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
2015 (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
2016 * elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
2017
2018 2021-02-17 Alan Modra <amodra@gmail.com>
2019
2020 * wasm-module.c: Guard include of limits.h.
2021 (CHAR_BIT): Provide backup define.
2022 (wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
2023 Correct signed overflow checking.
2024
2025 2021-02-17 Nelson Chu <nelson.chu@sifive.com>
2026
2027 PR 27200
2028 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
2029 copying the elf flags from input BFD to output BFD, until we have
2030 checked if the input BFD has no code section or not. Also fix the
2031 problem that we only check the first section rather than the entire
2032 sections for input BFD.
2033
2034 2021-02-16 Alan Modra <amodra@gmail.com>
2035
2036 * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
2037 (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
2038
2039 2021-02-15 Jan Beulich <jbeulich@suse.com>
2040
2041 * doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
2042 * doc/Makefile.in: Re-generate.
2043
2044 2021-02-15 Alan Modra <amodra@gmail.com>
2045
2046 * elf32-nds32.c (nds32_get_section_contents): Replace
2047 bfd_malloc_and_get_section with bfd_get_full_section_contents.
2048 (nds32_elf_relax_delete_blanks): Init contents.
2049 (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
2050
2051 2021-02-15 Alan Modra <amodra@gmail.com>
2052
2053 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
2054 bfd_get_full_section_contents.
2055
2056 2021-02-14 Alan Modra <amodra@gmail.com>
2057
2058 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
2059 all fixes to bfd_generic_get_relocated_section_contents since this
2060 function was split out.
2061
2062 2021-02-11 Alan Modra <amodra@gmail.com>
2063
2064 * config.bfd: Remove ia64 from obsolete list.
2065
2066 2021-02-11 Alan Modra <amodra@gmail.com>
2067
2068 PR ld/22269
2069 * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
2070
2071 2021-02-11 Alan Modra <amodra@gmail.com>
2072
2073 PR 27294
2074 * elf32-avr.c (avr_elf32_load_records_from_section): Use
2075 bfd_malloc_and_get_section. Use bfd_byte* vars and remove then
2076 unnecessary casts.
2077
2078 2021-02-11 Alan Modra <amodra@gmail.com>
2079
2080 PR 27291
2081 * section.c (bfd_get_section_contents): Avoid possible overflow
2082 when range checking offset and count.
2083 (bfd_set_section_contents): Likewise.
2084
2085 2021-02-03 Nick Alcock <nick.alcock@oracle.com>
2086
2087 * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
2088 favour of LIBINTL.
2089 * configure: Regenerated.
2090
2091 2021-02-09 Alan Modra <amodra@gmail.com>
2092
2093 * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
2094 * configure.ac: Delete symbian entries.
2095 * elf-bfd.h (enum elf_target_os): Delete is_symbian.
2096 * elf32-arm.c: Remove symbian support. Formatting.
2097 * targets.c: Delete symbian entries.
2098 * configure: Regenerate.
2099
2100 2021-02-04 H.J. Lu <hongjiu.lu@intel.com>
2101
2102 PR ld/19609
2103 * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
2104 info when failed to convert GOTPCREL relocation.
2105
2106 2021-02-04 Nelson Chu <nelson.chu@sifive.com>
2107
2108 * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
2109
2110 2021-02-04 Alan Modra <amodra@gmail.com>
2111
2112 PR 27311
2113 * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
2114 libraries for IR references on pass over libraries after LTO
2115 recompilation.
2116
2117 2021-02-03 Alan Modra <amodra@gmail.com>
2118
2119 PR 27311
2120 * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
2121 (elf_link_add_object_symbols): Here too. Don't pull in as-needed
2122 libraries when H is an indirect symbol after calling
2123 _bfd_elf_add_default_symbol.
2124
2125 2021-02-03 Alan Modra <amodra@gmail.com>
2126
2127 PR 27311
2128 * elflink.c (_bfd_elf_add_default_symbol): Clear override when
2129 undecorated symbol will have a different version.
2130
2131 2021-02-02 Alan Modra <amodra@gmail.com>
2132
2133 PR 27311
2134 * elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
2135 Use when handling default versioned symbol. Rename existing
2136 override variable to nondef_override and use for non-default
2137 versioned symbol.
2138 (elf_link_add_object_symbols): Adjust call to suit. Don't
2139 pull in as-needed libraries when override is set.
2140
2141 2021-02-01 Emery Hemingway <ehmry@posteo.net>
2142
2143 * config.bfd: Add *-*-genode* as a target for AArch64 and x86.
2144
2145 2021-02-01 Egor Vishnyakov <lenvampir@yandex.ru>
2146
2147 PR 27254
2148 * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
2149 offset for the R_RL78_RH_SADDR relocation.
2150
2151 2021-01-29 Alan Modra <amodra@gmail.com>
2152
2153 PR 27271
2154 * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
2155 on symbols defined in absolute or other special sections.
2156
2157 2021-01-28 Alan Modra <amodra@gmail.com>
2158
2159 PR 27259
2160 * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
2161 prevent endless looping of linked-to sections.
2162
2163 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
2164
2165 * bfd-elf.h (elfcore_write_file_note): New function.
2166 * elf.c (elfcore_write_file_note): New function.
2167
2168 2021-01-26 Alan Modra <amodra@gmail.com>
2169
2170 * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
2171
2172 2021-01-24 H.J. Lu <hongjiu.lu@intel.com>
2173
2174 PR binutils/27231
2175 * dwarf2.c (read_rnglists): Ignore empty range when parsing line
2176 number tables.
2177
2178 2021-01-23 H.J. Lu <hongjiu.lu@intel.com>
2179
2180 PR binutils/27231
2181 * dwarf2.c (read_rnglists): Advance rngs_ptr after
2182 _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
2183
2184 2021-01-20 Alan Modra <amodra@gmail.com>
2185
2186 * elf32-ppc.c: Delete outdated comment.
2187 (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2188 * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
2189
2190 2021-01-20 Alan Modra <amodra@gmail.com>
2191
2192 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
2193 section symbols are present.
2194
2195 2021-01-19 Alan Modra <amodra@gmail.com>
2196
2197 * elf64-ppc.c (elf_hash_entry): New inline function. Use
2198 throughout to replace casts.
2199 (branch_reloc_hash_match): Remove const from params.
2200 (use_local_plt): New function.
2201 (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
2202 (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
2203 Use use_local_plt.
2204 * elf32-ppc.c (use_local_plt): New function.
2205 (allocate_dynrelocs, ppc_elf_relocate_section),
2206 (write_global_sym_plt): Use use_local_plt.
2207
2208 2021-01-17 H.J. Lu <hongjiu.lu@intel.com>
2209
2210 PR ld/27193
2211 * elflink.c (elf_create_symbuf): Also ignore section symbols.
2212
2213 2021-01-16 H.J. Lu <hongjiu.lu@intel.com>
2214
2215 PR ld/23169
2216 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
2217 check pointer_equality_needed.
2218
2219 2021-01-15 H.J. Lu <hongjiu.lu@intel.com>
2220
2221 * elf-linker-x86.h (elf_linker_x86_params): Add
2222 report_relative_reloc.
2223 * elf32-i386.c (elf_i386_relocate_section): Call
2224 _bfd_x86_elf_link_report_relative_reloc to report relative
2225 relocations for -z report-relative-reloc.
2226 (elf_i386_finish_dynamic_symbol): Likewse.
2227 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
2228 (elf_x86_64_finish_dynamic_symbol): Likewse.
2229 * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
2230 function.
2231 * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
2232 prototype.
2233
2234 2021-01-16 Alan Modra <amodra@gmail.com>
2235
2236 * compress.c (decompress_contents): Tidy inflateEnd result test.
2237
2238 2021-01-16 Alan Modra <amodra@gmail.com>
2239
2240 PR 26002
2241 * elflink.c (elf_link_output_extsym): Use version 1 in
2242 .gnu.version for undefined unversioned symbols.
2243
2244 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
2245
2246 * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
2247 caused the by previous commit accidentally.
2248
2249 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
2250
2251 * elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
2252 also aligned the code.
2253
2254 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
2255
2256 * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
2257
2258 2021-01-15 Nelson Chu <nelson.chu@sifive.com>
2259
2260 * elfnn-riscv.c: Comments tidy and improvement.
2261 * elfxx-riscv.c: Likewise.
2262 * elfxx-riscv.h: Likewise.
2263
2264 2021-01-14 H.J. Lu <hongjiu.lu@intel.com>
2265
2266 PR ld/26688
2267 * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
2268 section for R_BFIN_FUNCDESC.
2269
2270 2021-01-14 Nick Clifton <nickc@redhat.com>
2271
2272 * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
2273
2274 2021-01-13 Alan Modra <amodra@gmail.com>
2275
2276 * Makefile.in: Regenerate.
2277 * doc/Makefile.in: Regenerate.
2278
2279 2021-01-13 Alan Modra <amodra@gmail.com>
2280
2281 PR 27160
2282 * section.c (struct bfd_section): Remove pattern field.
2283 (BFD_FAKE_SECTION): Adjust to suit.
2284 * bfd-in2.h: Regenerate.
2285 * elflink.c (compare_link_order, elf_fixup_link_order): Delete.
2286 (bfd_elf_final_link): Don't call elf_fixup_link_order.
2287
2288 2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
2289
2290 PR binutils/26792
2291 * configure.ac: Use GNU_MAKE_JOBSERVER.
2292 * aclocal.m4: Regenerated.
2293 * configure: Likewise.
2294
2295 2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
2296
2297 PR ld/27171
2298 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
2299 R_AMD64_DIR32 relocations for PE/x86-64 inputs.
2300
2301 2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
2302
2303 PR ld/27173
2304 * configure: Regenerated.
2305
2306 2021-01-11 Nick Clifton <nickc@redhat.com>
2307
2308 * po/fr.po: Updated French translation.
2309 * po/pt.po: Updated Portuguese translation.
2310 * po/sr.po: Updated Serbian translation.
2311 * po/uk.po: Updated Ukranian translation.
2312
2313 2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
2314
2315 * configure: Regenerated.
2316
2317 2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
2318
2319 PR ld/27166
2320 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
2321 -z lam-u48 and -z lam-u57.
2322
2323 2021-01-09 Nick Clifton <nickc@redhat.com>
2324
2325 * version.m4: Change to 2.36.50.
2326 * configure: Regenerate.
2327 * po/bfd.pot: Regenerate.
2328
2329 2021-01-09 Nick Clifton <nickc@redhat.com>
2330
2331 * 2.36 release branch crated.
2332
2333 2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
2334
2335 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
2336 LAM_U57 when setting LAM_U48.
2337
2338 2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
2339
2340 PR ld/26256
2341 PR ld/27160
2342 * elflink.c (elf_fixup_link_order): Verify that fixing up
2343 SHF_LINK_ORDER doesn't increase the output section size.
2344
2345 2021-01-09 Alan Modra <amodra@gmail.com>
2346
2347 * configure: Regenerate.
2348
2349 2021-01-07 Samuel Thibault <samuel.thibault@gnu.org>
2350
2351 * configure: Regenerate.
2352
2353 2021-01-07 H.J. Lu <hongjiu.lu@intel.com>
2354
2355 PR 27109
2356 * aix386-core.c (core_aix386_vec): Initialize
2357 keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
2358 * aout-target.h (MY (vec)): Likewise.
2359 * binary.c (binary_vec): Likewise.
2360 * cisco-core.c (core_cisco_be_vec): Likewise.
2361 (core_cisco_le_vec): Likewise.
2362 * coff-alpha.c (alpha_ecoff_le_vec): Likewise.
2363 * coff-i386.c (TARGET_SYM): Likewise.
2364 (TARGET_SYM_BIG): Likewise.
2365 * coff-ia64.c (TARGET_SYM): Likewise.
2366 * coff-mips.c (mips_ecoff_le_vec): Likewise.
2367 (mips_ecoff_be_vec): Likewise.
2368 (mips_ecoff_bele_vec): Likewise.
2369 * coff-rs6000.c (rs6000_xcoff_vec): Likewise.
2370 (powerpc_xcoff_vec): Likewise.
2371 * coff-sh.c (sh_coff_small_vec): Likewise.
2372 (sh_coff_small_le_vec): Likewise.
2373 * coff-tic30.c (tic30_coff_vec): Likewise.
2374 * coff-tic54x.c (tic54x_coff0_vec): Likewise.
2375 (tic54x_coff0_beh_vec): Likewise.
2376 (tic54x_coff1_vec): Likewise.
2377 (tic54x_coff1_beh_vec): Likewise.
2378 (tic54x_coff2_vec): Likewise.
2379 (tic54x_coff2_beh_vec): Likewise.
2380 * coff-x86_64.c (TARGET_SYM): Likewise.
2381 (TARGET_SYM_BIG): Likewise.
2382 * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
2383 (rs6000_xcoff64_aix_vec): Likewise.
2384 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
2385 (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
2386 (CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
2387 * elfxx-target.h (TARGET_BIG_SYM): Likewise.
2388 (TARGET_LITTLE_SYM): Likewise.
2389 * hppabsd-core.c (core_hppabsd_vec): Likewise.
2390 * hpux-core.c (core_hpux_vec): Likewise.
2391 * i386msdos.c (i386_msdos_vec): Likewise.
2392 * ihex.c (ihex_vec): Likewise.
2393 * irix-core.c (core_irix_vec): Likewise.
2394 * mach-o-target.c (TARGET_NAME): Likewise.
2395 * mmo.c (mmix_mmo_vec): Likewise.
2396 * netbsd-core.c (core_netbsd_vec): Likewise.
2397 * osf-core.c (core_osf_vec): Likewise.
2398 * pdp11.c (MY (vec)): Likewise.
2399 * pef.c (pef_vec): Likewise.
2400 (pef_xlib_vec): Likewise.
2401 * plugin.c (plugin_vec): Likewise.
2402 * ppcboot.c (powerpc_boot_vec): Likewise.
2403 * ptrace-core.c (core_ptrace_vec): Likewise.
2404 * sco5-core.c (core_sco5_vec): Likewise.
2405 * som.c (hppa_som_vec): Likewise.
2406 * srec.c (srec_vec): Likewise.
2407 (symbolsrec_vec): Likewise.
2408 * tekhex.c (tekhex_vec): Likewise.
2409 * trad-core.c (core_trad_vec): Likewise.
2410 * verilog.c (verilog_vec): Likewise.
2411 * vms-alpha.c (alpha_vms_vec): Likewise.
2412 * vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
2413 * wasm-module.c (wasm_vec): Likewise.
2414 * xsym.c (sym_vec): Likewise.
2415 * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
2416 isn't set.
2417 (elf_map_symbols): Don't include ignored section symbols.
2418 * elfcode.h (elf_slurp_symbol_table): Also set
2419 BSF_SECTION_SYM_USED on STT_SECTION symbols.
2420 * elflink.c (bfd_elf_final_link): Generated section symbols only
2421 when emitting relocations or reqired.
2422 * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2423 * syms.c (BSF_SECTION_SYM_USED): New.
2424 * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
2425 (bfd_target): Add keep_unused_section_symbols.
2426 (bfd_keep_unused_section_symbols): New.
2427 * bfd-in2.h: Regenerated.
2428
2429 2021-01-07 Nick Clifton <nickc@redhat.com>
2430
2431 PR 25713
2432 * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
2433 absolute paths and check to see if they are longer than MAX_PATH.
2434
2435 2021-01-07 Philipp Tomsich <prt@gnu.org>
2436
2437 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
2438
2439 2021-01-07 Claire Xenia Wolf <claire@symbioticeda.com>
2440 Jim Wilson <jimw@sifive.com>
2441 Andrew Waterman <andrew@sifive.com>
2442 Maxim Blinov <maxim.blinov@embecosm.com>
2443 Kito Cheng <kito.cheng@sifive.com>
2444 Nelson Chu <nelson.chu@sifive.com>
2445
2446 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
2447
2448 2021-01-06 H.J. Lu <hongjiu.lu@intel.com>
2449
2450 * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
2451 (bfinfdpic_check_relocs): Likewise.
2452
2453 2021-01-06 Alan Modra <amodra@gmail.com>
2454
2455 * elf32-score.c (s3_bfd_score_info_to_howto): Report an error
2456 on unknown r_type.
2457 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
2458
2459 2021-01-06 Alan Modra <amodra@gmail.com>
2460
2461 * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
2462 (sparc64-*-solaris2*): Add sparc_elf64_vec and
2463 sparc_elf32_vec.
2464
2465 2021-01-06 Marcus Comstedt <marcus@mc.pp.se>
2466
2467 * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
2468 riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec.
2469 * configure.ac: Handle riscv_elf[32|64]_be_vec.
2470 * configure: Regenerate.
2471 * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
2472 riscv_is_insn_reloc.
2473 (riscv_get_insn): RISC-V instructions are always little endian, but
2474 bfd_get may be used for big-endian, so add new riscv_get_insn to handle
2475 the insturctions.
2476 (riscv_put_insn): Likewsie.
2477 (riscv_is_insn_reloc): Check if we are relocaing an instruction.
2478 (perform_relocation): Call riscv_is_insn_reloc to decide if we should
2479 use riscv_[get|put]_insn or bfd_[get|put].
2480 (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
2481 or bfd_[get|put]l16 for code.
2482 (riscv_elf_relocate_section): Likewise.
2483 (riscv_elf_finish_dynamic_symbol): Likewise.
2484 (riscv_elf_finish_dynamic_sections): Likewise.
2485 (_bfd_riscv_relax_call): Likewise.
2486 (_bfd_riscv_relax_lui): Likewise.
2487 (_bfd_riscv_relax_align): Likewise.
2488 (_bfd_riscv_relax_pc): Likewise.
2489 (riscv_elf_object_p): Handled for big endian.
2490 (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
2491 * targets.c: Add riscv_elf[32|64]_be_vec.
2492 (_bfd_target_vector): Likewise.
2493
2494 2021-01-05 Alan Modra <amodra@gmail.com>
2495
2496 * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
2497 for relocatable executable.
2498
2499 2021-01-05 Alan Modra <amodra@gmail.com>
2500
2501 * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
2502
2503 2021-01-05 Nelson Chu <nelson.chu@sifive.com>
2504
2505 * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
2506 make sure gp symbol is output as a dynamic symbol.
2507
2508 2021-01-04 H.J. Lu <hongjiu.lu@intel.com>
2509
2510 PR ld/26256
2511 * elflink.c (compare_link_order): Place unordered sections before
2512 ordered sections.
2513 (elf_fixup_link_order): Add a link info argument. Allow mixed
2514 ordered and unordered input sections for non-relocatable link.
2515 Sort the consecutive bfd_indirect_link_order sections with the
2516 same pattern. Change the offsets of the bfd_indirect_link_order
2517 sections only.
2518 (bfd_elf_final_link): Pass info to elf_fixup_link_order.
2519 * section.c (bfd_section): Add pattern.
2520 (BFD_FAKE_SECTION): Initialize pattern to NULL.
2521 * bfd-in2.h: Regenerated.
2522
2523 2021-01-04 Alexander Fedotov <alfedotov@gmail.com>
2524
2525 * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
2526 of private flags with 0x.
2527 * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
2528
2529 2021-01-04 Alan Modra <amodra@gmail.com>
2530
2531 PR 26822
2532 * elflink.c (elf_link_input_bfd): Use the file base name in
2533 linker generated STT_FILE symbols.
2534
2535 2021-01-04 Nelson Chu <nelson.chu@sifive.com>
2536
2537 * elfxx-riscv.c (riscv_compare_subsets): Removed static.
2538 * elfxx-riscv.h: Add declaration.
2539 * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
2540 riscv_compare_subsets to check the orders.
2541 (riscv_skip_prefix): Removed.
2542 (riscv_prefix_cmp): Removed.
2543
2544 2021-01-04 Alan Modra <amodra@gmail.com>
2545
2546 PR 26741
2547 * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
2548 calculating subset version length.
2549
2550 2021-01-01 Nicolas Boulenguez <nicolas@debian.org>
2551
2552 * xcofflink.c: Correct spelling in comments.
2553
2554 2021-01-01 Alan Modra <amodra@gmail.com>
2555
2556 Update year range in copyright notice of all files.
2557
2558 For older changes see ChangeLog-2020
2559 \f
2560 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2561
2562 Copying and distribution of this file, with or without modification,
2563 are permitted in any medium without royalty provided the copyright
2564 notice and this notice are preserved.
2565
2566 Local Variables:
2567 mode: change-log
2568 left-margin: 8
2569 fill-column: 74
2570 version-control: never
2571 End: