From abcef95aa511a845f0599178be09403348ba4bad Mon Sep 17 00:00:00 2001 From: Markus Metzger Date: Wed, 30 Sep 2015 11:41:35 +0200 Subject: [PATCH] btrace, test: avoid gdb.btrace/vdso.exp fail The vdso.exp test checks that we can access the VDSO memory when replaying. Depending on the line information generated by the compiler, runto_main may run to the line marked with bp.1 or stop before that line. The test incorrectly assumes that it will always run to the marked line and fails if it doesn't. The test does not really care about what is traced. It does care that GDB is replaying when capturing the second disassemble output. Reflect that in the test by ignoring the output of the stepping and record goto begin commands and by checking that GDB is actually replaying. testsuite/ * gdb.btrace/vdso.c (main): Remove breakpoint markers. * gdb.btrace/vdso.exp: Change stepping command to "next" and ignore its output. Ignore the output of "record goto begin" and instead check that GDB is replaying. --- gdb/testsuite/ChangeLog | 7 +++++++ gdb/testsuite/gdb.btrace/vdso.c | 4 ++-- gdb/testsuite/gdb.btrace/vdso.exp | 7 +++++-- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index a48bbeefba9..71765a8c911 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2015-10-09 Markus Metzger + + * gdb.btrace/vdso.c (main): Remove breakpoint markers. + * gdb.btrace/vdso.exp: Change stepping command to "next" and ignore + its output. Ignore the output of "record goto begin" and instead + check that GDB is replaying. + 2015-10-09 Pedro Alves * gdb.base/a2-run.exp (maybe_exp_continue): New procedure. diff --git a/gdb/testsuite/gdb.btrace/vdso.c b/gdb/testsuite/gdb.btrace/vdso.c index 3c236ba1d6a..3c51c89700a 100644 --- a/gdb/testsuite/gdb.btrace/vdso.c +++ b/gdb/testsuite/gdb.btrace/vdso.c @@ -24,7 +24,7 @@ main (void) { struct timeval tv; - gettimeofday (&tv, 0); /* main.1. */ + gettimeofday (&tv, 0); - return 0; /* main.2. */ + return 0; } diff --git a/gdb/testsuite/gdb.btrace/vdso.exp b/gdb/testsuite/gdb.btrace/vdso.exp index e0e62deaf0c..353c80fda04 100644 --- a/gdb/testsuite/gdb.btrace/vdso.exp +++ b/gdb/testsuite/gdb.btrace/vdso.exp @@ -37,11 +37,14 @@ set live_gettimeofday [capture_command_output "disassemble gettimeofday" ""] # trace the test code gdb_test_no_output "record btrace" -gdb_test "next" "main\.2.*" +gdb_test "stepi" ".*" with_test_prefix "replay" { + # start replaying + gdb_test "record goto begin" ".*" + gdb_test "info record" "Replay in progress\.\[^\\\r\\\n\]*" + # capture the disassembly of gettimeofday while replaying - gdb_test "record goto begin" "main\.1.*" set replay_gettimeofday [capture_command_output "disassemble gettimeofday" ""] # the two disassemblies must be identical -- 2.30.2