binutils-gdb/gdb/testsuite/gdb.btrace
Markus Metzger 52834460bc 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.
2014-01-16 13:14:12 +01:00
..
Makefile.in record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
data.c record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
data.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
delta.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
enable.c Update Copyright year range in all files maintained by GDB. 2014-01-01 07:54:24 +04:00
enable.exp test, btrace: update expected text 2014-01-16 12:45:08 +01:00
exception.cc record-btrace: optionally indent function call history 2014-01-16 13:03:41 +01:00
exception.exp record-btrace: show trace from enable location 2014-01-16 13:12:00 +01:00
finish.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
function_call_history.c Update Copyright year range in all files maintained by GDB. 2014-01-01 07:54:24 +04:00
function_call_history.exp record-btrace: make ranges include begin and end 2014-01-16 13:05:38 +01:00
instruction_history.S Update Copyright year range in all files maintained by GDB. 2014-01-01 07:54:24 +04:00
instruction_history.c Update Copyright year range in all files maintained by GDB. 2014-01-01 07:54:24 +04:00
instruction_history.exp record-btrace: show trace from enable location 2014-01-16 13:12:00 +01:00
multi-thread-step.c record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
multi-thread-step.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
next.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
nexti.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
record_goto.c record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
record_goto.exp record-btrace: show trace from enable location 2014-01-16 13:12:00 +01:00
rn-dl-bind.c record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
rn-dl-bind.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
step.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
stepi.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
tailcall.exp record-btrace: add (reverse-)stepping support 2014-01-16 13:14:12 +01:00
unknown_functions.c record-btrace: optionally indent function call history 2014-01-16 13:03:41 +01:00
unknown_functions.exp record-btrace: show trace from enable location 2014-01-16 13:12:00 +01:00
x86-record_goto.S record-btrace: add record goto target methods 2014-01-16 13:08:05 +01:00
x86-tailcall.S record-btrace: optionally indent function call history 2014-01-16 13:03:41 +01:00
x86-tailcall.c record-btrace: optionally indent function call history 2014-01-16 13:03:41 +01:00