1 2020-04-17 Alan Modra <amodra@gmail.com>
4 * debug.c (debug_class_type_samep): Don't segfault on NULL type.
6 2020-04-16 Alan Modra <amodra@gmail.com>
8 * doc/binutils.texi: Mention --no-show-raw-insn in objdump
9 --no-addresses description.
11 2020-04-15 Alan Modra <amodra@gmail.com>
13 * objdump.c (no_addresses): New static var.
14 (usage): Print help for --no-addresses.
15 (long_options): Add --no-addresses entry.
16 (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address.
17 (disassemble_bytes): Don't print current line address, or reloc
19 * doc/binutils.texi: Document objdump --no-addresses.
21 2020-04-15 Alan Modra <amodra@gmail.com>
24 * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when
25 reading buckets or chains fails.
27 2020-04-15 Alan Modra <amodra@gmail.com>
29 * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains
32 2020-04-15 Alan Modra <amodra@gmail.com>
34 * readelf.c (get_group_flags): Translate text.
35 (get_file_type, get_symbol_binding, get_symbol_type),
36 (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer.
38 2020-04-15 Alan Modra <amodra@gmail.com>
41 * readelf.c (get_num_dynamic_syms): Typo fix.
43 2020-04-14 Alan Modra <amodra@gmail.com>
45 * readelf.c (process_mips_specific): Free eopt and iopt. Avoid
46 possibility of overflow when checking number of conflicts.
48 2020-04-14 H.J. Lu <hongjiu.lu@intel.com>
51 * readelf.c (nbuckets): New.
55 (ngnubuckets): Likewise.
56 (gnubuckets): Likewise.
57 (gnuchains): Likewise.
59 (ngnuchains): Likewise.
60 (gnusymidx): Likewise.
61 (VALID_SYMBOL_NAME): Likewise.
62 (VALID_DYNAMIC_NAME): Use it.
63 (get_dynamic_data): Moved before process_dynamic_section.
64 (get_num_dynamic_syms): New function.
65 (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH,
66 DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol
67 table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string
69 (get_symbol_index_type): Don't print "bad section index" when
70 there is no section header.
71 (print_dynamic_symbol): Rewrite.
72 (process_symbol_table): Call print_dynamic_symbol to dump dynamic
75 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
77 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
78 enable on *-*-solaris*.
80 2020-03-30 Nick Clifton <nickc@redhat.com>
83 * objcopy.c (copy_object): When copying PE format files set the
84 timestamp field in the pe_data structure if the preserve_dates
86 * testsuite/binutils-all/objcopy.exp (objcopy_test) Use
87 --preserve-dates in place of the -p option, in order to make its
90 2020-03-28 Alan Modra <amodra@gmail.com>
92 * testsuite/binutils-all/objcopy.exp (objcopy_test): Only
93 clear_xfail hppa*-*-*elf*. Revert mips xfails.
95 2020-03-28 Alan Modra <amodra@gmail.com>
97 * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails
98 from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x
99 but do xfail spu, mipstx39 and mips-sgi-irix for the executable
100 test. Pass "-p" to objcopy for the executable test.
102 2020-03-27 Jozef Lawrynowicz <jozef.l@mittosystems.com>
105 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to
106 specify whether an object file or executable should be built and tested.
107 Change test names to report whether an object file or executable is
109 * testsuite/binutils-all/pr25662.ld: New test.
110 * testsuite/binutils-all/pr25662.s: New test.
112 2020-03-27 Alan Modra <amodra@gmail.com>
114 * readelf.c (process_archive): Don't double free qualified_name.
115 Don't break out of loop with "negative" archive_file_size, just
116 set file offset to max.
118 2020-03-25 Alan Modra <amodra@gmail.com>
120 * readelf.c (process_archive): Prevent endless loop.
122 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
125 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
126 with bfd_get_symbol_version_string.
127 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
128 * objdump.c (objdump_print_symname): Likewise.
130 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
133 * nm.c (SYM_NAME): Removed.
134 (print_symname): Add a pointer to struct extended_symbol_info
135 argument. Call _bfd_elf_get_symbol_version_name to get symbol
137 (print_symdef_entry): Pass NULL to print_symname.
138 (print_symbol_info_bsd): Update call to print_symname.
139 (print_symbol_info_sysv): Likewise.
140 (print_symbol_info_posix): Likewise.
142 2020-03-24 Alan Modra <amodra@gmail.com>
144 * readelf.c (process_mips_specific): Free iconf on error path.
146 2020-03-23 Nick Clifton <nickc@redhat.com>
149 * wrstabs.c (stab_pop_type): Replace assertion with error return.
150 * write_stabs_in_sections_debugging_info: Likewise.
151 * stab_enum_type: Likewise.
152 * stab_modify_type: Likewise.
153 * stab_struct_field: Likewise.
154 * stab_end_struct_type: Likewise.
155 * stab_start_class_type: Likewise.
156 * stab_class_static_member: Likewise.
157 * stab_class_baseclass: Likewise.
158 * stab_class_start_method: Likewise.
159 * stab_class_method_var: Likewise.
160 * stab_class_end_method: Likewise.
161 * stab_end_class_type: Likewise.
162 * stab_typedef_type: Likewise.
163 * stab_start_function: Likewise.
164 * stab_end_block: Likewise.
165 * stab_lineno: Likewise.
167 2020-03-20 Nick Clifton <nickc@redhat.com>
169 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
170 (process_section_headers): Check the return value from
171 get_compression_header.
172 (dump_section_as_strings): Likewise.
173 (dump_section_as_bytes): Likewise.
174 (load_specific_debug_section): Likewise.
176 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
178 * ar.c (main): Update bfd_plugin_set_program_name call.
179 * nm.c (main): Likewise.
181 2020-03-19 Nick Clifton <nickc@redhat.com>
184 * testsuite/binutils-all/dw4.s: New test source file.
185 * testsuite/binutils-all/nm.exp: Run the new test.
187 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
189 * readelf.c (process_symbol_table): Use unsigned long for si.
191 2020-03-19 Alan Modra <amodra@gmail.com>
193 * elfcomm.c: Don't include bfd.h or bucomm.h.
194 (program_name): Declare.
195 (process_archive_index_and_symbols): Replace bfd_boolean with int,
196 and substitute FALSE and TRUE.
197 (setup_archive, setup_nested_archive): Likewise.
198 * elfcomm.h: Likewise.
200 2020-03-19 Alan Modra <amodra@gmail.com>
202 * readelf.c (process_archive): Always return via path freeing
205 2020-03-19 Alan Modra <amodra@gmail.com>
207 * readelf.c (process_netbsd_elf_note): Validate descsz before
208 accessing descdata. Formatting.
210 2020-03-19 Alan Modra <amodra@gmail.com>
212 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
213 * elfcomm.h (setup_archive): Update prototype.
215 2020-03-16 Alan Modra <amodra@gmail.com>
217 * readelf.c (get_symbols): New function.
218 (process_relocs, ia64_process_unwind, hppa_process_unwind),
219 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
221 2020-03-16 Alan Modra <amodra@gmail.com>
223 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
224 Detect shift overflows and check that terminating byte is found.
225 Print an error on a bad uleb128.
227 2020-03-14 Alan Modra <amodra@gmail.com>
229 * readelf.c (process_file): Clean ba_cache.
231 2020-03-14 Alan Modra <amodra@gmail.com>
233 * elfcomm.h (setup_archive): Update prototype.
234 * elfcomm.c (setup_archive): Add file_size parameter and sanity
235 check longnames_size.
236 (setup_nested_archive): Get file size and pass to setup_archive.
237 * elfedit.c (process_archive): Likewise.
238 * readelf.c (process_archive): Pass filedata->file_size to
241 2020-03-14 Alan Modra <amodra@gmail.com>
243 * readelf.c (dump_section_as_strings): Free memory on error exit.
244 (dump_section_as_bytes, process_notes_at): Likewise.
245 (get_build_id): Free enote.
247 2020-03-13 Kamil Rytarowski <n54@gmx.com>
249 * readelf.c (get_netbsd_elfcore_note_type): Add support for
250 NT_NETBSDCORE_LWPSTATUS notes.
252 2020-03-13 Alan Modra <amodra@gmail.com>
254 * elfcomm.c (get_archive_member_name): Always return malloc'd
256 * elfedit.c (process_archive): Tidy memory on all return paths.
257 * readelf.c (process_archive): Likewise.
258 (process_symbol_table): Likewise.
259 (ba_cache): New, replacing ..
260 (get_symbol_for_build_attribute): ..static vars here. Free
261 strtab and symtab before loading new ones. Reject symtab without
262 valid strtab in loop, breaking out of loop on valid symtab.
263 (process_file): Free ba_cache symtab and strtab here, resetting
266 2020-03-12 Alan Modra <amodra@gmail.com>
268 * readelf.c (process_section_headers): Don't just set
269 filedata->section_headers NULL, free it first. Similarly for
270 dynamic_symbols, dynamic_strings, dynamic_syminfo and
271 symtab_shndx_list. Zero associated counts too.
272 (process_object): Free symtab_shndx_list.
273 (process_file): Free various allocated filedata tables.
275 2020-03-11 Nick Clifton <nickc@redhat.com>
279 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
280 li_segment_size fields.
281 * dwarf.c (read_debug_line_header): Record the address size and
282 segment selector size values (if present) in the lineinfo
284 (display_formatted_table): Warn if the format count is empty but
285 the table itself is not empty.
286 Display the format count and entry count at the start of the table
288 (display_debug_lines_raw): Display the address size and segement
289 selector size fields, if present.
290 * testsuite/binutils-all/dw5.W: Update expected output.
292 2020-03-11 Alan Modra <amodra@gmail.com>
295 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
296 pad_to_set on second block of code dealing with padding.
297 Replace "c" with "num_sec" and don't recalculate number of
298 sections on second block. Size arrays using sizeof (element)
299 rather than sizeof (element type).
301 2020-03-10 Alan Modra <amodra@gmail.com>
303 * objdump.c (disassemble_section): Don't call qsort unless
304 sym count is at least two.
305 (disassemble_data): Don't call memcpy with NULL src.
307 2020-03-09 Alan Modra <amodra@gmail.com>
310 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
311 to get_data rather than multiplying.
312 (dump_ia64_vms_dynamic_relocs): Likewise.
313 (process_version_sections): Correct order of size and nmemb args
315 (process_mips_specific): Likewise.
317 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
319 * readelf.c (get_dynamic_data): Replace "memory chekers" with
320 "memory checkers" in comments.
322 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
325 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
326 * doc/Makefile.in: Re-generate.
328 2020-03-06 Nick Clifton <nickc@redhat.com>
330 * objcopy.c (check_new_section_flags): New function. Reject the
331 SEC_COFF_SHARED flag if the target is not a COFF binary.
332 (copy_object): Call check_new_section_flags.
333 (setup_section): Likewise.
334 * doc/binutils.texi (objcopy): Add a note that the 'share' section
335 flag cannot be applied to ELF binaries.
337 2020-03-06 Alan Modra <amodra@gmail.com>
340 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
342 2020-03-05 Alan Modra <amodra@gmail.com>
345 * objcopy.c (filter_symbols): Don't segfault on NULL
346 prefix_symbols_string.
348 2020-03-04 Christian Eggers <ceggers@gmx.de>
350 * objcopy.c (copy_object): Convert from bytes to octets for
351 --gap-fill and --pad-to.
353 2020-03-03 Nick Clifton <nickc@redhat.com>
356 * prdbg.c (pr_tag_type): Remove call to abort.
358 2020-03-02 Aaron Merey <amerey@redhat.com>
360 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
363 2020-03-02 Nick Clifton <nickc@redhat.com>
366 * readelf.c (dump_section_as_strings): Display new-line characters
367 as \n and then insert a line break.
368 * testsuite/binutils-all/pr25543.s: New test.
369 * testsuite/binutils-all/pr25543.d: Test driver.
370 * testsuite/binutils-all/readelf.exp: Run the new test.
372 2020-02-27 Nick Clifton <nickc@redhat.com>
375 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
376 get_data is unable to load the string table.
378 2020-02-26 Alan Modra <amodra@gmail.com>
380 * elfedit.c: Indent labels correctly.
381 * readelf.c: Likewise.
382 * resres.c: Likewise.
384 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
387 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
388 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
390 2020-02-24 Nick Clifton <nickc@redhat.com>
393 * doc/binutils.texi (objdump): Fix typo in description of
396 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
398 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
401 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
403 * objdump.c (show_line): call bfd_demangle when using do_demangle.
405 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
407 * configure: Regenerate.
409 2020-02-10 Fangrui Song <maskray@google.com>
411 * objcopy.c (parse_flags): Handle "exclude".
412 * doc/binutils.texi: Document the support.
414 2020-02-10 Aaron Merey <amerey@redhat.com>
416 * binutils/testsuite/binutils-all/debuginfod.exp:
417 Replace set ::env with setenv.
418 Start server before setting environment variable.
419 Specify tmpdir as the location of the server's
421 Check additional server metrics at start-up.
423 2020-02-07 Nick Clifton <nickc@redhat.com>
425 * README-how-to-make-a-release: Add note about updating the
426 GAS/NEWS URL in the next release.
428 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
431 * readelf.c (get_machine_flags): Add support for Z80N machine
434 2020-02-07 Nick Clifton <nickc@redhat.com>
436 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
437 of the truncated file name.
439 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
441 * objdump.c (print_jump_visualisation): New function.
442 (disassemble_bytes): Call new function.
444 2020-02-06 Alan Modra <amodra@gmail.com>
446 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
448 (supports_gnu_osabi): New procedure.
449 (is_generic): New, from ld-lib.exp.
450 (supports_gnu_unique): Use the above.
452 2020-02-04 Alan Modra <amodra@gmail.com>
454 * Makefile.am (CFILES): Add od-elf32_avr.c.
455 * Makefile.in: Regenerate.
456 * po/POTFILES.in: Regenerate.
458 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
460 * readelf.c (dump_relocations, dump_relocations)
461 (decode_arm_unwind_bytecode, process_dynamic_section)
462 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
465 2020-02-03 Sergei Trofimovich <siarheit@google.com>
467 * coffdump.c (program_name): Drop redundant definition.
468 * srconv.c (program_name): Likewise
469 * sysdump.c (program_name): Likewise
471 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
474 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
475 same file with different section pointers.
477 2020-02-01 Nick Clifton <nickc@redhat.com>
479 * README-how-to-make-a-release: Update with more details on the
480 release making process.
482 2020-01-31 Nick Clifton <nickc@redhat.com>
484 * po/sv.po: Updated Swedish translation.
486 2020-01-28 Nick Clifton <nickc@redhat.com>
488 * readelf.c (get_build_id): Simplify warning message about corrupt
489 notes encountered whilst scanning for the build-id.
491 2020-01-27 Roland McGrath <mcgrathr@google.com>
493 * objcopy.c (compare_gnu_build_notes): Fix comparison results
494 for overlapping ranges so that (A == B) == (B == A) holds.
496 2020-01-27 Alan Modra <amodra@gmail.com>
498 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
499 case statement with switch statement.
501 2020-01-24 Nick Clifton <nickc@redhat.com>
503 * readelf.c (get_build_id): Fix warning messages about corrupt
506 2020-01-23 Nick Clifton <nickc@redhat.com>
508 * po/fr.po: Updated French translation.
510 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
513 * readelf.c (get_alpha_symbol_other): Fix error message typo.
515 2020-01-20 Nick Clifton <nickc@redhat.com>
517 * po/pt.po: Updated Portuguese translation.
518 * po/uk.po: Updated Ukranian translation.
520 2020-01-18 Nick Clifton <nickc@redhat.com>
522 * README-how-to-make-a-release: Update notes on how to cut a
523 branch for a release.
525 2020-01-18 Nick Clifton <nickc@redhat.com>
527 * configure: Regenerate.
528 * po/binutils.pot: Regenerate.
530 2020-01-18 Nick Clifton <nickc@redhat.com>
532 Binutils 2.34 branch created.
534 2020-01-17 Thomas Troeger <tstroege@gmx.de>
536 * objdump.c (jump_info_visualize_address): Discard jumps that are
538 (disassemble_bytes): Only compute the maximum level if jumps were
541 2020-01-13 Nick Clifton <nickc@redhat.com>
543 * objdump.c (disassemble_bytes): Remove C99-ism.
544 * testsuite/binutils-all/debuginfod.exp: New tests.
546 2020-01-13 Thomas Troeger <tstroege@gmx.de>
548 * objdump.c (visualize_jumps, color_output, extended_color_output)
549 (detected_jumps): New variables.
550 (usage): Add the new jump visualization options.
551 (option_values): Add new option value.
552 (long_options): Add the new option.
553 (jump_info_new, jump_info_free): New functions.
554 (jump_info_min_address, jump_info_max_address): Likewise.
555 (jump_info_end_address, jump_info_is_start_address): Likewise.
556 (jump_info_is_end_address, jump_info_size): Likewise.
557 (jump_info_unlink, jump_info_insert): Likewise.
558 (jump_info_add_front, jump_info_move_linked): Likewise.
559 (jump_info_intersect, jump_info_merge): Likewise.
560 (jump_info_sort, jump_info_visualize_address): Likewise.
561 (disassemble_jumps): New function - used to locate jumps.
562 (disassemble_bytes): Add ascii art generation.
563 (disassemble_section): Add scan to locate jumps.
564 (main): Parse the new visualization option.
565 * doc/binutils.texi: Document the new feature.
566 * NEWS: Mention the new feature.
568 2020-01-13 Alan Modra <amodra@gmail.com>
572 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
573 fde_fc col_type and col_offset.
574 * readelf.c (apply_relocations): Move symsec check earlier.
575 (free_debug_section): Free reloc_info.
576 (process_notes_at): Free pnotes on error path.
577 (process_object): Free dump_sects here..
578 (process_archive): ..not here.
580 2020-01-13 Alan Modra <amodra@gmail.com>
583 * nm.c (display_rel_file): Free dyn_syms.
585 2020-01-09 Nick Clifton <nickc@redhat.com>
588 * objcopy.c (empty_name): New variable.
589 (need_sym_before): Prevent an attempt to free a static variable.
590 (filter_symbols): Avoid strcmp test by checking for pointer
593 2020-01-09 Nick Clifton <nickc@redhat.com>
595 * po/zh_TW.po: Updated Traditional Chinese translation.
597 2020-01-09 Aaron Merey <amerey@redhat.com>
599 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
600 * Makefile.in: Regenerate.
602 * config.in: Regenerate.
603 * configure: Regenerate.
604 * configure.ac: Call AC_DEBUGINFOD.
605 * doc/Makefile.in: Regenerate.
606 * doc/binutils.texi: Add section on using binutils
608 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
609 Query debuginfod servers for the target debug file.
610 (load_separate_debug_info): Call
611 debuginfod_fetch_separate_debug_info if configured with
613 (load_separate_debug_files): Add file argument to
614 load_separate_debug_info calls.
615 * dwarf.h (get_build_id): Add declaration.
616 * objdump.c (get_build_id): New function. Get build-id of file.
617 * readelf.c (get_build_id): Likewise.
618 * testsuite/binutils-all/debuginfod.exp: New tests.
619 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
622 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
624 * readelf.c: Add support for new Z*) relocations and machine
627 2020-01-01 Alan Modra <amodra@gmail.com>
629 Update year range in copyright notice of all files.
631 For older changes see ChangeLog-2019
633 Copyright (C) 2020 Free Software Foundation, Inc.
635 Copying and distribution of this file, with or without modification,
636 are permitted in any medium without royalty provided the copyright
637 notice and this notice are preserved.
643 version-control: never