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