1 2020-04-22 Alan Modra <amodra@gmail.com>
3 * readelf.c (struct dump_data): New, used..
4 (cmdline): ..here, and..
5 (struct filedata): ..here. Adjust all uses.
6 (request_dump_bynumber, request_dump, parse_args): Pass in a
7 struct dump_data* rather than Filedata*. Adjust callers.
8 (main): Don't set cmdline.file_name.
10 2020-04-20 Alan Modra <amodra@gmail.com>
12 * readelf.c (process_symbol_table): Clear ngnuchains, ngnubuckets
15 2020-04-20 Alan Modra <amodra@gmail.com>
17 * readelf.c (process_section_headers): Free dynamic symbols etc.
20 2020-04-20 Alan Modra <amodra@gmail.com>
22 * readelf.c (get_num_dynamic_syms): Formatting. Don't return
23 on error without freeing.
24 (process_dynamic_section): Don't recreate dynamic symbols from
25 dynamic tag info when the dynamic symbols have already been
26 read via section headers.
28 2020-04-17 Fredrik Strupe <fredrik@strupe.net>
30 * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that
31 conditional VDUP instructions are disassembled correctly.
32 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
34 * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing
35 that VDUP instructions (which are conditional in A32) can be
36 disassembled in thumb mode.
37 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
40 2020-04-17 Alan Modra <amodra@gmail.com>
43 * debug.c (debug_class_type_samep): Don't segfault on NULL type.
45 2020-04-16 Alan Modra <amodra@gmail.com>
47 * doc/binutils.texi: Mention --no-show-raw-insn in objdump
48 --no-addresses description.
50 2020-04-15 Alan Modra <amodra@gmail.com>
52 * objdump.c (no_addresses): New static var.
53 (usage): Print help for --no-addresses.
54 (long_options): Add --no-addresses entry.
55 (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address.
56 (disassemble_bytes): Don't print current line address, or reloc
58 * doc/binutils.texi: Document objdump --no-addresses.
60 2020-04-15 Alan Modra <amodra@gmail.com>
63 * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when
64 reading buckets or chains fails.
66 2020-04-15 Alan Modra <amodra@gmail.com>
68 * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains
71 2020-04-15 Alan Modra <amodra@gmail.com>
73 * readelf.c (get_group_flags): Translate text.
74 (get_file_type, get_symbol_binding, get_symbol_type),
75 (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer.
77 2020-04-15 Alan Modra <amodra@gmail.com>
80 * readelf.c (get_num_dynamic_syms): Typo fix.
82 2020-04-14 Alan Modra <amodra@gmail.com>
84 * readelf.c (process_mips_specific): Free eopt and iopt. Avoid
85 possibility of overflow when checking number of conflicts.
87 2020-04-14 H.J. Lu <hongjiu.lu@intel.com>
90 * readelf.c (nbuckets): New.
94 (ngnubuckets): Likewise.
95 (gnubuckets): Likewise.
96 (gnuchains): Likewise.
98 (ngnuchains): Likewise.
99 (gnusymidx): Likewise.
100 (VALID_SYMBOL_NAME): Likewise.
101 (VALID_DYNAMIC_NAME): Use it.
102 (get_dynamic_data): Moved before process_dynamic_section.
103 (get_num_dynamic_syms): New function.
104 (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH,
105 DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol
106 table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string
108 (get_symbol_index_type): Don't print "bad section index" when
109 there is no section header.
110 (print_dynamic_symbol): Rewrite.
111 (process_symbol_table): Call print_dynamic_symbol to dump dynamic
114 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
116 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
117 enable on *-*-solaris*.
119 2020-03-30 Nick Clifton <nickc@redhat.com>
122 * objcopy.c (copy_object): When copying PE format files set the
123 timestamp field in the pe_data structure if the preserve_dates
125 * testsuite/binutils-all/objcopy.exp (objcopy_test) Use
126 --preserve-dates in place of the -p option, in order to make its
129 2020-03-28 Alan Modra <amodra@gmail.com>
131 * testsuite/binutils-all/objcopy.exp (objcopy_test): Only
132 clear_xfail hppa*-*-*elf*. Revert mips xfails.
134 2020-03-28 Alan Modra <amodra@gmail.com>
136 * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails
137 from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x
138 but do xfail spu, mipstx39 and mips-sgi-irix for the executable
139 test. Pass "-p" to objcopy for the executable test.
141 2020-03-27 Jozef Lawrynowicz <jozef.l@mittosystems.com>
144 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to
145 specify whether an object file or executable should be built and tested.
146 Change test names to report whether an object file or executable is
148 * testsuite/binutils-all/pr25662.ld: New test.
149 * testsuite/binutils-all/pr25662.s: New test.
151 2020-03-27 Alan Modra <amodra@gmail.com>
153 * readelf.c (process_archive): Don't double free qualified_name.
154 Don't break out of loop with "negative" archive_file_size, just
155 set file offset to max.
157 2020-03-25 Alan Modra <amodra@gmail.com>
159 * readelf.c (process_archive): Prevent endless loop.
161 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
164 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
165 with bfd_get_symbol_version_string.
166 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
167 * objdump.c (objdump_print_symname): Likewise.
169 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
172 * nm.c (SYM_NAME): Removed.
173 (print_symname): Add a pointer to struct extended_symbol_info
174 argument. Call _bfd_elf_get_symbol_version_name to get symbol
176 (print_symdef_entry): Pass NULL to print_symname.
177 (print_symbol_info_bsd): Update call to print_symname.
178 (print_symbol_info_sysv): Likewise.
179 (print_symbol_info_posix): Likewise.
181 2020-03-24 Alan Modra <amodra@gmail.com>
183 * readelf.c (process_mips_specific): Free iconf on error path.
185 2020-03-23 Nick Clifton <nickc@redhat.com>
188 * wrstabs.c (stab_pop_type): Replace assertion with error return.
189 * write_stabs_in_sections_debugging_info: Likewise.
190 * stab_enum_type: Likewise.
191 * stab_modify_type: Likewise.
192 * stab_struct_field: Likewise.
193 * stab_end_struct_type: Likewise.
194 * stab_start_class_type: Likewise.
195 * stab_class_static_member: Likewise.
196 * stab_class_baseclass: Likewise.
197 * stab_class_start_method: Likewise.
198 * stab_class_method_var: Likewise.
199 * stab_class_end_method: Likewise.
200 * stab_end_class_type: Likewise.
201 * stab_typedef_type: Likewise.
202 * stab_start_function: Likewise.
203 * stab_end_block: Likewise.
204 * stab_lineno: Likewise.
206 2020-03-20 Nick Clifton <nickc@redhat.com>
208 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
209 (process_section_headers): Check the return value from
210 get_compression_header.
211 (dump_section_as_strings): Likewise.
212 (dump_section_as_bytes): Likewise.
213 (load_specific_debug_section): Likewise.
215 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
217 * ar.c (main): Update bfd_plugin_set_program_name call.
218 * nm.c (main): Likewise.
220 2020-03-19 Nick Clifton <nickc@redhat.com>
223 * testsuite/binutils-all/dw4.s: New test source file.
224 * testsuite/binutils-all/nm.exp: Run the new test.
226 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
228 * readelf.c (process_symbol_table): Use unsigned long for si.
230 2020-03-19 Alan Modra <amodra@gmail.com>
232 * elfcomm.c: Don't include bfd.h or bucomm.h.
233 (program_name): Declare.
234 (process_archive_index_and_symbols): Replace bfd_boolean with int,
235 and substitute FALSE and TRUE.
236 (setup_archive, setup_nested_archive): Likewise.
237 * elfcomm.h: Likewise.
239 2020-03-19 Alan Modra <amodra@gmail.com>
241 * readelf.c (process_archive): Always return via path freeing
244 2020-03-19 Alan Modra <amodra@gmail.com>
246 * readelf.c (process_netbsd_elf_note): Validate descsz before
247 accessing descdata. Formatting.
249 2020-03-19 Alan Modra <amodra@gmail.com>
251 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
252 * elfcomm.h (setup_archive): Update prototype.
254 2020-03-16 Alan Modra <amodra@gmail.com>
256 * readelf.c (get_symbols): New function.
257 (process_relocs, ia64_process_unwind, hppa_process_unwind),
258 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
260 2020-03-16 Alan Modra <amodra@gmail.com>
262 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
263 Detect shift overflows and check that terminating byte is found.
264 Print an error on a bad uleb128.
266 2020-03-14 Alan Modra <amodra@gmail.com>
268 * readelf.c (process_file): Clean ba_cache.
270 2020-03-14 Alan Modra <amodra@gmail.com>
272 * elfcomm.h (setup_archive): Update prototype.
273 * elfcomm.c (setup_archive): Add file_size parameter and sanity
274 check longnames_size.
275 (setup_nested_archive): Get file size and pass to setup_archive.
276 * elfedit.c (process_archive): Likewise.
277 * readelf.c (process_archive): Pass filedata->file_size to
280 2020-03-14 Alan Modra <amodra@gmail.com>
282 * readelf.c (dump_section_as_strings): Free memory on error exit.
283 (dump_section_as_bytes, process_notes_at): Likewise.
284 (get_build_id): Free enote.
286 2020-03-13 Kamil Rytarowski <n54@gmx.com>
288 * readelf.c (get_netbsd_elfcore_note_type): Add support for
289 NT_NETBSDCORE_LWPSTATUS notes.
291 2020-03-13 Alan Modra <amodra@gmail.com>
293 * elfcomm.c (get_archive_member_name): Always return malloc'd
295 * elfedit.c (process_archive): Tidy memory on all return paths.
296 * readelf.c (process_archive): Likewise.
297 (process_symbol_table): Likewise.
298 (ba_cache): New, replacing ..
299 (get_symbol_for_build_attribute): ..static vars here. Free
300 strtab and symtab before loading new ones. Reject symtab without
301 valid strtab in loop, breaking out of loop on valid symtab.
302 (process_file): Free ba_cache symtab and strtab here, resetting
305 2020-03-12 Alan Modra <amodra@gmail.com>
307 * readelf.c (process_section_headers): Don't just set
308 filedata->section_headers NULL, free it first. Similarly for
309 dynamic_symbols, dynamic_strings, dynamic_syminfo and
310 symtab_shndx_list. Zero associated counts too.
311 (process_object): Free symtab_shndx_list.
312 (process_file): Free various allocated filedata tables.
314 2020-03-11 Nick Clifton <nickc@redhat.com>
318 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
319 li_segment_size fields.
320 * dwarf.c (read_debug_line_header): Record the address size and
321 segment selector size values (if present) in the lineinfo
323 (display_formatted_table): Warn if the format count is empty but
324 the table itself is not empty.
325 Display the format count and entry count at the start of the table
327 (display_debug_lines_raw): Display the address size and segement
328 selector size fields, if present.
329 * testsuite/binutils-all/dw5.W: Update expected output.
331 2020-03-11 Alan Modra <amodra@gmail.com>
334 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
335 pad_to_set on second block of code dealing with padding.
336 Replace "c" with "num_sec" and don't recalculate number of
337 sections on second block. Size arrays using sizeof (element)
338 rather than sizeof (element type).
340 2020-03-10 Alan Modra <amodra@gmail.com>
342 * objdump.c (disassemble_section): Don't call qsort unless
343 sym count is at least two.
344 (disassemble_data): Don't call memcpy with NULL src.
346 2020-03-09 Alan Modra <amodra@gmail.com>
349 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
350 to get_data rather than multiplying.
351 (dump_ia64_vms_dynamic_relocs): Likewise.
352 (process_version_sections): Correct order of size and nmemb args
354 (process_mips_specific): Likewise.
356 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
358 * readelf.c (get_dynamic_data): Replace "memory chekers" with
359 "memory checkers" in comments.
361 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
364 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
365 * doc/Makefile.in: Re-generate.
367 2020-03-06 Nick Clifton <nickc@redhat.com>
369 * objcopy.c (check_new_section_flags): New function. Reject the
370 SEC_COFF_SHARED flag if the target is not a COFF binary.
371 (copy_object): Call check_new_section_flags.
372 (setup_section): Likewise.
373 * doc/binutils.texi (objcopy): Add a note that the 'share' section
374 flag cannot be applied to ELF binaries.
376 2020-03-06 Alan Modra <amodra@gmail.com>
379 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
381 2020-03-05 Alan Modra <amodra@gmail.com>
384 * objcopy.c (filter_symbols): Don't segfault on NULL
385 prefix_symbols_string.
387 2020-03-04 Christian Eggers <ceggers@gmx.de>
389 * objcopy.c (copy_object): Convert from bytes to octets for
390 --gap-fill and --pad-to.
392 2020-03-03 Nick Clifton <nickc@redhat.com>
395 * prdbg.c (pr_tag_type): Remove call to abort.
397 2020-03-02 Aaron Merey <amerey@redhat.com>
399 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
402 2020-03-02 Nick Clifton <nickc@redhat.com>
405 * readelf.c (dump_section_as_strings): Display new-line characters
406 as \n and then insert a line break.
407 * testsuite/binutils-all/pr25543.s: New test.
408 * testsuite/binutils-all/pr25543.d: Test driver.
409 * testsuite/binutils-all/readelf.exp: Run the new test.
411 2020-02-27 Nick Clifton <nickc@redhat.com>
414 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
415 get_data is unable to load the string table.
417 2020-02-26 Alan Modra <amodra@gmail.com>
419 * elfedit.c: Indent labels correctly.
420 * readelf.c: Likewise.
421 * resres.c: Likewise.
423 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
426 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
427 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
429 2020-02-24 Nick Clifton <nickc@redhat.com>
432 * doc/binutils.texi (objdump): Fix typo in description of
435 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
437 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
440 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
442 * objdump.c (show_line): call bfd_demangle when using do_demangle.
444 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
446 * configure: Regenerate.
448 2020-02-10 Fangrui Song <maskray@google.com>
450 * objcopy.c (parse_flags): Handle "exclude".
451 * doc/binutils.texi: Document the support.
453 2020-02-10 Aaron Merey <amerey@redhat.com>
455 * binutils/testsuite/binutils-all/debuginfod.exp:
456 Replace set ::env with setenv.
457 Start server before setting environment variable.
458 Specify tmpdir as the location of the server's
460 Check additional server metrics at start-up.
462 2020-02-07 Nick Clifton <nickc@redhat.com>
464 * README-how-to-make-a-release: Add note about updating the
465 GAS/NEWS URL in the next release.
467 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
470 * readelf.c (get_machine_flags): Add support for Z80N machine
473 2020-02-07 Nick Clifton <nickc@redhat.com>
475 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
476 of the truncated file name.
478 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
480 * objdump.c (print_jump_visualisation): New function.
481 (disassemble_bytes): Call new function.
483 2020-02-06 Alan Modra <amodra@gmail.com>
485 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
487 (supports_gnu_osabi): New procedure.
488 (is_generic): New, from ld-lib.exp.
489 (supports_gnu_unique): Use the above.
491 2020-02-04 Alan Modra <amodra@gmail.com>
493 * Makefile.am (CFILES): Add od-elf32_avr.c.
494 * Makefile.in: Regenerate.
495 * po/POTFILES.in: Regenerate.
497 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
499 * readelf.c (dump_relocations, dump_relocations)
500 (decode_arm_unwind_bytecode, process_dynamic_section)
501 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
504 2020-02-03 Sergei Trofimovich <siarheit@google.com>
506 * coffdump.c (program_name): Drop redundant definition.
507 * srconv.c (program_name): Likewise
508 * sysdump.c (program_name): Likewise
510 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
513 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
514 same file with different section pointers.
516 2020-02-01 Nick Clifton <nickc@redhat.com>
518 * README-how-to-make-a-release: Update with more details on the
519 release making process.
521 2020-01-31 Nick Clifton <nickc@redhat.com>
523 * po/sv.po: Updated Swedish translation.
525 2020-01-28 Nick Clifton <nickc@redhat.com>
527 * readelf.c (get_build_id): Simplify warning message about corrupt
528 notes encountered whilst scanning for the build-id.
530 2020-01-27 Roland McGrath <mcgrathr@google.com>
532 * objcopy.c (compare_gnu_build_notes): Fix comparison results
533 for overlapping ranges so that (A == B) == (B == A) holds.
535 2020-01-27 Alan Modra <amodra@gmail.com>
537 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
538 case statement with switch statement.
540 2020-01-24 Nick Clifton <nickc@redhat.com>
542 * readelf.c (get_build_id): Fix warning messages about corrupt
545 2020-01-23 Nick Clifton <nickc@redhat.com>
547 * po/fr.po: Updated French translation.
549 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
552 * readelf.c (get_alpha_symbol_other): Fix error message typo.
554 2020-01-20 Nick Clifton <nickc@redhat.com>
556 * po/pt.po: Updated Portuguese translation.
557 * po/uk.po: Updated Ukranian translation.
559 2020-01-18 Nick Clifton <nickc@redhat.com>
561 * README-how-to-make-a-release: Update notes on how to cut a
562 branch for a release.
564 2020-01-18 Nick Clifton <nickc@redhat.com>
566 * configure: Regenerate.
567 * po/binutils.pot: Regenerate.
569 2020-01-18 Nick Clifton <nickc@redhat.com>
571 Binutils 2.34 branch created.
573 2020-01-17 Thomas Troeger <tstroege@gmx.de>
575 * objdump.c (jump_info_visualize_address): Discard jumps that are
577 (disassemble_bytes): Only compute the maximum level if jumps were
580 2020-01-13 Nick Clifton <nickc@redhat.com>
582 * objdump.c (disassemble_bytes): Remove C99-ism.
583 * testsuite/binutils-all/debuginfod.exp: New tests.
585 2020-01-13 Thomas Troeger <tstroege@gmx.de>
587 * objdump.c (visualize_jumps, color_output, extended_color_output)
588 (detected_jumps): New variables.
589 (usage): Add the new jump visualization options.
590 (option_values): Add new option value.
591 (long_options): Add the new option.
592 (jump_info_new, jump_info_free): New functions.
593 (jump_info_min_address, jump_info_max_address): Likewise.
594 (jump_info_end_address, jump_info_is_start_address): Likewise.
595 (jump_info_is_end_address, jump_info_size): Likewise.
596 (jump_info_unlink, jump_info_insert): Likewise.
597 (jump_info_add_front, jump_info_move_linked): Likewise.
598 (jump_info_intersect, jump_info_merge): Likewise.
599 (jump_info_sort, jump_info_visualize_address): Likewise.
600 (disassemble_jumps): New function - used to locate jumps.
601 (disassemble_bytes): Add ascii art generation.
602 (disassemble_section): Add scan to locate jumps.
603 (main): Parse the new visualization option.
604 * doc/binutils.texi: Document the new feature.
605 * NEWS: Mention the new feature.
607 2020-01-13 Alan Modra <amodra@gmail.com>
611 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
612 fde_fc col_type and col_offset.
613 * readelf.c (apply_relocations): Move symsec check earlier.
614 (free_debug_section): Free reloc_info.
615 (process_notes_at): Free pnotes on error path.
616 (process_object): Free dump_sects here..
617 (process_archive): ..not here.
619 2020-01-13 Alan Modra <amodra@gmail.com>
622 * nm.c (display_rel_file): Free dyn_syms.
624 2020-01-09 Nick Clifton <nickc@redhat.com>
627 * objcopy.c (empty_name): New variable.
628 (need_sym_before): Prevent an attempt to free a static variable.
629 (filter_symbols): Avoid strcmp test by checking for pointer
632 2020-01-09 Nick Clifton <nickc@redhat.com>
634 * po/zh_TW.po: Updated Traditional Chinese translation.
636 2020-01-09 Aaron Merey <amerey@redhat.com>
638 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
639 * Makefile.in: Regenerate.
641 * config.in: Regenerate.
642 * configure: Regenerate.
643 * configure.ac: Call AC_DEBUGINFOD.
644 * doc/Makefile.in: Regenerate.
645 * doc/binutils.texi: Add section on using binutils
647 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
648 Query debuginfod servers for the target debug file.
649 (load_separate_debug_info): Call
650 debuginfod_fetch_separate_debug_info if configured with
652 (load_separate_debug_files): Add file argument to
653 load_separate_debug_info calls.
654 * dwarf.h (get_build_id): Add declaration.
655 * objdump.c (get_build_id): New function. Get build-id of file.
656 * readelf.c (get_build_id): Likewise.
657 * testsuite/binutils-all/debuginfod.exp: New tests.
658 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
661 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
663 * readelf.c: Add support for new Z*) relocations and machine
666 2020-01-01 Alan Modra <amodra@gmail.com>
668 Update year range in copyright notice of all files.
670 For older changes see ChangeLog-2019
672 Copyright (C) 2020 Free Software Foundation, Inc.
674 Copying and distribution of this file, with or without modification,
675 are permitted in any medium without royalty provided the copyright
676 notice and this notice are preserved.
682 version-control: never