btrace: indicate speculative execution
Indicate speculatively executed instructions with a leading '?'. We use the space that is normally used for the PC prefix. In the case where the instruction at the current PC had been executed speculatively before, the PC prefix will be partially overwritten resulting in "?> ". As a side-effect, the /p modifier to omit the PC prefix in the "record instruction-history" command now uses a 3-space PC prefix " " in order to have enough space for the speculative execution indication. gdb/ * btrace.c (btrace_compute_ftrace_bts): Clear insn flags. (pt_btrace_insn_flags): New. (ftrace_add_pt): Call pt_btrace_insn_flags. * btrace.h (btrace_insn_flag): New. (btrace_insn) <flags>: New. * record-btrace.c (btrace_insn_history): Print insn prefix. * NEWS: Announce it. doc/ * gdb.texinfo (Process Record and Replay): Document prefixing of speculatively executed instructions in the "record instruction-history" command. testsuite/ * gdb.btrace/instruction_history.exp: Update. * gdb.btrace/tsx.exp: New. * gdb.btrace/tsx.c: New. * lib/gdb.exp (skip_tsx_tests, skip_btrace_pt_tests): New.
This commit is contained in:
parent
5599c40462
commit
da8c46d296
13 changed files with 311 additions and 14 deletions
|
@ -1,3 +1,9 @@
|
|||
2015-08-07 Markus Metzger <markus.t.metzger@intel.com>
|
||||
|
||||
* gdb.texinfo (Process Record and Replay): Document prefixing of
|
||||
speculatively executed instructions in the "record instruction-history"
|
||||
command.
|
||||
|
||||
2015-07-20 Doug Evans <dje@google.com>
|
||||
|
||||
* Makefile.in (STABS_DOC_BUILD_INCLUDES): Add gdb-cfg.texi, GDBvn.texi.
|
||||
|
|
|
@ -6736,8 +6736,13 @@ recorded ``future'' and begin recording a new ``future''.
|
|||
Disassembles instructions from the recorded execution log. By
|
||||
default, ten instructions are disassembled. This can be changed using
|
||||
the @code{set record instruction-history-size} command. Instructions
|
||||
are printed in execution order. There are several ways to specify
|
||||
what part of the execution log to disassemble:
|
||||
are printed in execution order.
|
||||
|
||||
Speculatively executed instructions are prefixed with @samp{?}. This
|
||||
feature is not available for all recording formats.
|
||||
|
||||
There are several ways to specify what part of the execution log to
|
||||
disassemble:
|
||||
|
||||
@table @code
|
||||
@item record instruction-history @var{insn}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue