aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.reverse/solib-reverse.exp
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2019-10-13 02:40:57 +0200
committerTom de Vries <tdevries@suse.de>2019-10-13 02:40:57 +0200
commitd6e763135663f01349ed4126b80090ea2f37fcf2 (patch)
treeca6ef3f8952a3fc8cfe649de6d91d8e1949ae9ad /gdb/testsuite/gdb.reverse/solib-reverse.exp
parentd5082b3251877ecded4cd3766503e51ecb8ef5c8 (diff)
downloadfsf-binutils-gdb-d6e763135663f01349ed4126b80090ea2f37fcf2.zip
fsf-binutils-gdb-d6e763135663f01349ed4126b80090ea2f37fcf2.tar.gz
fsf-binutils-gdb-d6e763135663f01349ed4126b80090ea2f37fcf2.tar.bz2
[gdb/testsuite] Add KFAIL for missing support of reverse-debugging xsave
Normally the gdb.reverse/*.exp test-cases pass on my system (apart from the record/23188 KFAIL for gdb.reverse/step-precsave.exp). But when specifying GLIBC_TUNABLES=glibc.tune.hwcaps=-XSAVEC_Usable to force glibc to use _dl_runtime_resolve_xsave instead of _dl_runtime_resolve_xsavec, we run into 1054 FAILs like this: ... (gdb) PASS: gdb.reverse/sigall-reverse.exp: b gen_HUP continue^M Continuing.^M Process record does not support instruction 0xfae64 at address \ 0x7ffff7ded958.^M Process record: failed to record execution log.^M ^M Program stopped.^M 0x00007ffff7ded958 in _dl_runtime_resolve_xsave () from \ /lib64/ld-linux-x86-64.so.2^M (gdb) FAIL: gdb.reverse/sigall-reverse.exp: get signal ABRT ... The problem is that the xsave instruction is not supported in reverse-debugging (PR record/25038). Add KFAILs for this PR. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2019-10-13 Tom de Vries <tdevries@suse.de> PR record/25038 * gdb.reverse/sigall-precsave.exp: Add PR record/25038 KFAIL. * gdb.reverse/sigall-reverse.exp: Same. * gdb.reverse/solib-precsave.exp: Same. * gdb.reverse/solib-reverse.exp: Same. * gdb.reverse/step-precsave.exp: Same. * gdb.reverse/until-precsave.exp: Same. * gdb.reverse/until-reverse.exp: Same. * lib/gdb.exp (gdb_continue_to_breakpoint): Same.
Diffstat (limited to 'gdb/testsuite/gdb.reverse/solib-reverse.exp')
-rw-r--r--gdb/testsuite/gdb.reverse/solib-reverse.exp13
1 files changed, 12 insertions, 1 deletions
diff --git a/gdb/testsuite/gdb.reverse/solib-reverse.exp b/gdb/testsuite/gdb.reverse/solib-reverse.exp
index 77c3213..53b3523 100644
--- a/gdb/testsuite/gdb.reverse/solib-reverse.exp
+++ b/gdb/testsuite/gdb.reverse/solib-reverse.exp
@@ -86,7 +86,18 @@ if [supports_process_record] {
set end_part_one [gdb_get_line_number " end part one" "$srcfile"]
set end_part_two [gdb_get_line_number " end part two" "$srcfile"]
-gdb_test "until $end_part_one" " end part one.*" "run until end part one"
+set test "run until end part one"
+set pass_pattern " end part one.*"
+set kfail_pattern "Process record does not support instruction 0xfae64 at.*"
+gdb_test_multiple "until $end_part_one" $test {
+ -re "\[\r\n\]*(?:$pass_pattern)\[\r\n\]+$gdb_prompt $" {
+ pass $test
+ }
+ -re "\[\r\n\]*(?:$kfail_pattern)\[\r\n\]+$gdb_prompt $" {
+ kfail "gdb/25038" $test
+ return -1
+ }
+}
gdb_test "reverse-step" " shr1 three .*" "reverse-step third shr1"
gdb_test "reverse-step" " shr1 two .*" "reverse-step second shr1"