This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: RFC: Adding visualization of jumps to objdump's disassembly output
- From: Nick Clifton <nickc at redhat dot com>
- To: binutils at sourceware dot org
- Cc: tstroege at gmx dot de
- Date: Mon, 13 Jan 2020 12:42:13 +0000
- Subject: Re: RFC: Adding visualization of jumps to objdump's disassembly output
- References: <87o8vfruyf.fsf@redhat.com>
Hi Guys,
I have gone head and committed this patch. The address hashing
function has been removed, and replaced by a call to iterative_hash_object,
and I have added some minor code cleaning as well.
Support for generating UTF-8 output is something that Thomas is
working on, but this may not make it in before the branch is cut.
Cheers
Nick
binutils/ChangeLog
2020-01-13 Thomas Troeger <tstroege@gmx.de>
* objdump.c (visualize_jumps, color_output, extended_color_output)
(detected_jumps): New variables.
(usage): Add the new jump visualization options.
(option_values): Add new option value.
(long_options): Add the new option.
(jump_info_new, jump_info_free): New functions.
(jump_info_min_address, jump_info_max_address): Likewise.
(jump_info_end_address, jump_info_is_start_address): Likewise.
(jump_info_is_end_address, jump_info_size): Likewise.
(jump_info_unlink, jump_info_insert): Likewise.
(jump_info_add_front, jump_info_move_linked): Likewise.
(jump_info_intersect, jump_info_merge): Likewise.
(jump_info_sort, jump_info_visualize_address): Likewise.
(disassemble_jumps): New function - used to locate jumps.
(disassemble_bytes): Add ascii art generation.
(disassemble_section): Add scan to locate jumps.
(main): Parse the new visualization option.
* doc/binutils.texi: Document the new feature.
* NEWS: Mention the new feature.
opcodes/ChangeLog
2020-01-13 Thomas Troeger <tstroege@gmx.de>
* arm-dis.c (print_insn_arm): Fill in insn info fields for control
flow instructions.
(print_insn_thumb16, print_insn_thumb32): Likewise.
(print_insn): Initialize the insn info.
* i386-dis.c (print_insn): Initialize the insn info fields, and
detect jumps.