From: Yao Qi <yao@codesourcery.com>
To: <gdb-patches@sourceware.org>
Subject: [PATCH v3 09/15] Check the tstatus output on tfile target
Date: Sat, 09 Mar 2013 03:49:00 -0000 [thread overview]
Message-ID: <1362800844-27940-10-git-send-email-yao@codesourcery.com> (raw)
In-Reply-To: <1362800844-27940-1-git-send-email-yao@codesourcery.com>
There is no reason that the "tstatus" output on tfile target is
different from its output on live target (except for "Using a trace
file"). In this patch, we capture the output of "tstatus" in live
target, and use it to check the "tstatus" output in tfile target. It
is quite useful to expose the differences in "tstatus" output and the
previous two patches are to fix these differences.
gdb/testsuite:
2013-03-08 Yao Qi <yao@codesourcery.com>
* gdb.trace/tstatus.exp (run_trace_experiment): Save the output
of 'tstatus' into tstatus_output.
(top level): Save the trace data to tfile. Read trace file in
tfile target. Check the trace status.
---
gdb/testsuite/gdb.trace/tstatus.exp | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/gdb/testsuite/gdb.trace/tstatus.exp b/gdb/testsuite/gdb.trace/tstatus.exp
index 743db91..c105048 100644
--- a/gdb/testsuite/gdb.trace/tstatus.exp
+++ b/gdb/testsuite/gdb.trace/tstatus.exp
@@ -34,9 +34,12 @@ if ![gdb_target_supports_trace] {
return -1
}
+set tstatus_output ""
+
proc run_trace_experiment {} {
global gdb_prompt
global decimal
+ global tstatus_output
# gdb_test_no_output "set debug remote 1" ""
@@ -93,10 +96,12 @@ proc run_trace_experiment {} {
set test "tstatus reports trace stop reason"
gdb_test_multiple "tstatus" $test {
- -re "Trace stopped by a tstop command \\(because I can\\)\..*Trace will stop if GDB disconnects\.\[\r\n\]+Trace user is me me me\.\[\r\n\]+Trace notes: different note\.\[\r\n\]+Not looking at any trace frame\..*\r\n$gdb_prompt $" {
+ -re "(Trace stopped by a tstop command \\(because I can\\)\..*Trace will stop if GDB disconnects\.\[\r\n\]+Trace user is me me me\.\[\r\n\]+Trace notes: different note\.\[\r\n\]+Not looking at any trace frame\.).*\r\n$gdb_prompt $" {
+ set tstatus_output $expect_out(1,string)
pass $test
}
- -re "Trace stopped by a tstop command\..*\r\n$gdb_prompt $" {
+ -re "(Trace stopped by a tstop command\.).*\r\n$gdb_prompt $" {
+ set tstatus_output $expect_out(1,string)
unsupported $test
}
}
@@ -131,3 +136,26 @@ proc test_tracepoints {} {
}
test_tracepoints
+
+# Save trace frames to tfile.
+gdb_test "tsave tstatus.tf" "Trace data saved to file 'tstatus.tf'.*"
+
+# Change target to tfile.
+set test "change to tfile target"
+gdb_test_multiple "target tfile tstatus.tf" "$test" {
+ -re "A program is being debugged already. Kill it. .y or n. " {
+ send_gdb "y\n"
+ exp_continue
+ }
+ -re "$gdb_prompt $" {
+ pass "$test"
+ }
+}
+
+# Convert "(because I can) to "\(because I can\)"
+set tstatus_output [string map {\( \\(} $tstatus_output]
+set tstatus_output [string map {\) \\)} $tstatus_output]
+
+# The status should be identical to the status of live inferior.
+gdb_test "tstatus" "Using a trace file\.\r\n${tstatus_output}.*" \
+ "tstatus on tfile target"
--
1.7.7.6
next prev parent reply other threads:[~2013-03-09 3:49 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-09 3:48 [PATCH v3 00/15] CTF Support Yao Qi
2013-03-09 3:49 ` [PATCH v3 14/15] Test on saving tracepoint defs: CTF Yao Qi
2013-03-12 20:23 ` Tom Tromey
2013-03-13 9:55 ` Yao Qi
2013-03-13 15:49 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 15/15] MAINTAINERS Yao Qi
2013-03-09 3:49 ` [PATCH v3 05/15] ctf test: report.exp Yao Qi
2013-03-12 19:25 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 03/15] Read CTF by the ctf target Yao Qi
2013-03-13 20:09 ` Tom Tromey
2013-03-14 13:23 ` Yao Qi
2013-03-14 14:59 ` Tom Tromey
2013-03-14 16:57 ` Doug Evans
2013-03-14 17:39 ` Doug Evans
2013-03-25 13:33 ` Yao Qi
2013-03-25 17:14 ` Doug Evans
2013-03-26 16:16 ` Yao Qi
2013-03-29 17:56 ` Doug Evans
2013-04-08 14:19 ` Yao Qi
2013-04-08 21:48 ` Doug Evans
2013-04-09 15:23 ` Yao Qi
2013-04-09 18:41 ` Doug Evans
2013-03-09 3:49 ` [PATCH v3 04/15] ctf doc and NEWS Yao Qi
2013-03-09 3:49 ` [PATCH v3 10/15] tstatus.exp: ctf Yao Qi
2013-03-12 19:48 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 12/15] Write tracepoint definition in CTF and read Yao Qi
2013-03-12 20:02 ` Tom Tromey
2013-03-14 18:34 ` Doug Evans
2013-03-09 3:49 ` [PATCH v3 02/15] Save trace into CTF format Yao Qi
2013-03-12 18:49 ` Tom Tromey
2013-03-13 10:33 ` Yao Qi
2013-03-13 19:30 ` Tom Tromey
2013-03-14 17:49 ` Doug Evans
2013-03-09 3:49 ` [PATCH v3 13/15] Test on saving tracepoint defs Yao Qi
2013-03-12 20:10 ` Tom Tromey
2013-03-13 9:48 ` Yao Qi
2013-03-13 14:58 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 06/15] Write status to CTF and read Yao Qi
2013-03-12 19:31 ` Tom Tromey
2013-03-14 18:06 ` Doug Evans
2013-03-29 14:46 ` Yao Qi
2013-03-29 16:47 ` Doug Evans
2013-03-09 3:49 ` Yao Qi [this message]
2013-03-12 19:45 ` [PATCH v3 09/15] Check the tstatus output on tfile target Tom Tromey
2013-03-09 3:49 ` [PATCH v3 08/15] Write 'stop_desc' of trace status to tfile Yao Qi
2013-03-12 19:15 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 07/15] Write trace notes and username into tfile Yao Qi
2013-03-12 19:35 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 11/15] Write tsv definition in CTF and read Yao Qi
2013-03-12 19:56 ` Tom Tromey
2013-03-09 3:49 ` [PATCH v3 01/15] Refactor 'tsave' Yao Qi
2013-03-12 18:30 ` Tom Tromey
2013-03-13 10:33 ` Yao Qi
2013-03-13 19:26 ` Tom Tromey
2013-03-14 9:17 ` Yao Qi
2013-04-10 19:16 ` [PATCH v3 00/15] CTF Support Yao Qi
2013-04-11 22:59 ` [patch] Regenerate config.in [Re: [PATCH v3 00/15] CTF Support] Jan Kratochvil
2013-04-12 22:27 ` [commit] " Jan Kratochvil
2014-08-04 18:59 ` Incorrect placement of babeltrace gdb/NEWS item " Jan Kratochvil
2014-08-06 1:30 ` Yao Qi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1362800844-27940-10-git-send-email-yao@codesourcery.com \
--to=yao@codesourcery.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox