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