-# Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright 2008-2019 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# Test forward replay
#
-if ![target_info exists gdb,can_reverse] {
+if ![supports_reverse] {
return
}
-set testfile "machinestate"
-set srcfile ${testfile}.c
-set srcfile1 ms1.c
+standard_testfile .c ms1.c
-if { [prepare_for_testing $testfile.exp $testfile {machinestate.c ms1.c} ] } {
+if { [prepare_for_testing "failed to prepare" $testfile \
+ [list $srcfile $srcfile2]] } {
return -1
}
runto main
-if [target_info exists gdb,use_precord] {
+if [supports_process_record] {
# Activate process record/replay
- gdb_test "record" "" "Turn on process record"
- # FIXME: command ought to acknowledge, so we can test if it succeeded.
+ gdb_test_no_output "record" "turn on process record"
}
# Proceed to end of main
gdb_test "break $endmain" \
- "Breakpoint.* file .*/$srcfile, line $endmain.*" ""
-gdb_continue_to_breakpoint "end of main" ".*/$srcfile:$endmain.*"
+ "Breakpoint.* file .*$srcfile, line $endmain.*" ""
+gdb_continue_to_breakpoint "end of main" ".*$srcfile:$endmain.*"
###
###
set breakloc [gdb_get_line_number \
"module_global_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$breakloc.*" "reverse to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$breakloc.*" "reverse to $breakloc"
gdb_test "print aglobal" ".* = 0$newline" "module global reverse-breakpoint"
gdb_test "step" ".* module global post-change .*" ""
set breakloc [gdb_get_line_number \
"module_static_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$breakloc.*" "reverse to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$breakloc.*" "reverse to $breakloc"
gdb_test "print astatic" ".* = 0$newline" "module static reverse-breakpoint"
gdb_test "step" ".* module static post-change .*" ""
set breakloc [gdb_get_line_number \
"function_static_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$breakloc.*" "reverse to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$breakloc.*" "reverse to $breakloc"
gdb_test "print a" ".* = 0$newline" "function static reverse-breakpoint"
gdb_test "step" ".* function static post-change .*" ""
set breakloc [gdb_get_line_number \
"auto_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$breakloc.*" "reverse to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$breakloc.*" "reverse to $breakloc"
gdb_test "print a" ".* = 0$newline" "auto var reverse-breakpoint"
gdb_test "step" ".* auto post-change .*" ""
set breakloc [gdb_get_line_number \
"register_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$breakloc.*" "reverse to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$breakloc.*" "reverse to $breakloc"
gdb_test "print a" ".* = 0$newline" "register var reverse-breakpoint"
gdb_test "step" ".* register post-change .*" ""
gdb_test "print a" ".* = 1$newline" "register var step post-change"
gdb_test "reverse-step" ".*$newline$breakloc.*" ""
-gdb_test "print a" ".* = 0$newline" "register var reverse step-to"
+gdb_test "print a" ".* = 0$newline" \
+ "register var reverse step-to, first time"
# Proceed to beginning of main
-gdb_test "tbreak $beginmain" ".*/$srcfile, line $beginmain.*" ""
-gdb_test "reverse-continue" ".*/$srcfile:$beginmain.*" "reverse to main"
+gdb_test "tbreak $beginmain" ".*$srcfile, line $beginmain.*" ""
+gdb_test "reverse-continue" ".*$srcfile:$beginmain.*" "reverse to main"
# Now repeat tests while replaying forward.
set breakloc [gdb_get_line_number \
"register_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "continue" ".*$srcfile:$breakloc.*" "forward to $breakloc"
gdb_test "print a" ".* = 0$newline" "register var forward-breakpoint"
gdb_test "reverse-step" ".*hide.*" ""
gdb_test "step" ".*$newline$breakloc.*" ""
gdb_test "print a" ".* = 0$newline" "register var forward step-to"
gdb_test "step" ".* register post-change .*" ""
-gdb_test "print a" ".* = 1$newline" "register var step post-change"
+gdb_test "print a" ".* = 1$newline" \
+ "register var step post-change, second time"
# Auto variable, forward
set breakloc [gdb_get_line_number \
"auto_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "continue" ".*$srcfile:$breakloc.*" "forward to $breakloc"
gdb_test "print a" ".* = 0$newline" "auto var forward-breakpoint"
gdb_test "reverse-step" ".*hide.*" ""
set breakloc [gdb_get_line_number \
"function_static_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "continue" ".*$srcfile:$breakloc.*" "forward to $breakloc"
gdb_test "print a" ".* = 0$newline" "function static forward-breakpoint"
gdb_test "reverse-step" ".*hide.*" ""
set breakloc [gdb_get_line_number \
"module_static_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "continue" ".*$srcfile:$breakloc.*" "forward to $breakloc"
gdb_test "print astatic" ".* = 0$newline" "module static forward-breakpoint"
gdb_test "reverse-step" ".*hide.*" ""
set breakloc [gdb_get_line_number \
"module_global_state: set breakpoint here" $srcfile]
-gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" ""
-gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc"
+gdb_test "tbreak $breakloc" ".*$srcfile, line $breakloc.*" ""
+gdb_test "continue" ".*$srcfile:$breakloc.*" "forward to $breakloc"
gdb_test "print aglobal" ".* = 0$newline" "module global forward-breakpoint"
gdb_test "reverse-step" ".*hide.*" ""