# Copyright 2008-2012 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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# This file is part of the GDB testsuite.  
# This test tests the restoration of various kinds of machine state
# to their original values by reverse execution.  We will execute
# the program forward while it changes various types of data, and
# then execute it backward to see if their values get restored.
#
# The types of machine state (data) that are tested are:
#   register variable
#   auto variable
#   function static variable
#   module static variable
#   module global variable
#
# TODO:
# various, possibly including...
#   .bss variable, .data variable, ...
#   shared library variable
#   heap variable (pointer)...
#   overlay variables...
#   Test forward replay
#

if ![supports_reverse] {
    return
}

standard_testfile .c ms1.c

if { [prepare_for_testing $testfile.exp $testfile \
	  [list $srcfile $srcfile2]] } {
    return -1
}

set newline "\[\r\n\]+"

set beginmain [gdb_get_line_number " begin main " $srcfile]
set endmain   [gdb_get_line_number " end main "   $srcfile]

# Test begins

runto main

if [supports_process_record] {
    # Activate process record/replay
    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.*"

###
###
###

# Now run backward to each of several points where data is changed.
#

# 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"

# 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"

# 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"

# Proceed to beginning of 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]

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"

# 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"

# 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"

# 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"

# 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"

