aarch64: Add an aarch64_nat_target mixin class.
[binutils-gdb.git] / binutils / ChangeLog
1 2022-03-16 Fangrui Song <maskray@google.com>
2
3 PR binutils/28926
4 * objcopy.c (filter_symbols): Apply weaken to STB_GNU_UNIQUE symbols
5 * NEWS: Mention feature.
6 * testsuite/binutils-all/objcopy.exp (objcopy_test_symbol_manipulation): New test.
7 * testsuite/binutils-all/weaken-gnu-unique.s: New.
8
9 2022-03-16 Martin Storsjö <martin@martin.st>
10
11 PR 28885
12 * dlltool.c (main): use imp_name rather than dll_name when
13 generating a temporary file name.
14
15 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
16
17 * readelf.c (dump_relocations): Handle EM_AMDGPU.
18
19 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
20
21 * Makefile.am (readelf_CFLAGS): New.
22 (readelf_LDADD): Add MSGPACK_LIBS.
23 * Makefile.in: Re-generate.
24 * config.in: Re-generate.
25 * configure: Re-generate.
26 * configure.ac: Add --with-msgpack flag and check for msgpack
27 using pkg-config.
28 * readelf.c: Include msgpack.h if HAVE_MSGPACK.
29 (print_note_contents_hex): New.
30 (print_indents): New.
31 (dump_msgpack_obj): New.
32 (dump_msgpack): New.
33 (print_amdgpu_note): New.
34 (process_note): Handle NT_AMDGPU_METADATA note contents.
35 Use print_note_contents_hex.
36
37 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
38
39 * readelf.c (get_amdgpu_elf_note_type): New.
40 (process_note): Handle "AMDGPU" notes.
41
42 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
43
44 * readelf.c: Include elf/amdgcn.h.
45 (decode_AMDGPU_machine_flags): New.
46 (get_machine_flags): Handle flags for EM_AMDGPU machine type.
47
48 2022-03-16 Simon Marchi <simon.marchi@efficios.com>
49
50 * readelf.c (get_osabi_name): Handle EM_AMDGPU OS ABIs.
51
52 2022-03-16 Nick Clifton <nickc@redhat.com>
53
54 * po/sr.po: Updated Serbian translation.
55
56 2022-03-15 Tom Tromey <tromey@adacore.com>
57
58 * dwarf-mode.el: Now 1.7.
59 (dwarf--sentinel): Switch to the process buffer.
60
61 2022-03-11 Vladimir Mezentsev <vladimir.mezentsev@oracle.com>
62
63 * MAINTAINERS: Add gprofng maintainer.
64 * README-how-to-make-a-release: Add gprofng.
65
66 2022-03-10 Nick Clifton <nickc@redhat.com>
67
68 * dwarf.c (use_debuginfod): New variable. Set to 1.
69 (load_separate_debug_info): Only call
70 debuginfod_fetch_separate_debug_info is use_debuginfod is true.
71 (dwarf_select_sections_by_names): Add do-not-use-debuginfod and
72 use-debuginfod options.
73 (dwarf_select_sections_by_letters): Add D and E options.
74 * dwarf.h (use_debuginfod): New extern.
75 * objdump.c (usage): Mention the new options.
76 * readelf.c (usage): Likewise.
77 * doc/binutils.texi: Document the new options.
78 * doc/debug-options.texi: Describe the new options.
79 * NEWS: Mention the new feature.
80 * testsuite/binutils-all/debuginfod.exp: Add tests of the new
81 options.
82
83 2021-03-06 Maciej W. Rozycki <macro@orcam.me.uk>
84
85 * testsuite/binutils-all/mips/mips1-branch-alias.d: New test.
86 * testsuite/binutils-all/mips/mips1-branch-noalias.d: New test.
87 * testsuite/binutils-all/mips/mips2-branch-alias.d: New test.
88 * testsuite/binutils-all/mips/mips2-branch-noalias.d: New test.
89 * testsuite/binutils-all/mips/mips32r6-branch-alias.d: New test.
90 * testsuite/binutils-all/mips/mips32r6-branch-noalias.d: New
91 test.
92 * testsuite/binutils-all/mips/micromips-branch-alias.d: New
93 test.
94 * testsuite/binutils-all/mips/micromips-branch-noalias.d: New
95 test.
96 * testsuite/binutils-all/mips/mips-branch-alias.s: New test
97 source.
98 * testsuite/binutils-all/mips/micromips-branch-alias.s: New test
99 source.
100 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
101
102 2022-03-04 Simon Marchi <simon.marchi@polymtl.ca>
103
104 * readelf.c (process_dynamic_section): Fix indentation.
105
106 2022-02-09 Nick Clifton <nickc@redhat.com>
107
108 * README-how-to-make-a-release: Update after the 2.38 release.
109
110 2022-01-27 Nick Clifton <nickc@redhat.com>
111
112 * po/sv.po: Updated Swedish translation.
113
114 2022-01-24 Nick Clifton <nickc@redhat.com>
115
116 * po/bg.po: Updated Bulgarian translation.
117 * po/fr.po: Updated French translation.
118 * po/ro.po: Updated Romanian translation.
119 * po/uk.po: Updated Ukranian translation.
120
121 2022-01-22 Martin Storsjö <martin@martin.st>
122
123 * dlltool.c (main): Allow inferring tmp_prefix from the dll name
124 from a def file.
125
126 2022-01-22 Nick Clifton <nickc@redhat.com>
127
128 * configure: Regenerate.
129 * po/binutils.pot: Regenerate.
130
131 2022-01-22 Nick Clifton <nickc@redhat.com>
132
133 * 2.38 release branch created.
134
135 2022-01-17 Nick Clifton <nickc@redhat.com>
136
137 * Makefile.in: Regenerate.
138
139 2022-01-11 Fangrui Song <maskray@google.com>
140
141 PR binutils/28759
142 * ar.c (long_options): Add --thin.
143 (usage) Add --thin. Deprecate -T without diagnostics.
144 * doc/binutils.texi: Add doc.
145 * NEWS: Mention --thin.
146 * binutils/testsuite/binutils-all/ar.exp: Add tests.
147
148 2022-01-11 Martin Storsjö <martin@martin.st>
149
150 * dlltool.c (main): If a prefix has not been provided, attempt to
151 use a deterministic one based upon the dll name.
152
153 2022-01-07 Pavel Mayorov <pmayorov@cloudlinux.com>
154
155 PR 28718
156 * dwarf.c: Revert previous delta.
157 (debug_get_real_type): Reject indirect types that point to
158 indirect types.
159 (debug_get_type_name, debug_get_type_size, debug_write_type):
160 Likewise.
161
162 2022-01-06 Nick Clifton <nickc@redhat.com>
163
164 * debug.c (debug_write_type): Allow for malicious recursion via
165 indirect debug types.
166
167 2022-01-04 Nick Clifton <nickc@redhat.com>
168
169 PR 28716
170 * dwarf.c (load_build_id_debug_file): Remove spurious printf.
171
172 2021-12-16 Nick Clifton <nickc@redhat.com>
173
174 PR 28697
175 * dwarf.c (load_build_id_debug_file): New function.
176 (try_build_id_prefix): New function.
177 (check_for_and_load_links): Call load_build_id_debug_file.
178 (debug_displays): Add entry for .note.gnu.build-id.
179 * dwarf.h (enum dwarf_section_display_enum): Add
180 note_gnu_build_id.
181 * testsuite/binutils-all/debuginfod.exp (test_fetch_debuglink):
182 Fix regexp for loads via debuglink section.
183
184 2021-12-03 Chenghua Xu <xuchenghua@loongson.cn>
185
186 * MAINTAINERS: Add myself and Zhensong Liu
187 as the LoongArch maintainer.
188
189 2021-12-02 Nick Clifton <nickc@redhat.com>
190
191 PR 28645
192 * dwarf.c (process_cu_tu_index): Add test for overruning section
193 whilst processing slots.
194
195 2021-11-30 Roland McGrath <mcgrathr@google.com>
196
197 * doc/local.mk: Give each man page target its missing dependency on
198 doc/$(am__dirstamp).
199
200 2021-11-30 Nick Clifton <nickc@redhat.com>
201
202 * dwarf.c (find_debug_info_for_offset): Use dwarf_vma type for
203 offsets, sizes and ranges.
204 (display_loc_list): Likewise. Also use print_dwarf_vma to print
205 the offset.
206 (display_loclists_list): Likewise.
207 (display_loc_list_dwo): Likewise.
208 (display_debug_str): Likewise.
209 (display_debug_aranges): Likewise.
210 (display_debug_ranges_list): Likewise.
211 (display_debug_rnglists_list): Likewise.
212 (display_debug_ranges): Likewise.
213
214 2021-11-29 Nick Clifton <nickc@redhat.com>
215
216 PR 28632
217 * strings.c (usage): Update desciption of -n option.
218 * doc/binutils.texi: Likewise.
219
220 2021-11-24 Nick Clifton <nickc@redhat.com>
221
222 PR 28564
223 * sysdump.c (getCHARS): Check for an out of bounds read.
224
225 2021-11-16 Fangrui Song <maskray@google.com>
226
227 * readelf.c (enum relocation_type): New.
228 (slurp_relr_relocs): New.
229 (dump_relocations): Change is_rela to rel_type.
230 Dump RELR.
231 (dynamic_relocations): Add DT_RELR.
232 (process_relocs): Check SHT_RELR and DT_RELR.
233 (process_dynamic_section): Store into dynamic_info for
234 DT_RELR/DT_RELRENT/DT_RELRSZ.
235
236 2021-11-09 Nick Clifton <nickc@redhat.com>
237
238 * nm.c: Add --unicode option to control how unicode characters are
239 handled.
240 * objdump.c: Likewise.
241 * readelf.c: Likewise.
242 * strings.c: Likewise.
243 * binutils.texi: Document the new feature.
244 * NEWS: Document the new feature.
245 * testsuite/binutils-all/unicode.exp: New file.
246 * testsuite/binutils-all/nm.hex.unicode
247 * testsuite/binutils-all/strings.escape.unicode
248 * testsuite/binutils-all/objdump.highlight.unicode
249 * testsuite/binutils-all/readelf.invalid.unicode
250
251 2021-11-03 Tom Tromey <tromey@adacore.com>
252
253 * dwarf.c (display_debug_loc): Use section name in warnings.
254
255 2021-10-25 Nick Alcock <nick.alcock@oracle.com>
256
257 * objdump.c (usage): --ctf now has an optional argument.
258 (main): Adjust accordingly.
259 (dump_ctf): Default it.
260 * doc/ctf.options.texi: Adjust.
261
262 2021-10-25 Nick Alcock <nick.alcock@oracle.com>
263
264 * objdump.c (usage): --ctf-parent now takes a name, not a section.
265 (dump_ctf): Don't open a separate section; use the parent_name in
266 ctf_dict_open instead. Use ctf_archive_next, not ctf_archive_iter,
267 so we can pass down a member count.
268 (dump_ctf_archive_member): Add the member count; don't return
269 anything. Import parents into children no matter what the
270 parent's name, while still avoiding displaying the header for the
271 common parent name of ".ctf".
272 * readelf.c (usage): Adjust similarly.
273 (dump_section_as_ctf): Likewise.
274 (dump_ctf_archive_member): Likewise. Never stop iterating over
275 archive members, even if ctf_dump of one member fails.
276 * doc/ctf.options.texi: Adjust.
277
278 2021-10-19 Nick Clifton <nickc@redhat.com>
279
280 * nm.c (filter_symbols): Test for a NULL name before checking to
281 see if the symbol is __gnu_lto_slim.
282 * objcopy.c (filter_symbols): Likewise.
283
284 2021-09-30 Nick Clifton <nickc@redhat.com>
285
286 * objcopy.c (filter_symbols): Fail if attempting to dredefine
287 symbols in an LTO object file.
288
289 2021-09-27 Nick Alcock <nick.alcock@oracle.com>
290
291 * configure: Regenerate.
292
293 2021-09-20 Andrew Burgess <andrew.burgess@embecosm.com>
294
295 * testsuite/binutils-all/riscv/riscv.exp: New file.
296 * testsuite/binutils-all/riscv/unknown.d: New file.
297 * testsuite/binutils-all/riscv/unknown.s: New file.
298
299 2021-09-07 Luis Machado <luis.machado@linaro.org>
300
301 Revert: [AArch64] MTE corefile support
302
303 2021-05-21 Luis Machado <luis.machado@linaro.org>
304
305 * readelf.c (get_note_type): Handle NT_MEMTAG note types.
306
307 2021-08-11 Nick Clifton <nickc@redhat.com>
308
309 * po/pt.po: Updated Portuguese translation.
310
311 2021-08-10 Nick Clifton <nickc@redhat.com>
312
313 * po/sr.po: Updated Serbian translation.
314
315 2021-07-16 Nick Clifton <nickc@redhat.com>
316
317 * po/sv.po: Updated Swedish translation.
318
319 2021-07-14 Clément Chigot <clement.chigot@atos.net>
320
321 * dwarf.h (struct dwarf_section): Add XCOFF name.
322 * dwarf.c (struct dwarf_section_display): Update.
323 * objdump.c (load_debug_section): Add XCOFF name handler.
324 (dump_dwarf_section): Likewise.
325
326 2021-07-12 Nick Clifton <nickc@redhat.com>
327
328 * po/fr.po: Updated French translation.
329
330 2021-07-10 Alan Modra <amodra@gmail.com>
331
332 PR 28069
333 * dwarf.c (display_discr_list): Remove assertions. Delete "end"
334 parameter, use initial "data" pointer as the end. Formatting.
335 Don't count down bytes as they are read.
336 (read_and_display_attr_value): Adjust display_discr_list call.
337 (read_and_print_leb128): Don't pass __FILE__ and __LINE__ to
338 report_leb_status.
339 * dwarf.h (report_leb_status): Don't report file and line
340 numbers. Delete file and lnum parameters,
341 (READ_ULEB, READ_SLEB): Adjust.
342
343 2021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
344
345 * configure.ac: Check for strnlen declaration.
346 * configure, config.in: Regenerate.
347
348 2021-07-05 Alan Modra <amodra@gmail.com>
349
350 PR 28047
351 * dwarf.c (get_type_abbrev_from_form): Add cu_end parameter.
352 Check DW_FORM_ref1 etc. arg against cu_end rather than end of
353 section. Adjust all callers.
354
355 2021-07-03 Nick Clifton <nickc@redhat.com>
356
357 * configure: Regenerate.
358 * po/opcodes.pot: Regenerate.
359 * README-how-to-make-a-release: Update.
360
361 2021-07-03 Nick Clifton <nickc@redhat.com>
362
363 * 2.37 release branch created.
364
365 2021-07-02 Alan Modra <amodra@gmail.com>
366
367 PR 28048
368 * dwarf.c (get_type_signedness): Don't run off end of buffer
369 printing DW_FORM_string attribute.
370
371 2021-07-01 Nick Clifton <nickc@redhat.com>
372
373 PR 28029
374 * testsuite/binutils-all/debuginfod.exp: Replace -wK with -wk.
375
376 2021-07-01 Andrei Homescu <ah@immunant.com>
377
378 * readelf.c (process_archive): Reset file position to the
379 beginning when calling process_object for thin archive members.
380 * testsuite/binutils-all/readelf.exp: Add test.
381 * testsuite/binutils-all/readelf.h.thin: New file.
382
383 2021-06-30 Tom Tromey <tom@tromey.com>
384
385 * dwarf.c (read_and_display_attr_value): Handle
386 DW_FORM_implicit_const.
387
388 2021-06-30 Richard Henderson <richard.henderson@linaro.org>
389
390 * dwarf.c (display_debug_frames): Both DW_CFA_def_cfa_sf
391 and DW_CFA_def_cfa_offset_sf have a signed offset.
392
393 2021-06-19 Alan Modra <amodra@gmail.com>
394
395 * dwarf.c (display_debug_lines_decoded): Use memcpy rather than
396 strncpy when trimming file name length to MAX_FILENAME_LENGTH.
397 Don't make an unnecessary copy when length is good.
398
399 2021-06-18 H.J. Lu <hongjiu.lu@intel.com>
400
401 * readelf.c (print_gnu_property_note): Handle
402 GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI,
403 GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI.
404
405 2021-06-15 Nick Clifton <nickc@redhat.com>
406
407 * readelf.c (get_note_type): Add support for NT_GO_BUILDID.
408
409 2021-06-15 Alan Modra <amodra@gmail.com>
410
411 * readelf.c (locate_dynamic_section, is_pie): New functions.
412 (get_file_type): Replace e_type parameter with filedata. Call
413 is_pie for ET_DYN. Update all callers.
414 (process_program_headers): Use local variables dynamic_addr and
415 dynamic_size, updating filedata on exit from function. Set
416 dynamic_size of 1 to indicate no dynamic section or segment.
417 Update tests of dynamic_size throughout.
418 * testsuite/binutils-all/x86-64/pr27708.dump: Update expected output.
419
420 2021-06-14 Eric Botcazou <ebotcazou@adacore.com>
421
422 * dwarf.c (struct abbrev_attr): Change type of implicit_const.
423 (add_abbrev_attr): Likewise.
424 (process_abbrev_set): Likewise.
425 (display_debug_abbrev): Adjust to above change.
426
427 2021-06-12 Alan Modra <amodra@gmail.com>
428
429 * readelf.c (process_file_header): Don't clear section_headers.
430
431 2021-06-12 Alan Modra <amodra@gmail.com>
432
433 * readelf.c (get_section_headers): Don't test e_shoff here, leave
434 that to get_32bit_section_headers or get_64bit_section_headers.
435 (process_object): Throw away section header read to print file
436 header extension.
437
438 2021-06-11 Alan Modra <amodra@gmail.com>
439
440 * readelf.c (struct filedata): Move archive_file_offset and
441 archive_file_size earlier.
442 (free_filedata): Clear using memset.
443
444 2021-06-11 Alan Modra <amodra@gmail.com>
445
446 * readelf.c (GET_ELF_SYMBOLS): Delete. Replace with..
447 (get_elf_symbols): ..this new function throughout.
448 (get_32bit_section_headers): Don't free section_headers.
449 (get_64bit_section_headers): Likewise.
450 (get_section_headers): New function, use throughout in place of
451 32bit and 64bit variants.
452 (get_dynamic_section): Similarly.
453 (process_section_headers): Don't free filedata memory here.
454 (get_file_header): Don't get section headers here..
455 (process_object): ..Read them here instead. Don't exit without
456 freeing filedata memory.
457
458 2021-06-09 Nick Clifton <nickc@redhat.com>
459
460 * MAINTAINERS: Remove Daniel Jacobwitz from the maintainers list.
461
462 2021-06-07 Jan Beulich <jbeulich@suse.com>
463
464 * dwarf.c (display_debug_aranges): Add u suffix to constant.
465
466 2021-05-29 Alan Modra <amodra@gmail.com>
467
468 * objdump (usage): Add missing \n.
469
470 2021-05-29 Alan Modra <amodra@gmail.com>
471
472 * readelf.c (parse_args): Call dwarf_select_sections_all on
473 --debug-dump without optarg.
474 (usage): Associate -w and --debug-dump options closely.
475 Split up help message. Remove extraneous blank lines around
476 ctf help.
477 * objdump.c (usage): Similarly.
478
479 2021-05-29 Maciej W. Rozycki <macro@orcam.me.uk>
480
481 * testsuite/binutils-all/mips/mips-xpa-virt-1.d: Correct CFC0
482 operand disassembly.
483 * testsuite/binutils-all/mips/mips-xpa-virt-3.d: Likewise.
484
485 2021-05-29 Maciej W. Rozycki <macro@orcam.me.uk>
486
487 * testsuite/binutils-all/mips/mips-xpa-virt-1.d: Use `mips:3000'
488 machine for disassembly.
489 * testsuite/binutils-all/mips/mips-xpa-virt-2.d: Likewise.
490 * testsuite/binutils-all/mips/mips-xpa-virt-3.d: Likewise.
491 * testsuite/binutils-all/mips/mips-xpa-virt-4.d: Likewise.
492
493 2021-05-28 H.J. Lu <hongjiu.lu@intel.com>
494
495 PR ld/27905
496 * readelf.c (decode_x86_feature_2): Revert commit 50c95a739c9.
497
498 2021-05-27 Alan Modra <amodra@gmail.com>
499
500 * readelf (usage): Order -w letters to match --debug-dump= and
501 move common '=' for --debug-dump out of brackets.
502
503 2021-05-26 H.J. Lu <hongjiu.lu@intel.com>
504
505 PR ld/27905
506 * readelf.c (decode_x86_feature_2): Support
507 GNU_PROPERTY_X86_FEATURE_2_CODE16.
508
509 2021-05-23 Tiezhu Yang <yangtiezhu@loongson.cn>
510
511 * readelf.c (get_machine_name): Change Loongson Loongarch to
512 LoongArch.
513
514 2021-05-21 Luis Machado <luis.machado@linaro.org>
515
516 * readelf.c (get_note_type): Add missing NT_ARM_* entries.
517
518 2021-05-21 Luis Machado <luis.machado@linaro.org>
519
520 * readelf.c (get_note_type): Handle NT_MEMTAG note types.
521
522 2021-05-19 Eli Schwartz <eschwartz@archlinux.org>
523
524 * dwarf.c (ENABLE_CHECKING): Define to 0 if not previously set.
525
526 2021-05-19 Alan Modra <amodra@gmail.com>
527
528 PR 27884
529 * dwarf.c (get_type_abbrev_from_form): Replace cu_offset_return
530 param with map_return, and return map for DW_FORM_ref_addr.
531 (get_type_signedness): Adjust calls to get_type_abbrev_from_form.
532 Pass returned cu map start and end to recursive call.
533 (read_and_display_attr_value): Similarly.
534
535 2021-05-19 Alan Modra <amodra@gmail.com>
536
537 PR 27879
538 * sysdump.c (getBARRAY): Sanity check size against max.
539 (getINT): Avoid UB shift left.
540
541 2021-05-15 Alan Modra <amodra@gmail.com>
542
543 * dwarf.c (process_cu_tu_index): Avoid pointer UB. Use _mul_overflow.
544 Delete dead code.
545
546 2021-05-15 Alan Modra <amodra@gmail.com>
547
548 * dwarf.c (display_gdb_index): Avoid pointer UB and overflow in
549 length calculations.
550
551 2021-05-15 Alan Modra <amodra@gmail.com>
552
553 * dwarf.c (display_debug_names): Complain when header length is
554 too small. Avoid pointer UB. Sanity check augmentation string,
555 CU table, TU table and foreign TU table sizes.
556
557 2021-05-15 Alan Modra <amodra@gmail.com>
558
559 * dwarf.c (display_debug_frames): Delete initial_length_size.
560 Avoid pointer UB. Constrain data reads to length given in header.
561 Sanity check cie header length. Only skip up to next FDE on
562 finding augmentation data too long.
563
564 2021-05-15 Alan Modra <amodra@gmail.com>
565
566 * dwarf.c (read_cie): Add more sanity checks to ensure data
567 pointer is not bumped past end.
568
569 2021-05-15 Alan Modra <amodra@gmail.com>
570
571 * dwarf.c (display_debug_ranges): Delete initial_length_size.
572 Correct fallback size calculated on finding a reloc. Constrain
573 data reads to length given in header. Avoid pointer UB.
574
575 2021-05-15 Alan Modra <amodra@gmail.com>
576
577 * dwarf.c (display_debug_rnglists_list): Avoid pointer UB.
578
579 2021-05-15 Alan Modra <amodra@gmail.com>
580
581 * dwarf.c (display_debug_str_offsets): Constrain reads to length
582 given in header.
583
584 2021-05-15 Alan Modra <amodra@gmail.com>
585
586 * dwarf.c (display_debug_aranges): Delete initial_length_size.
587 Use end_ranges to constrain data reads to header length. Avoid
588 pointer UB.
589
590 2021-05-15 Alan Modra <amodra@gmail.com>
591
592 * dwarf.c (display_loc_list): Avoid pointer UB. Correct check
593 before reading uleb length. Warn on excess length.
594
595 2021-05-15 Alan Modra <amodra@gmail.com>
596
597 * dwarf.c (display_debug_macro): Print strings that might not
598 be zero terminated with %*s. Don't bump curr if unterminated.
599
600 2021-05-15 Alan Modra <amodra@gmail.com>
601
602 * dwarf.c (get_line_filename_and_dirname): Delete initial_length_size.
603 Simplify length sanity check, and check for too small lengths.
604 Constrain data reads to header length. Avoid pointer UB.
605
606 2021-05-15 Alan Modra <amodra@gmail.com>
607
608 * dwarf.c (display_debug_macinfo): Print strings that might not
609 be zero terminated with %*s. Don't bump curr if unterminated.
610
611 2021-05-15 Alan Modra <amodra@gmail.com>
612
613 * dwarf.c (display_debug_pubnames_worker): Delete initial_length_size.
614 Simplify length check. Constrain reads to length given by header.
615
616 2021-05-15 Alan Modra <amodra@gmail.com>
617
618 * dwarf.c (display_debug_lines_decoded): Don't use strnlen when
619 we have already checked for NUL termination.
620
621 2021-05-15 Alan Modra <amodra@gmail.com>
622
623 * dwarf.c (read_debug_line_header): Delete initial_length_size.
624 Avoid pointer UB. Keep within length specified by header.
625 Delete dead code.
626
627 2021-05-15 Alan Modra <amodra@gmail.com>
628
629 * dwarf.c (process_debug_info): Always do the first CU length
630 scan for sanity checks. Remove initial_length_size var and
631 instead calculate end_cu. Use end_cu to limit data reads.
632 Delete now dead code checking length.
633
634 2021-05-15 Alan Modra <amodra@gmail.com>
635
636 * dwarf.c (SAFE_BYTE_GET_INTERNAL): Assert only when ENABLE_CHECKING.
637
638 2021-05-15 Alan Modra <amodra@gmail.com>
639
640 * bucomm.h (_mul_overflow): Define.
641 * dwarf.c (get_encoded_value): Avoid pointer UB.
642
643 2021-05-13 Alan Modra <amodra@gmail.com>
644
645 PR 27861
646 * dwarf.c (display_debug_str_offsets): Sanity check dwarf5
647 header length.
648
649 2021-05-13 Alan Modra <amodra@gmail.com>
650
651 PR 27860
652 * dwarf.c (display_debug_frames): Sanity check cie_off before
653 attempting to read cie.
654
655 2021-05-12 Alan Modra <amodra@gmail.com>
656
657 * dwarf.c (process_extended_line_op): Don't bump data pointer past
658 end when strnlen doesn't find string terminator.
659 (decode_location_expression): Remove dead code.
660 (skip_attr_bytes): Remove const from end param. Ensure data
661 pointer doesn't pass end.
662 (get_type_signedness): Remove const from end param.
663 (read_and_display_attr_value): Ensure data pointer doesn't pass end.
664 (display_debug_lines_raw, display_debug_lines_decoded): Likewise.
665 (display_debug_pubnames_worker): Likewise.
666 (display_debug_pubnames_worker): Use SAFE_BYTE_GET_AND INC rather
667 than blindly incrementing data pointer.
668 (display_debug_addr, display_debug_str_offsets): Likewise. Don't
669 compare pointers, compare lengths.
670
671 2021-05-12 Alan Modra <amodra@gmail.com>
672
673 * dwarf.c (SAFE_BYTE_GET_INTERNAL): Define.
674 (SAFE_BYTE_GET, SAFE_BYTE_GET_AND_INC): Define using the above.
675 (SAFE_SIGNED_BYTE_GET, SAFE_SIGNED_BYTE_GET_AND_INC): Likewise.
676 (display_discr_list): Use SAFE_BYTE_GET_AND_INC rather than
677 SAFE_BYTE_GET followed by increment.
678 (process_debug_info): Likewise, and test bytes remaining before
679 incrementing section_begin rather than using pointer comparison.
680 (display_debug_names): Pass lvalue as SAFE_BYTE_GET PTR.
681 (process_cu_tu_index): Likewise for SAFE_BYTE_GET_AND_INC.
682
683 2021-05-12 Alan Modra <amodra@gmail.com>
684
685 * dwarf.c (dwarf_vmatoa64, SAFE_BYTE_GET64, add64): Delete.
686 (skip_attr_bytes): Replace use of SAFE_BYTE_GET64 with
687 SAFE_BYTE_GET_AND_INC.
688 (read_and_display_attr_value): Likewise. Print using dwarf_vmatoa.
689 (process_debug_info, process_cu_tu_index): Likewise.
690 * elfcomm.c (byte_put, byte_put_little_endian, byte_put_big_endian),
691 (byte_get, byte_get_little_endian, byte_get_big_endian),
692 (byte_get_signed): Make size param unsigned. Remove code dealing
693 with 4-byte elf_vma.
694 (byte_get_64): Delete.
695 * elfcomm.h (byte_put, byte_put_little_endian, byte_put_big_endian),
696 (byte_get, byte_get_little_endian, byte_get_big_endian),
697 (byte_get_signed): Update prototypes.
698 (byte_get_64): Delete.
699
700 2021-05-12 Alan Modra <amodra@gmail.com>
701
702 PR 27836
703 * dwarf.c (display_debug_frames): Don't compare pointers derived
704 from user input. Test offset against bounds instead.
705
706 2021-05-12 Alan Modra <amodra@gmail.com>
707
708 PR 27853
709 * dwarf.c (display_formatted_table): Test for data >= end rather
710 than data == end.
711 (process_extended_line_op): Likewise.
712 (display_debug_lines_raw): Likewise.
713 (display_debug_lines_decoded): Likewise.
714
715 2021-05-12 Alan Modra <amodra@gmail.com>
716
717 PR 27849
718 * dwarf.c (fetch_indexed_string): Correct length sanity checks.
719 Sanity check section size for version and padding too. Correct
720 index sanity check. Handle multiple tables in .debug_str_offsets.
721
722 2021-05-11 Hans-Peter Nilsson <hp@axis.com>
723
724 * dwarf.c (process_abbrev_set): Properly parenthesize before
725 casting to unsigned long.
726
727 2021-05-11 Alan Modra <amodra@gmail.com>
728
729 PR 27845
730 * dwarf.c (process_abbrev_set): Replace start and end parameters
731 with section, abbrev_base, abbrev_size, abbrev_offset. Update
732 all callers. Sanity check parameters correctly and emit warnings
733 here rather than..
734 (process_debug_info): ..here.
735
736 2021-05-10 Thomas Wolff <towo@towo.net>
737
738 PR 4356
739 PR 26865
740 PR 27594
741 * windres.c (quot): Revert previous delta. Do not use double
742 quotes when spaces are detected in options.
743 * doc/binutils.texi (windres): Remove suggestion that the
744 --preprocessor option can take arguments.
745
746 2021-05-10 Alan Modra <amodra@gmail.com>
747
748 * dwarf.c (SAFE_BYTE_GET): Check bounds by subtracting amount from
749 END rather than adding amount to PTR.
750 (SAFE_SIGNED_BYTE_GET, SAFE_BYTE_GET64): Likewise.
751
752 2021-05-09 Alan Modra <amodra@gmail.com>
753
754 * objcopy.c (eq_string): Delete.
755 (create_symbol_htab): Use htab_eq_string.
756
757 2021-05-08 Mike Frysinger <vapier@gentoo.org>
758
759 * README-how-to-make-a-release: Update html & pdf entries.
760
761 2021-05-08 Mike Frysinger <vapier@gentoo.org>
762
763 * doc/Makefile.am (html-local, binutils/index.html): New targets.
764 * doc/Makefile.in: Regenerate.
765
766 2021-05-08 Mike Frysinger <vapier@gentoo.org>
767
768 * doc/Makefile.am (AM_MAKEINFOFLAGS): Add --no-split.
769 * doc/Makefile.in: Regenerate.
770
771 2021-05-07 Nick Clifton <nickc@redhat.com>
772
773 * readelf.c (no_processor_specific_unwind): New function.
774 (process_unwind): Use no_processor_specific_unwind for X86
775 targets.
776
777 2021-05-07 Michael Forney <mforney@mforney.org>
778
779 * dwarf.c: Don't omit second operand of '?' operator.
780
781 2021-04-30 Nick Clifton <nickc@redhat.com>
782
783 PR 27796
784 * dwarf.c (load_debug_sup_file): Allocate memory for filename in
785 .debug_sup section.
786
787 2021-04-29 Nick Clifton <nickc@redhat.com>
788
789 PR 27594
790 * doc/binutils.texi (windres): Correct the description of the
791 default value of the --preprocessor argument.
792
793 2021-04-27 Nick Clifton <nickc@redhat.com>
794
795 PR 27779
796 * dwarf.c (parse_gnu_debuglink): Reject empty names.
797 (parse_gnu_debugaltlink): Likewise.
798
799 2021-04-22 Clément Chigot <clement.chigot@atos.net>
800
801 * od-xcoff.c (dump_xcoff32_symbols): Adapt to new
802 aux structures.
803
804 2021-04-21 Nick Lott <nick.lott@gmail.com>
805
806 PR 27672
807 * readelf.c (sym_base): New variable.
808 (enum print_mode): Add more modes.
809 (print_vma): Add suport for new modes.
810 (options): Add sym-base.
811 (usage): Add sym-base.
812 (parse_args): Add support for --sym-base.
813 (print_dynamic_symbol_size): New function.
814 (print_dynamic_symbol): Use new function.
815 * doc/binutils.texi: Document the new feature.
816 * NEWS: Mention the new feature.
817
818 2021-04-21 Nick Clifton <nickc@redhat.com>
819
820 * testsuite/binutils-all/mips/global-local-symtab-sort-n64t.d:
821 Adjust expected output to allow for named section symbols.
822 * testsuite/binutils-all/mips/global-local-symtab-sort-o32t.d:
823 Likewise.
824 * testsuite/binutils-all/readelf.s-64: Likewise.
825 * testsuite/binutils-all/readelf.ss-64-unused: Likewise.
826 * testsuite/binutils-all/readelf.ss-tmips: Likewise.
827 * testsuite/binutils-all/readelf.ss-unused: Likewise.
828
829 2021-04-21 Luo Longjun <luolongjun@huawei.com>
830
831 * readelf.c (print_dynamic_symbol): Print the section name for
832 section symbols without a name of their own.
833
834 2021-04-20 Andreas Krebbel <krebbel@linux.ibm.com>
835
836 * MAINTAINERS: Remove Martin Schwidefsky as s390 maintainer and
837 add him to Past Maintainers.
838 Update my email address.
839
840 2021-04-19 Nick Clifton <nickc@redhat.com>
841
842 PR 21702
843 * arsup.c (ar_addmod): Enable plugin support, if available.
844
845 2021-04-19 Nick Clifton <nickc@redhat.com>
846
847 * rename.c: (get_stat_atime_ns): Add prototype.
848 (get_stat_mtime_ns): Add prototype.
849
850 2021-04-16 Alan Modra <amodra@gmail.com>
851
852 PR 27725
853 * rename.c (get_stat_atime, get_stat_mtime): Make static.
854 (get_stat_atime_ns, get_stat_mtime_ns): Likewise.
855
856 2021-04-15 Pekka Seppänen <pexu@sourceware.mail.kapsi.fi>
857
858 PR 27725
859 * rename.c (get_stat_atime_ns): Add ATTRIBUTE_UNUSED.
860 (get_stat_mtime_ns): Likewise.
861
862 2021-04-15 Alan Modra <amodra@gmail.com>
863
864 PR 27725
865 * configure.ac: Check for sys/time.h and utimensat. Use standard
866 checks for mkstemp and mkdtemp. Whitespace. Check for nanosecond
867 members of struct stat.
868 * rename.c: Prefer sys/time.h for utimes over utime.h for utime.
869 (STAT_TIMESPEC, STAT_TIMESPEC_NS): Define
870 (get_stat_atime_ns, get_stat_mtime_ns): New inline functions.
871 (get_stat_atime, get_stat_mtime): Likewise.
872 (set_times): Choose first available of utimensat, utimes, utime.
873 Use above inline functions to set timespec and timeval values.
874 * configure: Regenerate.
875 * config.in: Regenerate.
876 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add test of
877 file timestamp when --preserve-dates is used.
878
879 2021-04-15 Alan Modra <amodra@gmail.com>
880
881 PR 27456
882 * rename.c (smart_rename): When TO and FROM are equal, just set
883 file timestamp.
884 * objcopy.c (strip_main, copy_main): Always call smart_rename.
885
886 2021-04-14 H.J. Lu <hongjiu.lu@intel.com>
887
888 PR binutils/27708
889 * testsuite/binutils-all/x86-64/pr27708.dump: New file.
890 * testsuite/binutils-all/x86-64/pr27708.exe.bz2: Likewise.
891 * testsuite/binutils-all/x86-64/x86-64.exp: Run binutils/27708
892 test.
893
894 2021-04-14 Mark Harmstone <mark@harmstone.com>
895
896 PR 27686
897 * resbin.c (bin_to_res_version): Ignore any trailing bytes at the
898 end of the structure.
899
900 2021-04-14 Frederic Cambus <fred@statdns.com>
901
902 * readelf.c (get_netbsd_elfcore_note_type): Remove unneeded #ifdef
903 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS.
904
905 2021-04-14 Alan Modra <amodra@gmail.com>
906
907 PR 27716
908 * objdump.c (show_line): Don't limit paths to PATH_MAX.
909 * readelf.c (struct filedata): Change program_interpreter from
910 a char array to a char pointer.
911 (process_program_headers): Sanity check PT_INTERP p_filesz.
912 Malloc program_interpreter using p_filesz and read directly from
913 file.
914 (process_dynamic_section): Check program_interpreter is non-NULL.
915 (free_filedata): New function, split out from..
916 (process_object): ..here.
917 (close_debug_file): Call free_filedata.
918 * sysdep.h: Don't include sys/param.h.
919 (PATH_MAX): Don't define.
920 * configure.ac: Don't check for sys/param.h.
921 * configure: Regenerate.
922
923 2021-04-13 Frederic Cambus <fred@statdns.com>
924
925 * readelf.c (process_netbsd_elf_note): Remove now unneeded #ifdef
926 check for NT_NETBSD_PAX.
927
928 2021-04-12 Alan Modra <amodra@gmail.com>
929
930 * configure.ac (--enable-checking): Add support.
931 * config.in: Regenerate.
932 * configure: Regenerate.
933
934 2021-04-09 Alan Modra <amodra@gmail.com>
935
936 * objdump.c (struct objdump_disasm_info): Delete dynrelbuf and
937 dynrelcount.
938 (find_symbol_for_address): Adjust for dynrelbuf and dynrelcount move.
939 (disassemble_section, disassemble_data): Likewise.
940
941 2021-04-06 Alan Modra <amodra@gmail.com>
942
943 * objdump.c (objdump_symbol_at_address): Return asymbol*.
944
945 2021-04-06 Alan Modra <amodra@gmail.com>
946
947 * NEWS: Mention C99 requirement.
948 * README: Likewise. Modernise examples and "Reporting bugs".
949
950 2021-04-05 Alan Modra <amodra@gmail.com>
951
952 * configure.ac: Assume long long is available. Don't test for
953 strings.h, stdlib.h, limits.h, locale.h, or wchar.h. Check
954 inttypes.h, stdint.h, sys/stat.h and sys/types.h. Don't check for
955 strcoll, setlocale, setmode or location of time_t. Don't check
956 for fprintf, getenv, snprintf, strnlen, strstr or vsnprintf decls.
957 (AC_ISC_POSIX, AXC_HEADER_STRING, AC_FUNC_ALLOCA): Don't invoke.
958 * sysdep.h: Don't include alloca-conf.h, include config.h instead.
959 Test HAVE_SYS_TYPES_H and reorder includes. Include limits.h,
960 locale.h, string.h and stdlib.h unconditionally. Remove various
961 fallback declarations. Assume long long is available.
962 * addr2line.c: Don't test HAVE_SETLOCALE.
963 * ar.c: Likewise.
964 * coffdump.c: Likewise.
965 * dlltool.c: Likewise.
966 * dllwrap.c: Likewise.
967 * elfedit.c: Likewise.
968 * nm.c: Likewise.
969 * objcopy.c: Likewise.
970 * objdump.c: Likewise.
971 * readelf.c: Likewise.
972 * size.c: Likewise.
973 * srconv.c: Likewise.
974 * strings.c: Likewise.
975 * sysdump.c: Likewise.
976 * windmc.c: Likewise.
977 * windres.c: Likewise.
978 * bucomm.c: Don't test HAVE_TIME_T_IN_TIME_H or HAVE_TIME_T_IN_TYPES_H.
979 * dwarf.c: Include limits.h unconditionally. Assume long long
980 is available.
981 * nm.c: Don't test HAVE_STRCOLL.
982 * readelf.c: Don't test HAVE_WCHAR_H.
983 * strings.c: Assume long long is available.
984 * syslex.l: Include string.h unconditionally.
985 * aclocal.m4: Regenerate.
986 * config.in: Regenerate.
987 * configure: Regenerate.
988 * Makefile.in: Regenerate.
989 * doc/Makefile.in: Regenerate.
990
991 2021-04-01 Martin Liska <mliska@suse.cz>
992
993 * elfcomm.h (strneq): Remove strneq and use startswith.
994 * readelf.c (ia64_process_unwind): Likewise.
995 (process_note): Likewise.
996
997 2021-04-01 Martin Liska <mliska@suse.cz>
998
999 * dllwrap.c: Use startswith function.
1000 * objcopy.c (is_dwo_section): Likewise.
1001 (handle_remove_section_option): Likewise.
1002 (copy_main): Likewise.
1003 * objdump.c (is_significant_symbol_name): Likewise.
1004
1005 2021-04-01 Martin Liska <mliska@suse.cz>
1006
1007 * dwarf.c (display_debug_lines_raw): Replace const_strneq with
1008 startswith.
1009 (display_debug_lines_decoded): Likewise.
1010 (display_debug_links): Likewise.
1011 * elfcomm.c (setup_archive): Likewise.
1012 * elfcomm.h (const_strneq): Likewise.
1013 * readelf.c (process_section_headers): Likewise.
1014 (slurp_ia64_unwind_table): Likewise.
1015 (slurp_hppa_unwind_table): Likewise.
1016 (decode_arm_unwind): Likewise.
1017 (display_debug_section): Likewise.
1018 (process_note): Likewise.
1019
1020 2021-03-31 Alan Modra <amodra@gmail.com>
1021
1022 * sysdep.h (POISON_BFD_BOOLEAN): Define.
1023 * addr2line.c, * ar.c, * arsup.c, * bfdtest2.c, * binemul.c,
1024 * binemul.h, * bucomm.c, * bucomm.h, * budbg.h, * coffgrok.c,
1025 * debug.c, * debug.h, * dlltool.c, * dwarf.c, * dwarf.h,
1026 * elfedit.c, * emul_aix.c, * mclex.c, * nm.c, * objcopy.c,
1027 * objdump.c, * od-macho.c, * prdbg.c, * rdcoff.c, * rddbg.c,
1028 * readelf.c, * rename.c, * stabs.c, * strings.c, * windint.h,
1029 * windmc.c, * windmc.h, * windres.c, * winduni.c,
1030 * wrstabs.c: Replace bfd_boolean with bool, FALSE with false,
1031 and TRUE with true throughout.
1032
1033 2021-03-31 Alan Modra <amodra@gmail.com>
1034
1035 * coffdump.c: Include stdint.h in place of bfd_stdint.h.
1036 * dwarf.c: Likewise.
1037
1038 2021-03-31 Alan Modra <amodra@gmail.com>
1039
1040 * prdbg.c (pr_function_type): Replace LITSTTCPY with strcpy.
1041
1042 2021-03-29 Alan Modra <amodra@gmail.com>
1043
1044 * dlltool.c (main): Don't use "boolean_condition ? TRUE : FALSE".
1045 * dwarf.c (read_and_display_attr_value): Likewise.
1046 (display_debug_str_offsets): Likewise.
1047 * objdump.c (dump_bfd): Likewise.
1048 * readelf.c (dump_section_as_strings): Likewise.
1049 (dump_section_as_bytes): Likewise.
1050
1051 2021-03-29 Alan Modra <amodra@gmail.com>
1052
1053 * objdump.c (process_links): Use type int.
1054 * readelf.c (request_dump): Don't increment do_dump, set it.
1055 * windint.h (target_is_bigendian): Use type bfd_boolean.
1056 * windmc.c (target_is_bigendian): Likewise.
1057 * windres.c (target_is_bigendian): Likewise.
1058
1059 2021-03-22 Martin Liska <mliska@suse.cz>
1060
1061 * dlltool.c (scan_drectve_symbols): Replace usage of CONST_STRNEQ
1062 with startswith.
1063 * emul_aix.c (ar_emul_aix_parse_arg): Likewise.
1064 * objcopy.c (is_mergeable_note_section): Likewise.
1065 * objdump.c (dump_dwarf_section): Likewise.
1066 * prdbg.c (pr_method_type): Likewise.
1067 (pr_class_baseclass): Likewise.
1068 (tg_class_baseclass): Likewise.
1069 * readelf.c (process_lto_symbol_tables): Likewise.
1070 * stabs.c (ULLHIGH): Likewise.
1071 (parse_stab_argtypes): Likewise.
1072 (stab_demangle_function_name): Likewise.
1073
1074 2021-03-19 H.J. Lu <hongjiu.lu@intel.com>
1075
1076 * readelf.c (get_machine_name): Add EM_INTELGT.
1077
1078 2021-03-18 Nick Clifton <nickc@redhat.com>
1079
1080 PR 27478
1081 * readelf.c (dump_section_as_strings): Mention separate filename.
1082 (dump_section_as_bytes): Likewise.
1083 (dump_section_as_ctf): Likewise.
1084 (initialise_dumkps_byname): Only issue a warning for missing
1085 sections if processing the main file.
1086 (process_section_contents): Only issue a warning for unsumped
1087 section numbers in the main file.
1088 (initialise_dump_sects): New function. Contains code extracted
1089 from ...
1090 (process_object): ... here. Also call initialise_dump_sects for
1091 separate files.
1092
1093 2021-03-16 Nick Clifton <nickc@redhat.com>
1094
1095 PR 27534
1096 * readelf.c (display_debug_section): Also retain .debug_addr
1097 sections.
1098
1099 2021-03-16 Nick Clifton <nickc@redhat.com>
1100
1101 PR 27533
1102 * readelf.c (process_section_contents): Only dump debug
1103 information for separate files unless process_links is enabled.
1104 (process_object): Always call process_section_contents for
1105 separate info files.
1106
1107 2021-03-15 Nick Clifton <nickc@redhat.com>
1108
1109 PR 27487
1110 * nm.c (FORMAT_JUST_SYMBOLS): Define.
1111 (struct optput_fns): Add entry for FORMAT_JUST_SYMBOLS.
1112 (long_options): Add just-symbols.
1113 (set_output_format): Add support for just-symbols.
1114 (get_print_format): Likewise.
1115 (do_not_print_object_filename): New function.
1116 (do_not_print_archive_filename): New function.
1117 (do_not_print_archive_member): New function.
1118 (do_not_print_symbol_filename): New function.
1119 (just_print_symbol_name): New function.
1120 (main): Handle --just-symbols.
1121 * NEWS: Mention the new feature.
1122 * doc/binutils.texi: Document the new feature.
1123
1124 2021-03-12 Clément Chigot <clement.chigot@atos.net>
1125
1126 * od-xcoff.c: Replace RTB by TRL entry.
1127
1128 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1129 Andrew Burgess <andrew.burgess@embecosm.com>
1130
1131 * readelf.c (get_note_type): Handle NT_RISCV_CSR.
1132
1133 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
1134 Andrew Burgess <andrew.burgess@embecosm.com>
1135
1136 * readelf.c (get_note_type): Handle NT_GDB_TDESC.
1137
1138 2021-03-05 Nick Clifton <nickc@redhat.com>
1139
1140 PR 27387
1141 * dwarf.c (display_debug_macro): Handle the displaying of
1142 DW_MACRO_define_strp and DW_MACRO_undef_strp in v4
1143 .debug_macro.dwo sections.
1144
1145 2021-03-04 Nick Clifton <nickc@redhat.com>
1146
1147 PR 27478
1148 * objdump.c (process_links): New variable.
1149 (usage): Add --process-links.
1150 (long_options): Likewise.
1151 (dump_bfd): Stop processing once the bfd has been loaded unless
1152 this is the main file or process_links has been enabled.
1153 (main): Handle the process-links option.
1154 * readelf.c (process_links): New variable.
1155 (struct filedata): Add is_separate field.
1156 (options): Add --process-links.
1157 (usage): Likewise.
1158 (parse_args): Likewise.
1159 (process_file_header): Include the filename when dumping
1160 information for separate debuginfo files.
1161 (process_program_headers): Likewise.
1162 (process_section_headers): Likewise.
1163 (process_section_groups): Likewise.
1164 (process_relocs): Likewise.
1165 (process_dynamic_section): Likewise.
1166 (process_version_sections): Likewise.
1167 (display_lto_symtab): Likewise.
1168 (process_symbol_table): Likewise.
1169 (process_syminfo): Likewise.
1170 (initialise_dumps_by_name): Likewise.
1171 (process_section_contents): Likewise.
1172 (process_notes_at): Likewise.
1173 (process_notes): Likewise.
1174 (open_file): Add is_separate parameter. Use to initialise the
1175 is_separate field in the filedata structure.
1176 (open_deug): Update call to open_file.
1177 (process_object): Add processing of the contents of separate
1178 debuginfo files, gated by the process_links variable.
1179 (process_archive): Update call to open_file.
1180 (process_file): Initialise the is_separate field in the filedata
1181 structure.
1182 * dwarf.c (load_separate_debug_info_file): Only report the
1183 loading of a separate file if debug links are being dumped.
1184 * objcopy.c (keep_section_symbols): New variable.
1185 (enum command_line_switch): Add OPTION_KEEP_SYMBOLS.
1186 (strip_options): Add keep-section-symbols.
1187 (copy_options): Likewise.
1188 (copy_usage): Likewise.
1189 (strip_usage): Likewise.
1190 (copy_object): Keep section symbols if requested by command line
1191 option.
1192 (strip_main): Handle --keep-section-symbols.
1193 (copy_main): Likewise.
1194 * doc/binutils.texi: Document the new options.
1195 * NEWS: Mention the new features.
1196 * testsuite/binutils-all/compress.exp (test_gnu_debuglink):
1197 Update options passed to objdump. Use diff rather than cmp to
1198 compare the dumped data.
1199 * testsuite/binutils-all/objdump.WK2: Update regexp.
1200 * testsuite/binutils-all/objdump.WK3: Update regexp.
1201 * testsuite/binutils-all/objdump.exp: Use --process-links
1202 instead of --dwarf=follow-links.
1203 * testsuite/binutils-all/readelf.exp (readelf_test): Include
1204 readelf's output in the log when the test fails.
1205 Add the -P option to the -wKis test.
1206 * testsuite/binutils-all/readelf.wKis: Update expected output.
1207
1208 2021-03-03 Alan Modra <amodra@gmail.com>
1209
1210 PR 27493
1211 * objcopy.c (filter_symbols): Apply --weaken to undefined symbols.
1212 * NEWS: Mention feature.
1213
1214 2021-03-01 H.J. Lu <hongjiu.lu@intel.com>
1215
1216 PR binutils/27486
1217 * dwarf.c (load_separate_debug_info): Issue warning only if
1218 do_debug_links is set.
1219 * testsuite/binutils-all/compress.exp: Run objdump and readelf
1220 with missing debug file.
1221
1222 2021-03-01 Alan Modra <amodra@gmail.com>
1223
1224 PR 27128
1225 * doc/binutils.texi: Add nm --with-symbol-versions and
1226 --without-symbol-versions documentation.
1227 * nm.c (with_symbol_versions): New variable.
1228 (enum long_option_values): Delete OPTION_WITH_SYMBOL_VERSIONS.
1229 (long_options): Make --with-symbol-versions entry twiddle the flag.
1230 Add --without-symbol-versions.
1231 (print_symname): Strip version when !with_symbol_versions. Add
1232 dynamic version info under control of with_symbol_versions.
1233 (main): Remove OPTION_WITH_SYMBOL_VERSIONS case.
1234
1235 2021-02-26 Fangrui Song <maskray@google.com>
1236
1237 PR 27408
1238 * readelf.c (quiet): New option flag.
1239 (enum long_option_values): New enum to hold long option value.
1240 (long_options): Add --quiet.
1241 (usage): Mention --quiet.
1242 (display_rel_file): If quiet is enabled, suppress "no symbols".
1243 (main): Handle the new option.
1244 * NEWS: Mention --quiet.
1245 * docs/binutils.texi: Document --quiet.
1246
1247 2021-02-26 Tom de Vries <tdevries@suse.de>
1248
1249 * dwarf.c (display_debug_addr): Handle dwarf-5 .debug_addr bits.
1250
1251 2021-02-26 Tom de Vries <tdevries@suse.de>
1252
1253 PR 27390
1254 * dwarf.c: (skip_attr_bytes): Add support for DW_FORM_str* and
1255 DW_FORM_addrx*.
1256 (read_and_display_attr_value): Likewise.
1257
1258 2021-02-25 Nick Clifton <nickc@redhat.com>
1259
1260 * dwarf.c (get_type_abbrev_from_form): Accept but ignore sup
1261 forms.
1262 (read_and_display_attr_value): Handle sup forms.
1263 (display_debug_sup): New function. Displays the contents of a
1264 .debug_sup section.
1265 (load_debug_sup_file): New function. Loads the contents of a file
1266 referenced by a .debug_sup section.
1267 (check_for_and_load_links): Call load_debug_sup_file.
1268 (debug_displays): Add entry for .debug_sup.
1269 * dwarf.h (enum dwarf_section_display_enum): Add debug_sup.
1270 * readelf.c (process_section_headers): Add support for debug_sup.
1271 * doc/debug.options.texi: Note that the =links option will display
1272 the contents of .debug_sup sections.
1273 * NEWS: Mention the new support.
1274
1275 2021-02-25 Alan Modra <amodra@gmail.com>
1276
1277 PR 27456
1278 * rename.c (simple_copy): Mark target_stat ATTRIBUTE_UNUSED.
1279
1280 2021-02-24 Nick Clifton <nickc@redhat.com>
1281
1282 PR 27285
1283 * od-elf32_avr.c (elf32_avr_get_memory_usage): Check for overflows
1284 when adding together the section sizes.
1285
1286 2021-02-24 Nick Clifton <nickc@redhat.com>
1287
1288 * objcopy.c (merge_gnu_build_notes): Remove support for v1/v2 GNU
1289 build notes.
1290 * readelf.c (print_gnu_build_attribute_description): Likewise.
1291
1292 2021-02-24 Alan Modra <amodra@gmail.com>
1293 Siddhesh Poyarekar <siddhesh@gotplt.org>
1294
1295 PR 27456
1296 * bucomm.h (smart_rename): Update prototype.
1297 * rename.c (smart_rename): Add fromfd and preserve_dates params.
1298 Pass fromfd and target_stat to simple_copy. Call set_times
1299 when preserve_dates.
1300 (simple_copy): Accept fromfd rather than from filename. Add
1301 target_stat param. Rewind fromfd rather than opening. Open
1302 "to" file without O_CREAT. Try to preserve S_ISUID and S_ISGID.
1303 * ar.c (write_archive): Rename ofd to tmpfd. Dup tmpfd before
1304 closing output temp file, and pass tmpfd to smart_rename.
1305 * arsup.c (temp_fd): Rename from real_fd.
1306 (ar_save): Dup temp_fd and pass to smart_rename.
1307 * objcopy.c (strip_main, copy_main): Likewise, and pass
1308 preserve_dates.
1309
1310 2021-02-24 Alan Modra <amodra@gmail.com>
1311
1312 PR 27456
1313 * rename.c: Tidy throughout.
1314 (smart_rename): Always copy. Remove windows specific code.
1315
1316 2021-02-20 Alan Modra <amodra@gmail.com>
1317
1318 * testsuite/lib/binutils-common.exp: Whitespace fixes throughout.
1319 (run_dump_test): Fail if expecting errors from a file like we do
1320 for error strings, if no error is seen.
1321
1322 2021-02-19 Alan Modra <amodra@gmail.com>
1323
1324 * testsuite/binutils-all/readelf.exp (pr26548): Run for 32-bit too.
1325
1326 2021-02-19 Siddhesh Poyarekar <siddhesh@gotplt.org>
1327
1328 * ar.c (write_archive): Remove TARGET_STAT. Adjust call to
1329 SMART_RENAME.
1330 * arsup.c (ar_save): Likewise.
1331 * objcopy (strip_main): Don't copy TMPFD. Don't set times on
1332 temporary file and adjust call to SMART_RENAME.
1333 (copy_main): Likewise.
1334 * rename.c [!S_ISLNK]: Remove definitions.
1335 (try_preserve_permissions): Remove function.
1336 (smart_rename): Remove FD, PRESERVE_DATES arguments. Use
1337 rename system call only if TO does not exist.
1338 * bucomm.h (smart_rename): Adjust declaration.
1339
1340 2021-02-18 Nick Clifton <nickc@redhat.com>
1341
1342 * objcopy.c (merge_gnu_build_notes): Handle notes with a start
1343 address that is higher than the end address.
1344
1345 2021-02-17 Alan Modra <amodra@gmail.com>
1346
1347 * dwarf.c: Include limits.h.
1348 (CHAR_BIT): Provide backup define.
1349 (read_leb128): Use CHAR_BIT to size "result" in bits. Correct
1350 signed overflow checking.
1351 * testsuite/binutils-all/pr26548.s,
1352 * testsuite/binutils-all/pr26548.d,
1353 * testsuite/binutils-all/pr26548e.d: New tests.
1354 * testsuite/binutils-all/readelf.exp: Run them.
1355 (readelf_test): Drop unused "xfails" parameter. Update all uses.
1356
1357 2021-02-16 Jan Beulich <jbeulich@suse.com>
1358
1359 * dwarf.c (process_debug_info): Initialize "dwo_id".
1360
1361 2021-02-15 Alan Modra <amodra@gmail.com>
1362
1363 * objdump.c (load_specific_debug_section): Don't call
1364 bfd_cache_section_contents. Rearrange so that
1365 bfd_get_full_section_contents is not called on path where
1366 bfd_simple_get_relocated_section_contents is called.
1367 Don't set section->user_data.
1368 (free_debug_section): Always free section->start. Don't twiddle
1369 section flags.
1370 * readelf.c (load_specific_debug_section): Don't set user_data.
1371 * dwarf.h (struct dwarf_section): Remove use_data field.
1372 * dwarf.c (NO_ABBREVS, ABBREV): Adjust to suit.
1373
1374 2021-02-15 Alan Modra <amodra@gmail.com>
1375
1376 * testsuite/binutils-all/compress.exp: Remove nds32 xfails.
1377 * testsuite/binutils-all/objdump.exp: Likewise.
1378
1379 2021-02-14 Alan Modra <amodra@gmail.com>
1380
1381 * objdump.c (slurp_symtab): Don't add an extra entry for NULL
1382 to the symbol array.
1383 (slurp_dynamic_symtab): Likewise.
1384 (dump_bfd): Formatting. Copy terminating NULL from extra_syms.
1385
1386 2021-02-14 Alan Modra <amodra@gmail.com>
1387
1388 * Makefile.in: Regenerate.
1389 * doc/Makefile.in: Regenerate.
1390
1391 2021-02-13 Mike Frysinger <vapier@gentoo.org>
1392
1393 * aclocal.m4: Regenerate.
1394
1395 2021-02-12 Nick Clifton <nickc@redhat.com>
1396
1397 * configure.ac (follow-debug-links): Add option to enable or
1398 disable the following of debug links by default. Set the
1399 default for the option to be 'follow'.
1400 * dwarf.c (do_follow_links): Initialise with DEFAULT_FOR_FOLLOW_LINKS.
1401 (dwarf_select_sections_by_names): Add no-follow-links option.
1402 (dwarf_select_sections_by_letter): Add 'N' option.
1403 * objdump.c (usage): Add conditional text describing the
1404 follow links option.
1405 (slurp_symtab): Ensure that there is a NULL entry at the end
1406 of the symbol table.
1407 (slurp_dynamic_symtab): Likewise.
1408 (dump_bfd): When extending the symbol table, ensure that there
1409 is still a NULL entry at the end.
1410 * readelf.c (usage): Add conditional text describing the
1411 follow links option.
1412 * doc/binutils.texi: Update documentation for objcopy and
1413 readelf.
1414 * doc/debug.options.texi: Update documentation of the
1415 follow-links option.
1416 * config.in: Regenerate.
1417 * configure: Regenerate.
1418 * testsuite/binutils-all/compress.exp: Add the -WN option to
1419 objdump command lines that are not expecting to follow links.
1420 * testsuite/binutils-all/readelf.exp: Add the
1421 --debug-dump=no-follow-links option to tests that are not
1422 expecting to follow debug links.
1423 * NEWS: Mention the new behaviour.
1424
1425 2021-02-12 Alan Modra <amodra@gmail.com>
1426
1427 * testsuite/binutils-all/objcopy.exp: Report "unsupported" when
1428 gas or ld fails to build a testcase rather than "unresolved".
1429 Report "fail" when readelf returns an error status rather than
1430 "unresolved".
1431 * testsuite/binutils-all/ar.exp: Likewise.
1432 * testsuite/binutils-all/compress.exp: Likewise.
1433 * testsuite/binutils-all/readelf.exp: Likewise.
1434
1435 2021-02-12 Alan Modra <amodra@gmail.com>
1436
1437 * testsuite/binutils-all/pr25662.s: Replace "a" with "aaa" and
1438 "c" with "ccc" labels.
1439
1440 2021-02-12 Tom de Vries <tdevries@suse.de>
1441
1442 * dwarf.h (debug_info): Fix typo in comment.
1443
1444 2021-02-12 Tom de Vries <tdevries@suse.de>
1445
1446 * dwarf.c (display_debug_str_offsets): Handle multiple sets of
1447 entries.
1448
1449 2021-02-12 Tom de Vries <tdevries@suse.de>
1450
1451 * dwarf.c (process_debug_info): Print DWO ID.
1452
1453 2021-02-11 Alan Modra <amodra@gmail.com>
1454
1455 PR 27290
1456 PR 27293
1457 PR 27295
1458 * od-elf32_avr.c (elf32_avr_get_note_section_contents): Formatting.
1459 Use bfd_malloc_and_get_section.
1460 (elf32_avr_get_note_desc): Formatting. Return descsz. Sanity
1461 check namesz. Return NULL if descsz is too small. Ensure
1462 string table is terminated.
1463 (elf32_avr_get_device_info): Formatting. Add note_size param.
1464 Sanity check note.
1465 (elf32_avr_dump_mem_usage): Adjust to suit.
1466
1467 2021-02-10 Tom de Vries <tdevries@suse.de>
1468
1469 PR binutils/27391
1470 * dwarf.c (load_dwo_file): Handle case that name is absolute path.
1471
1472 2021-02-10 Tom de Vries <tdevries@suse.de>
1473
1474 PR binutils/27371
1475 * dwarf.c (display_debug_ranges): Filter range lists according to
1476 section.
1477
1478 2021-02-09 Tom de Vries <tdevries@suse.de>
1479
1480 PR binutils/27370
1481 * dwarf.c (get_type_abbrev_from_form): Handle DW_FORM_ref_sig8.
1482
1483 2021-02-09 Tom de Vries <tdevries@suse.de>
1484
1485 PR binutils/27386
1486 * dwarf.c (process_debug_info): Handling DW_UT_skeleton and
1487 DW_UT_split_compile.
1488
1489 2021-02-09 Alan Modra <amodra@gmail.com>
1490
1491 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Remove
1492 symbianelf.
1493
1494 2021-02-07 Alan Modra <amodra@gmail.com>
1495
1496 * unwind-ia64.c (unw_print_xyreg): Don't leave output buffer
1497 uninitialised on invalid input.
1498
1499 2021-02-06 Alan Modra <amodra@gmail.com>
1500
1501 PR 27349
1502 * rename.c (smart_rename): Test for existence and type of output
1503 file with lstat.
1504
1505 2021-02-05 Nick Clifton <nickc@redhat.com>
1506
1507 * MAINTAINERS: Remove Richard Henderson as the ALPHA maintainer.
1508
1509 2021-02-05 Eli Zaretskii <eliz@gnu.org>
1510
1511 PR 27252
1512 * elfedit.c (check_file):
1513 * bucomm.c (get_file_size): Fix typos in comments.
1514
1515 2021-02-05 Alan Modra <amodra@gmail.com>
1516
1517 PR 27345
1518 * arsup.c (ar_save): Use stat rather than lstat.
1519
1520 2021-02-03 Alan Modra <amodra@gmail.com>
1521
1522 PR 27270
1523 PR 27284
1524 PR 26945
1525 * ar.c: Don't include libbfd.h.
1526 (write_archive): Replace xmalloc+strcpy with xstrdup. Use
1527 bfd_stat rather than fstat on iostream. Move stat and fd tests
1528 outside of _WIN32 ifdef. Delete skip_stat variable.
1529 * arsup.c (temp_name, real_ofd): New static variables.
1530 (ar_open): Use make_tempname and bfd_fdopenw.
1531 (ar_save): Adjust to suit ar_open changes. Move stat output
1532 of _WIN32 ifdef.
1533 * objcopy.c: Don't include libbfd.h.
1534 (copy_file): Use bfd_stat.
1535
1536 2021-02-02 H.J. Lu <hongjiu.lu@intel.com>
1537
1538 PR binutils/27281
1539 * readelf.c (process_section_headers): Add 'R' and 'D' to
1540 "Key to Flags:".
1541 * testsuite/binutils-all/retain1a.d: Updated.
1542
1543 2021-01-30 Nick Clifton <nickc@redhat.com>
1544
1545 * README-how-to-make-a-release: Small updates after the 2.35.2
1546 release.
1547
1548 2021-01-28 Eli Zaretskii <eliz@gnu.org>
1549
1550 PR 4356
1551 * windres.c (quot): Use double quotes to protect strings on
1552 Windows platforms.
1553
1554 2021-01-28 Eli Zaretskii <eliz@gnu.org>
1555
1556 PR 27252
1557 * bucomm.c (get_file_size): Add code to handle /dev/null on
1558 Windows systems.
1559 * elfedit.c (check_file): Likewise.
1560
1561 2021-01-27 Nick Clifton <nickc@redhat.com>
1562
1563 * objcopy.c (copy_main): Remove conditional control of the calls
1564 to free, simplifying the code and making it easier to detect
1565 typos.
1566
1567 2021-01-26 Frederic Cambus <fred@statdns.com>
1568
1569 * objcopy.c (copy_main): Fix a double free happening when both
1570 --localize-symbols and --globalize-symbols options are invoked
1571 together.
1572
1573 2021-01-24 Nick Clifton <nickc@redhat.com>
1574
1575 * README-how-to-make-a-release: Minor updates after the 2.36 release.
1576
1577 2021-01-16 Alan Modra <amodra@gmail.com>
1578
1579 * readelf.c (uncompress_section_contents): Tidy inflateEnd result test.
1580
1581 2021-01-15 Alan Modra <amodra@gmail.com>
1582
1583 PR 26539
1584 * readelf.c (uncompress_section_contents): Always call inflateEnd.
1585
1586 2021-01-14 Alexandre Oliva <oliva@gnu.org>
1587
1588 * MAINTAINERS: Update my email address.
1589
1590 2021-01-14 Nick Clifton <nickc@redhat.com>
1591
1592 * po/sv.po: Updated Swedish translation.
1593
1594 2021-01-13 Alan Modra <amodra@gmail.com>
1595
1596 * Makefile.in: Regenerate.
1597 * doc/Makefile.in: Regenerate.
1598
1599 2021-01-13 Zebediah Figura <z.figura12@gmail.com>
1600
1601 PR 27037
1602 * dlltool.c (i386_trampoline): Adjust %rsp immediately on entry
1603 and before exit.
1604 (i386_x64_trampoline): Add SEH annotations.
1605 (struct mac): Add how_seh field.
1606 (make_delay_head): If how_set field is true add SEh instructions.
1607
1608 2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
1609
1610 PR binutils/26792
1611 * configure.ac: Use GNU_MAKE_JOBSERVER.
1612 * aclocal.m4: Regenerated.
1613 * configure: Likewise.
1614
1615 2021-01-12 Nick Clifton <nickc@redhat.com>
1616
1617 * po/fr.po: Updated French translation.
1618
1619 2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
1620
1621 PR ld/27173
1622 * configure: Regenerated.
1623
1624 2021-01-11 Nick Clifton <nickc@redhat.com>
1625
1626 * po/pt.po: Updated Portuguese translation.
1627 * po/sr.po: Updated Serbian translation.
1628 * po/uk.po: Updated Ukranian translation.
1629
1630 2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
1631
1632 * configure: Regenerated.
1633
1634 2021-01-09 Nick Clifton <nickc@redhat.com>
1635
1636 * configure: Regenerate.
1637 * po/binutils.pot: Regenerate.
1638
1639 2021-01-09 Nick Clifton <nickc@redhat.com>
1640
1641 * 2.36 release branch crated.
1642 * README-how-to-make-a-release: Add note about updating Makefiles
1643 and libtool files.
1644 * BRANCHES: Add binutils-2.36-branch.
1645
1646 2021-01-09 Alan Modra <amodra@gmail.com>
1647
1648 * configure: Regenerate.
1649
1650 2021-01-07 Samuel Thibault <samuel.thibault@gnu.org>
1651
1652 * configure: Regenerate.
1653
1654 2021-01-07 H.J. Lu <hongjiu.lu@intel.com>
1655
1656 PR 27109
1657 * objcopy.c (copy_object): Handle section symbols for
1658 non-relocatable inputs.
1659 * testsuite/binutils-all/readelf.exp (readelf_test): Check
1660 is_elf_unused_section_symbols.
1661 * testsuite/binutils-all/readelf.s-64: Updated.
1662 * testsuite/binutils-all/readelf.ss: Likewise.
1663 * testsuite/binutils-all/readelf.ss-64: Likewise.
1664 * testsuite/binutils-all/readelf.s-64-unused: New file.
1665 * testsuite/binutils-all/readelf.ss-64-unused: Likewise.
1666 * testsuite/binutils-all/readelf.ss-unused: Likewise.
1667 * testsuite/lib/binutils-common.exp
1668 (is_elf_unused_section_symbols): New proc.
1669
1670 2021-01-06 Reuben Thomas <rrt@sc3d.org>
1671
1672 * binutils/readelf.c: Correct grammar in comment.
1673
1674 2021-01-01 Nicolas Boulenguez <nicolas@debian.org>
1675
1676 * coffgrok.c (do_type): Correct spelling of auxiliary in errors.
1677 * doc/binutils.texi: Correct grammar.
1678 * readelf.c (process_version_sections): Correct spelling of auxiliary
1679 in warning.
1680 * testsuite/binutils-all/vax/objdump.exp: Comment grammar fix.
1681
1682 2021-01-01 Alan Modra <amodra@gmail.com>
1683
1684 Update year range in copyright notice of all files.
1685
1686 For older changes see ChangeLog-2020
1687 \f
1688 Copyright (C) 2021-2022 Free Software Foundation, Inc.
1689
1690 Copying and distribution of this file, with or without modification,
1691 are permitted in any medium without royalty provided the copyright
1692 notice and this notice are preserved.
1693
1694 Local Variables:
1695 mode: change-log
1696 left-margin: 8
1697 fill-column: 74
1698 version-control: never
1699 End: