diff options
author | Markus Metzger <markus.t.metzger@intel.com> | 2015-08-12 10:38:35 +0200 |
---|---|---|
committer | Markus Metzger <markus.t.metzger@intel.com> | 2015-11-04 09:14:17 +0100 |
commit | f94cc8975cfcf8625833eba0c0077bb878f0cbaa (patch) | |
tree | 7cc747ba84ac57effb632e392bb414cde27553c0 /gdb/amd64nbsd-tdep.c | |
parent | a50a40267668422e60901cc7fb949050caceb90c (diff) | |
download | gdb-f94cc8975cfcf8625833eba0c0077bb878f0cbaa.zip gdb-f94cc8975cfcf8625833eba0c0077bb878f0cbaa.tar.gz gdb-f94cc8975cfcf8625833eba0c0077bb878f0cbaa.tar.bz2 |
btrace: change record instruction-history /m
The /m modifier interleaves source lines with the disassembly of recorded
instructions. This calls disasm.c's gdb_disassembly once for each recorded
instruction to be printed.
This doesn't really work because gdb_disassembly may choose not to print
anything in some situations. And if it does print something, the output
interferes with btrace_insn_history's output around it.
It further results in a separate asm_insns list for each instruction in MI.
Even though there is no MI support for target record, yet, we fix this obvious
issue.
Change record instruction-history /m to use the new gdb_pretty_print_insn
function for printing a single instruction and interleave source lines as
appropriate.
We cannot reuse the new disasm.c do_mixed_source_and_assembly function without
significant changes to it.
gdb/
* record-btrace.c (struct btrace_line_range): New.
(btrace_mk_line_range, btrace_line_range_add)
(btrace_line_range_is_empty, btrace_line_range_contains_range)
(btrace_find_line_range, btrace_print_lines): New.
(btrace_insn_history): Add source interleaving algorithm.
Diffstat (limited to 'gdb/amd64nbsd-tdep.c')
0 files changed, 0 insertions, 0 deletions