1 2020-04-17 Fredrik Strupe <fredrik@strupe.net>
3 * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that
4 conditional VDUP instructions are disassembled correctly.
5 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
7 * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing
8 that VDUP instructions (which are conditional in A32) can be
9 disassembled in thumb mode.
10 * testsuite/binutils-all/arm/vdup-cond.s: New file used by
13 2020-04-17 Alan Modra <amodra@gmail.com>
16 * debug.c (debug_class_type_samep): Don't segfault on NULL type.
18 2020-04-16 Alan Modra <amodra@gmail.com>
20 * doc/binutils.texi: Mention --no-show-raw-insn in objdump
21 --no-addresses description.
23 2020-04-15 Alan Modra <amodra@gmail.com>
25 * objdump.c (no_addresses): New static var.
26 (usage): Print help for --no-addresses.
27 (long_options): Add --no-addresses entry.
28 (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address.
29 (disassemble_bytes): Don't print current line address, or reloc
31 * doc/binutils.texi: Document objdump --no-addresses.
33 2020-04-15 Alan Modra <amodra@gmail.com>
36 * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when
37 reading buckets or chains fails.
39 2020-04-15 Alan Modra <amodra@gmail.com>
41 * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains
44 2020-04-15 Alan Modra <amodra@gmail.com>
46 * readelf.c (get_group_flags): Translate text.
47 (get_file_type, get_symbol_binding, get_symbol_type),
48 (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer.
50 2020-04-15 Alan Modra <amodra@gmail.com>
53 * readelf.c (get_num_dynamic_syms): Typo fix.
55 2020-04-14 Alan Modra <amodra@gmail.com>
57 * readelf.c (process_mips_specific): Free eopt and iopt. Avoid
58 possibility of overflow when checking number of conflicts.
60 2020-04-14 H.J. Lu <hongjiu.lu@intel.com>
63 * readelf.c (nbuckets): New.
67 (ngnubuckets): Likewise.
68 (gnubuckets): Likewise.
69 (gnuchains): Likewise.
71 (ngnuchains): Likewise.
72 (gnusymidx): Likewise.
73 (VALID_SYMBOL_NAME): Likewise.
74 (VALID_DYNAMIC_NAME): Use it.
75 (get_dynamic_data): Moved before process_dynamic_section.
76 (get_num_dynamic_syms): New function.
77 (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH,
78 DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol
79 table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string
81 (get_symbol_index_type): Don't print "bad section index" when
82 there is no section header.
83 (print_dynamic_symbol): Rewrite.
84 (process_symbol_table): Call print_dynamic_symbol to dump dynamic
87 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
89 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
90 enable on *-*-solaris*.
92 2020-03-30 Nick Clifton <nickc@redhat.com>
95 * objcopy.c (copy_object): When copying PE format files set the
96 timestamp field in the pe_data structure if the preserve_dates
98 * testsuite/binutils-all/objcopy.exp (objcopy_test) Use
99 --preserve-dates in place of the -p option, in order to make its
102 2020-03-28 Alan Modra <amodra@gmail.com>
104 * testsuite/binutils-all/objcopy.exp (objcopy_test): Only
105 clear_xfail hppa*-*-*elf*. Revert mips xfails.
107 2020-03-28 Alan Modra <amodra@gmail.com>
109 * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails
110 from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x
111 but do xfail spu, mipstx39 and mips-sgi-irix for the executable
112 test. Pass "-p" to objcopy for the executable test.
114 2020-03-27 Jozef Lawrynowicz <jozef.l@mittosystems.com>
117 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to
118 specify whether an object file or executable should be built and tested.
119 Change test names to report whether an object file or executable is
121 * testsuite/binutils-all/pr25662.ld: New test.
122 * testsuite/binutils-all/pr25662.s: New test.
124 2020-03-27 Alan Modra <amodra@gmail.com>
126 * readelf.c (process_archive): Don't double free qualified_name.
127 Don't break out of loop with "negative" archive_file_size, just
128 set file offset to max.
130 2020-03-25 Alan Modra <amodra@gmail.com>
132 * readelf.c (process_archive): Prevent endless loop.
134 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
137 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
138 with bfd_get_symbol_version_string.
139 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
140 * objdump.c (objdump_print_symname): Likewise.
142 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
145 * nm.c (SYM_NAME): Removed.
146 (print_symname): Add a pointer to struct extended_symbol_info
147 argument. Call _bfd_elf_get_symbol_version_name to get symbol
149 (print_symdef_entry): Pass NULL to print_symname.
150 (print_symbol_info_bsd): Update call to print_symname.
151 (print_symbol_info_sysv): Likewise.
152 (print_symbol_info_posix): Likewise.
154 2020-03-24 Alan Modra <amodra@gmail.com>
156 * readelf.c (process_mips_specific): Free iconf on error path.
158 2020-03-23 Nick Clifton <nickc@redhat.com>
161 * wrstabs.c (stab_pop_type): Replace assertion with error return.
162 * write_stabs_in_sections_debugging_info: Likewise.
163 * stab_enum_type: Likewise.
164 * stab_modify_type: Likewise.
165 * stab_struct_field: Likewise.
166 * stab_end_struct_type: Likewise.
167 * stab_start_class_type: Likewise.
168 * stab_class_static_member: Likewise.
169 * stab_class_baseclass: Likewise.
170 * stab_class_start_method: Likewise.
171 * stab_class_method_var: Likewise.
172 * stab_class_end_method: Likewise.
173 * stab_end_class_type: Likewise.
174 * stab_typedef_type: Likewise.
175 * stab_start_function: Likewise.
176 * stab_end_block: Likewise.
177 * stab_lineno: Likewise.
179 2020-03-20 Nick Clifton <nickc@redhat.com>
181 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
182 (process_section_headers): Check the return value from
183 get_compression_header.
184 (dump_section_as_strings): Likewise.
185 (dump_section_as_bytes): Likewise.
186 (load_specific_debug_section): Likewise.
188 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
190 * ar.c (main): Update bfd_plugin_set_program_name call.
191 * nm.c (main): Likewise.
193 2020-03-19 Nick Clifton <nickc@redhat.com>
196 * testsuite/binutils-all/dw4.s: New test source file.
197 * testsuite/binutils-all/nm.exp: Run the new test.
199 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
201 * readelf.c (process_symbol_table): Use unsigned long for si.
203 2020-03-19 Alan Modra <amodra@gmail.com>
205 * elfcomm.c: Don't include bfd.h or bucomm.h.
206 (program_name): Declare.
207 (process_archive_index_and_symbols): Replace bfd_boolean with int,
208 and substitute FALSE and TRUE.
209 (setup_archive, setup_nested_archive): Likewise.
210 * elfcomm.h: Likewise.
212 2020-03-19 Alan Modra <amodra@gmail.com>
214 * readelf.c (process_archive): Always return via path freeing
217 2020-03-19 Alan Modra <amodra@gmail.com>
219 * readelf.c (process_netbsd_elf_note): Validate descsz before
220 accessing descdata. Formatting.
222 2020-03-19 Alan Modra <amodra@gmail.com>
224 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
225 * elfcomm.h (setup_archive): Update prototype.
227 2020-03-16 Alan Modra <amodra@gmail.com>
229 * readelf.c (get_symbols): New function.
230 (process_relocs, ia64_process_unwind, hppa_process_unwind),
231 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
233 2020-03-16 Alan Modra <amodra@gmail.com>
235 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
236 Detect shift overflows and check that terminating byte is found.
237 Print an error on a bad uleb128.
239 2020-03-14 Alan Modra <amodra@gmail.com>
241 * readelf.c (process_file): Clean ba_cache.
243 2020-03-14 Alan Modra <amodra@gmail.com>
245 * elfcomm.h (setup_archive): Update prototype.
246 * elfcomm.c (setup_archive): Add file_size parameter and sanity
247 check longnames_size.
248 (setup_nested_archive): Get file size and pass to setup_archive.
249 * elfedit.c (process_archive): Likewise.
250 * readelf.c (process_archive): Pass filedata->file_size to
253 2020-03-14 Alan Modra <amodra@gmail.com>
255 * readelf.c (dump_section_as_strings): Free memory on error exit.
256 (dump_section_as_bytes, process_notes_at): Likewise.
257 (get_build_id): Free enote.
259 2020-03-13 Kamil Rytarowski <n54@gmx.com>
261 * readelf.c (get_netbsd_elfcore_note_type): Add support for
262 NT_NETBSDCORE_LWPSTATUS notes.
264 2020-03-13 Alan Modra <amodra@gmail.com>
266 * elfcomm.c (get_archive_member_name): Always return malloc'd
268 * elfedit.c (process_archive): Tidy memory on all return paths.
269 * readelf.c (process_archive): Likewise.
270 (process_symbol_table): Likewise.
271 (ba_cache): New, replacing ..
272 (get_symbol_for_build_attribute): ..static vars here. Free
273 strtab and symtab before loading new ones. Reject symtab without
274 valid strtab in loop, breaking out of loop on valid symtab.
275 (process_file): Free ba_cache symtab and strtab here, resetting
278 2020-03-12 Alan Modra <amodra@gmail.com>
280 * readelf.c (process_section_headers): Don't just set
281 filedata->section_headers NULL, free it first. Similarly for
282 dynamic_symbols, dynamic_strings, dynamic_syminfo and
283 symtab_shndx_list. Zero associated counts too.
284 (process_object): Free symtab_shndx_list.
285 (process_file): Free various allocated filedata tables.
287 2020-03-11 Nick Clifton <nickc@redhat.com>
291 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
292 li_segment_size fields.
293 * dwarf.c (read_debug_line_header): Record the address size and
294 segment selector size values (if present) in the lineinfo
296 (display_formatted_table): Warn if the format count is empty but
297 the table itself is not empty.
298 Display the format count and entry count at the start of the table
300 (display_debug_lines_raw): Display the address size and segement
301 selector size fields, if present.
302 * testsuite/binutils-all/dw5.W: Update expected output.
304 2020-03-11 Alan Modra <amodra@gmail.com>
307 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
308 pad_to_set on second block of code dealing with padding.
309 Replace "c" with "num_sec" and don't recalculate number of
310 sections on second block. Size arrays using sizeof (element)
311 rather than sizeof (element type).
313 2020-03-10 Alan Modra <amodra@gmail.com>
315 * objdump.c (disassemble_section): Don't call qsort unless
316 sym count is at least two.
317 (disassemble_data): Don't call memcpy with NULL src.
319 2020-03-09 Alan Modra <amodra@gmail.com>
322 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
323 to get_data rather than multiplying.
324 (dump_ia64_vms_dynamic_relocs): Likewise.
325 (process_version_sections): Correct order of size and nmemb args
327 (process_mips_specific): Likewise.
329 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
331 * readelf.c (get_dynamic_data): Replace "memory chekers" with
332 "memory checkers" in comments.
334 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
337 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
338 * doc/Makefile.in: Re-generate.
340 2020-03-06 Nick Clifton <nickc@redhat.com>
342 * objcopy.c (check_new_section_flags): New function. Reject the
343 SEC_COFF_SHARED flag if the target is not a COFF binary.
344 (copy_object): Call check_new_section_flags.
345 (setup_section): Likewise.
346 * doc/binutils.texi (objcopy): Add a note that the 'share' section
347 flag cannot be applied to ELF binaries.
349 2020-03-06 Alan Modra <amodra@gmail.com>
352 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
354 2020-03-05 Alan Modra <amodra@gmail.com>
357 * objcopy.c (filter_symbols): Don't segfault on NULL
358 prefix_symbols_string.
360 2020-03-04 Christian Eggers <ceggers@gmx.de>
362 * objcopy.c (copy_object): Convert from bytes to octets for
363 --gap-fill and --pad-to.
365 2020-03-03 Nick Clifton <nickc@redhat.com>
368 * prdbg.c (pr_tag_type): Remove call to abort.
370 2020-03-02 Aaron Merey <amerey@redhat.com>
372 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
375 2020-03-02 Nick Clifton <nickc@redhat.com>
378 * readelf.c (dump_section_as_strings): Display new-line characters
379 as \n and then insert a line break.
380 * testsuite/binutils-all/pr25543.s: New test.
381 * testsuite/binutils-all/pr25543.d: Test driver.
382 * testsuite/binutils-all/readelf.exp: Run the new test.
384 2020-02-27 Nick Clifton <nickc@redhat.com>
387 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
388 get_data is unable to load the string table.
390 2020-02-26 Alan Modra <amodra@gmail.com>
392 * elfedit.c: Indent labels correctly.
393 * readelf.c: Likewise.
394 * resres.c: Likewise.
396 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
399 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
400 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
402 2020-02-24 Nick Clifton <nickc@redhat.com>
405 * doc/binutils.texi (objdump): Fix typo in description of
408 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
410 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
413 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
415 * objdump.c (show_line): call bfd_demangle when using do_demangle.
417 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
419 * configure: Regenerate.
421 2020-02-10 Fangrui Song <maskray@google.com>
423 * objcopy.c (parse_flags): Handle "exclude".
424 * doc/binutils.texi: Document the support.
426 2020-02-10 Aaron Merey <amerey@redhat.com>
428 * binutils/testsuite/binutils-all/debuginfod.exp:
429 Replace set ::env with setenv.
430 Start server before setting environment variable.
431 Specify tmpdir as the location of the server's
433 Check additional server metrics at start-up.
435 2020-02-07 Nick Clifton <nickc@redhat.com>
437 * README-how-to-make-a-release: Add note about updating the
438 GAS/NEWS URL in the next release.
440 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
443 * readelf.c (get_machine_flags): Add support for Z80N machine
446 2020-02-07 Nick Clifton <nickc@redhat.com>
448 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
449 of the truncated file name.
451 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
453 * objdump.c (print_jump_visualisation): New function.
454 (disassemble_bytes): Call new function.
456 2020-02-06 Alan Modra <amodra@gmail.com>
458 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
460 (supports_gnu_osabi): New procedure.
461 (is_generic): New, from ld-lib.exp.
462 (supports_gnu_unique): Use the above.
464 2020-02-04 Alan Modra <amodra@gmail.com>
466 * Makefile.am (CFILES): Add od-elf32_avr.c.
467 * Makefile.in: Regenerate.
468 * po/POTFILES.in: Regenerate.
470 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
472 * readelf.c (dump_relocations, dump_relocations)
473 (decode_arm_unwind_bytecode, process_dynamic_section)
474 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
477 2020-02-03 Sergei Trofimovich <siarheit@google.com>
479 * coffdump.c (program_name): Drop redundant definition.
480 * srconv.c (program_name): Likewise
481 * sysdump.c (program_name): Likewise
483 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
486 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
487 same file with different section pointers.
489 2020-02-01 Nick Clifton <nickc@redhat.com>
491 * README-how-to-make-a-release: Update with more details on the
492 release making process.
494 2020-01-31 Nick Clifton <nickc@redhat.com>
496 * po/sv.po: Updated Swedish translation.
498 2020-01-28 Nick Clifton <nickc@redhat.com>
500 * readelf.c (get_build_id): Simplify warning message about corrupt
501 notes encountered whilst scanning for the build-id.
503 2020-01-27 Roland McGrath <mcgrathr@google.com>
505 * objcopy.c (compare_gnu_build_notes): Fix comparison results
506 for overlapping ranges so that (A == B) == (B == A) holds.
508 2020-01-27 Alan Modra <amodra@gmail.com>
510 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
511 case statement with switch statement.
513 2020-01-24 Nick Clifton <nickc@redhat.com>
515 * readelf.c (get_build_id): Fix warning messages about corrupt
518 2020-01-23 Nick Clifton <nickc@redhat.com>
520 * po/fr.po: Updated French translation.
522 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
525 * readelf.c (get_alpha_symbol_other): Fix error message typo.
527 2020-01-20 Nick Clifton <nickc@redhat.com>
529 * po/pt.po: Updated Portuguese translation.
530 * po/uk.po: Updated Ukranian translation.
532 2020-01-18 Nick Clifton <nickc@redhat.com>
534 * README-how-to-make-a-release: Update notes on how to cut a
535 branch for a release.
537 2020-01-18 Nick Clifton <nickc@redhat.com>
539 * configure: Regenerate.
540 * po/binutils.pot: Regenerate.
542 2020-01-18 Nick Clifton <nickc@redhat.com>
544 Binutils 2.34 branch created.
546 2020-01-17 Thomas Troeger <tstroege@gmx.de>
548 * objdump.c (jump_info_visualize_address): Discard jumps that are
550 (disassemble_bytes): Only compute the maximum level if jumps were
553 2020-01-13 Nick Clifton <nickc@redhat.com>
555 * objdump.c (disassemble_bytes): Remove C99-ism.
556 * testsuite/binutils-all/debuginfod.exp: New tests.
558 2020-01-13 Thomas Troeger <tstroege@gmx.de>
560 * objdump.c (visualize_jumps, color_output, extended_color_output)
561 (detected_jumps): New variables.
562 (usage): Add the new jump visualization options.
563 (option_values): Add new option value.
564 (long_options): Add the new option.
565 (jump_info_new, jump_info_free): New functions.
566 (jump_info_min_address, jump_info_max_address): Likewise.
567 (jump_info_end_address, jump_info_is_start_address): Likewise.
568 (jump_info_is_end_address, jump_info_size): Likewise.
569 (jump_info_unlink, jump_info_insert): Likewise.
570 (jump_info_add_front, jump_info_move_linked): Likewise.
571 (jump_info_intersect, jump_info_merge): Likewise.
572 (jump_info_sort, jump_info_visualize_address): Likewise.
573 (disassemble_jumps): New function - used to locate jumps.
574 (disassemble_bytes): Add ascii art generation.
575 (disassemble_section): Add scan to locate jumps.
576 (main): Parse the new visualization option.
577 * doc/binutils.texi: Document the new feature.
578 * NEWS: Mention the new feature.
580 2020-01-13 Alan Modra <amodra@gmail.com>
584 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
585 fde_fc col_type and col_offset.
586 * readelf.c (apply_relocations): Move symsec check earlier.
587 (free_debug_section): Free reloc_info.
588 (process_notes_at): Free pnotes on error path.
589 (process_object): Free dump_sects here..
590 (process_archive): ..not here.
592 2020-01-13 Alan Modra <amodra@gmail.com>
595 * nm.c (display_rel_file): Free dyn_syms.
597 2020-01-09 Nick Clifton <nickc@redhat.com>
600 * objcopy.c (empty_name): New variable.
601 (need_sym_before): Prevent an attempt to free a static variable.
602 (filter_symbols): Avoid strcmp test by checking for pointer
605 2020-01-09 Nick Clifton <nickc@redhat.com>
607 * po/zh_TW.po: Updated Traditional Chinese translation.
609 2020-01-09 Aaron Merey <amerey@redhat.com>
611 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
612 * Makefile.in: Regenerate.
614 * config.in: Regenerate.
615 * configure: Regenerate.
616 * configure.ac: Call AC_DEBUGINFOD.
617 * doc/Makefile.in: Regenerate.
618 * doc/binutils.texi: Add section on using binutils
620 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
621 Query debuginfod servers for the target debug file.
622 (load_separate_debug_info): Call
623 debuginfod_fetch_separate_debug_info if configured with
625 (load_separate_debug_files): Add file argument to
626 load_separate_debug_info calls.
627 * dwarf.h (get_build_id): Add declaration.
628 * objdump.c (get_build_id): New function. Get build-id of file.
629 * readelf.c (get_build_id): Likewise.
630 * testsuite/binutils-all/debuginfod.exp: New tests.
631 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
634 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
636 * readelf.c: Add support for new Z*) relocations and machine
639 2020-01-01 Alan Modra <amodra@gmail.com>
641 Update year range in copyright notice of all files.
643 For older changes see ChangeLog-2019
645 Copyright (C) 2020 Free Software Foundation, Inc.
647 Copying and distribution of this file, with or without modification,
648 are permitted in any medium without royalty provided the copyright
649 notice and this notice are preserved.
655 version-control: never