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