diff options
author | Markus Metzger <markus.t.metzger@intel.com> | 2013-05-06 16:04:46 +0200 |
---|---|---|
committer | Markus Metzger <markus.t.metzger@intel.com> | 2014-01-16 13:14:12 +0100 |
commit | 52834460bc1e8813c8cedd876dac7156b34fa60f (patch) | |
tree | 9ed83f5c20d5e1704354f07ae709bb5b94a5650c /gdb/doc | |
parent | 118e6252ca1cabce6d4480a4f24c53e5456a2cfa (diff) | |
download | gdb-52834460bc1e8813c8cedd876dac7156b34fa60f.zip gdb-52834460bc1e8813c8cedd876dac7156b34fa60f.tar.gz gdb-52834460bc1e8813c8cedd876dac7156b34fa60f.tar.bz2 |
record-btrace: add (reverse-)stepping support
Provide to_resume and to_wait target methods for the btrace record target
to allow reverse stepping and replay support.
Replay is limited in the sense that only stepping and source correlation
are supported. We do not record data and thus can not show variables.
Non-stop mode is not working. Do not allow record-btrace in non-stop mode.
2014-01-16 Markus Metzger <markus.t.metzger@intel.com>
* btrace.h (btrace_thread_flag): New.
(struct btrace_thread_info) <flags>: New.
* record-btrace.c (record_btrace_resume_thread)
(record_btrace_find_thread_to_move, btrace_step_no_history)
(btrace_step_stopped, record_btrace_start_replaying)
(record_btrace_step_thread, record_btrace_decr_pc_after_break)
(record_btrace_find_resume_thread): New.
(record_btrace_resume, record_btrace_wait): Extend.
(record_btrace_can_execute_reverse): New.
(record_btrace_open): Fail in non-stop mode.
(record_btrace_set_replay): Split into this, ...
(record_btrace_stop_replaying): ... this, ...
(record_btrace_clear_histories): ... and this.
(init_record_btrace_ops): Init to_can_execute_reverse.
* NEWS: Announce it.
testsuite/
* gdb.btrace/delta.exp: Check reverse stepi.
* gdb.btrace/tailcall.exp: Update. Add stepping tests.
* gdb.btrace/finish.exp: New.
* gdb.btrace/next.exp: New.
* gdb.btrace/nexti.exp: New.
* gdb.btrace/record_goto.c: Add comments.
* gdb.btrace/step.exp: New.
* gdb.btrace/stepi.exp: New.
* gdb.btrace/multi-thread-step.c: New.
* gdb.btrace/multi-thread-step.exp: New.
* gdb.btrace/rn-dl-bind.c: New.
* gdb.btrace/rn-dl-bind.exp: New.
* gdb.btrace/data.c: New.
* gdb.btrace/data.exp: New.
* gdb.btrace/Makefile.in (EXECUTABLES): Add new.
doc/
* gdb.texinfo: Document limited reverse/replay support
for target record-btrace.
Diffstat (limited to 'gdb/doc')
-rw-r--r-- | gdb/doc/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/doc/gdb.texinfo | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index b873f51..74a2763 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,5 +1,10 @@ 2014-01-16 Markus Metzger <markus.t.metzger@intel.com> + * gdb.texinfo: Document limited reverse/replay support + for target record-btrace. + +2014-01-16 Markus Metzger <markus.t.metzger@intel.com> + * gdb.texinfo (Process Record and Replay): Update documentation. 2014-01-16 Markus Metzger <markus.t.metzger@intel.com> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 57071d1..e77ca2a 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -6263,8 +6263,10 @@ replay implementation. This method allows replaying and reverse execution. @item btrace -Hardware-supported instruction recording. This method does not allow -replaying and reverse execution. +Hardware-supported instruction recording. This method does not record +data. Further, the data is collected in a ring buffer so old data will +be overwritten when the buffer is full. It allows limited replay and +reverse execution. This recording method may not be available on all processors. @end table |