aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.reverse/machinestate.exp
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.reverse/machinestate.exp')
-rw-r--r--gdb/testsuite/gdb.reverse/machinestate.exp268
1 files changed, 139 insertions, 129 deletions
diff --git a/gdb/testsuite/gdb.reverse/machinestate.exp b/gdb/testsuite/gdb.reverse/machinestate.exp
index 27916c7..e33be3d 100644
--- a/gdb/testsuite/gdb.reverse/machinestate.exp
+++ b/gdb/testsuite/gdb.reverse/machinestate.exp
@@ -63,7 +63,8 @@ if [supports_process_record] {
# Proceed to end of main
gdb_test "break $endmain" \
- "Breakpoint.* file .*$srcfile, line $endmain.*" ""
+ "Breakpoint.* file .*$srcfile, line $endmain.*" \
+ "break at end of main"
gdb_continue_to_breakpoint "end of main" ".*$srcfile:$endmain.*"
###
@@ -74,157 +75,166 @@ gdb_continue_to_breakpoint "end of main" ".*$srcfile:$endmain.*"
#
# Module global variable, reverse
-
-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 "print aglobal" ".* = 0$newline" "module global reverse-breakpoint"
-gdb_test "step" ".* module global post-change .*" ""
-gdb_test "print aglobal" ".* = 1$newline" "module global forward past bp"
-gdb_test "reverse-step" ".*$newline$breakloc.*" ""
-gdb_test "print aglobal" ".* = 0$newline" "module global reverse-step to bp"
-
+with_test_prefix "module global variable, reverse" {
+ 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 "print aglobal" " = 0$newline" "module global reverse-breakpoint"
+ gdb_test "step" " module global post-change .*"
+ gdb_test "print aglobal" " = 1$newline" "module global forward past bp"
+ gdb_test "reverse-step" "$newline$breakloc.*"
+ gdb_test "print aglobal" " = 0$newline" "module global reverse-step to bp"
+}
# Module static variable, reverse
-
-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 "print astatic" ".* = 0$newline" "module static reverse-breakpoint"
-gdb_test "step" ".* module static post-change .*" ""
-gdb_test "print astatic" ".* = 1$newline" "module static forward"
-gdb_test "reverse-step" ".*$newline$breakloc.*" ""
-gdb_test "print astatic" ".* = 0$newline" "module static reverse-step"
+with_test_prefix "module static variable, reverse" {
+ 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 "print astatic" " = 0$newline" "module static reverse-breakpoint"
+ gdb_test "step" " module static post-change .*"
+ gdb_test "print astatic" " = 1$newline" "module static forward"
+ gdb_test "reverse-step" "$newline$breakloc.*"
+ gdb_test "print astatic" " = 0$newline" "module static reverse-step"
+}
# Function static variable, reverse
-
-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 "print a" ".* = 0$newline" "function static reverse-breakpoint"
-gdb_test "step" ".* function static post-change .*" ""
-gdb_test "print a" ".* = 1$newline" "function static forward"
-gdb_test "reverse-step" ".*$newline$breakloc.*" ""
-gdb_test "print a" ".* = 0$newline" "function static reverse-step"
+with_test_prefix "function static variable, reverse" {
+ 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 "print a" " = 0$newline" "function static reverse-breakpoint"
+ gdb_test "step" " function static post-change .*"
+ gdb_test "print a" " = 1$newline" "function static forward"
+ gdb_test "reverse-step" "$newline$breakloc.*"
+ gdb_test "print a" " = 0$newline" "function static reverse-step"
+}
# Auto variable, reverse
-
-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 "print a" ".* = 0$newline" "auto var reverse-breakpoint"
-gdb_test "step" ".* auto post-change .*" ""
-gdb_test "print a" ".* = 1$newline" "auto var forward"
-gdb_test "reverse-step" ".*$newline$breakloc.*" ""
-gdb_test "print a" ".* = 0$newline" "auto var reverse-step"
+with_test_prefix "auto variable, reverse" {
+ 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 "print a" " = 0$newline" "auto var reverse-breakpoint"
+ gdb_test "step" " auto post-change .*"
+ gdb_test "print a" " = 1$newline" "auto var forward"
+ gdb_test "reverse-step" "$newline$breakloc.*"
+ gdb_test "print a" " = 0$newline" "auto var reverse-step"
+}
# Register variable, reverse
-
-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 "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, first time"
+with_test_prefix "register variable, reverse" {
+ 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 "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, 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.
# Register variable, forward
-set breakloc [gdb_get_line_number \
- "register_state: set breakpoint here" $srcfile]
+with_test_prefix "register variable, 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, second time"
+ gdb_test "print a" " = 0$newline" "register var forward-breakpoint"
+ gdb_test "reverse-step" "hide.*"
+ gdb_test "step" "$newline$breakloc.*" "step, 1"
+ gdb_test "print a" " = 0$newline" "register var forward step-to"
+ gdb_test "step" " register post-change .*" "step, 2"
+ 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 "print a" ".* = 0$newline" "auto var forward-breakpoint"
-gdb_test "reverse-step" ".*hide.*" ""
-gdb_test "step" ".*$newline$breakloc.*" ""
-gdb_test "print a" ".* = 0$newline" "auto var forward step-to"
-gdb_test "step" ".* auto post-change .*" ""
-gdb_test "print a" ".* = 1$newline" "auto var step post-change"
+with_test_prefix "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 "print a" " = 0$newline" "auto var forward-breakpoint"
+ gdb_test "reverse-step" "hide.*"
+ gdb_test "step" "$newline$breakloc.*" "step, 1"
+ gdb_test "print a" " = 0$newline" "auto var forward step-to"
+ gdb_test "step" " auto post-change .*" "step, 2"
+ gdb_test "print a" " = 1$newline" "auto var step post-change"
+}
# Function static variable, forward
-
-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 "print a" ".* = 0$newline" "function static forward-breakpoint"
-gdb_test "reverse-step" ".*hide.*" ""
-gdb_test "step" ".*$newline$breakloc.*" ""
-gdb_test "print a" ".* = 0$newline" "function static forward step-to"
-gdb_test "step" ".* function static post-change .*" ""
-gdb_test "print a" ".* = 1$newline" "function static step post-change"
+with_test_prefix "function static variable, forward" {
+ 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 "print a" " = 0$newline" "function static forward-breakpoint"
+ gdb_test "reverse-step" "hide.*"
+ gdb_test "step" "$newline$breakloc.*" "step, 1"
+ gdb_test "print a" " = 0$newline" "function static forward step-to"
+ gdb_test "step" " function static post-change .*" "step, 2"
+ gdb_test "print a" " = 1$newline" "function static step post-change"
+}
# Module static variable, forward
-
-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 "print astatic" ".* = 0$newline" "module static forward-breakpoint"
-gdb_test "reverse-step" ".*hide.*" ""
-gdb_test "step" ".*$newline$breakloc.*" ""
-gdb_test "print astatic" ".* = 0$newline" "module static forward step-to"
-gdb_test "step" ".* module static post-change .*" ""
-gdb_test "print astatic" ".* = 1$newline" "module static step post-change"
+with_test_prefix "module static variable, forward" {
+ 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 "print astatic" " = 0$newline" "module static forward-breakpoint"
+ gdb_test "reverse-step" "hide.*"
+ gdb_test "step" "$newline$breakloc.*" "step, 1"
+ gdb_test "print astatic" " = 0$newline" "module static forward step-to"
+ gdb_test "step" " module static post-change .*" "step, 2"
+ gdb_test "print astatic" " = 1$newline" "module static step post-change"
+}
# Module global variable, forward
-
-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 "print aglobal" ".* = 0$newline" "module global forward-breakpoint"
-gdb_test "reverse-step" ".*hide.*" ""
-gdb_test "step" ".*$newline$breakloc.*" ""
-gdb_test "print aglobal" ".* = 0$newline" "module global forward step-to"
-gdb_test "step" ".* module global post-change .*" ""
-gdb_test "print aglobal" ".* = 1$newline" "module global step post-change"
-
+with_test_prefix "module global variable, forward" {
+ 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 "print aglobal" " = 0$newline" "module global forward-breakpoint"
+ gdb_test "reverse-step" "hide.*"
+ gdb_test "step" "$newline$breakloc.*" "step, 1"
+ gdb_test "print aglobal" " = 0$newline" "module global forward step-to"
+ gdb_test "step" " module global post-change .*" "step, 2"
+ gdb_test "print aglobal" " = 1$newline" "module global step post-change"
+}