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