| OLD | NEW |
| 1 # Copyright 2008-2012 Free Software Foundation, Inc. | 1 # Copyright 2008-2012 Free Software Foundation, Inc. |
| 2 | 2 |
| 3 # This program is free software; you can redistribute it and/or modify | 3 # This program is free software; you can redistribute it and/or modify |
| 4 # it under the terms of the GNU General Public License as published by | 4 # it under the terms of the GNU General Public License as published by |
| 5 # the Free Software Foundation; either version 3 of the License, or | 5 # the Free Software Foundation; either version 3 of the License, or |
| 6 # (at your option) any later version. | 6 # (at your option) any later version. |
| 7 # | 7 # |
| 8 # This program is distributed in the hope that it will be useful, | 8 # This program is distributed in the hope that it will be useful, |
| 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| (...skipping 22 matching lines...) Expand all Loading... |
| 33 # heap variable (pointer)... | 33 # heap variable (pointer)... |
| 34 # overlay variables... | 34 # overlay variables... |
| 35 # Test forward replay | 35 # Test forward replay |
| 36 # | 36 # |
| 37 | 37 |
| 38 # This test suitable only for process record-replay | 38 # This test suitable only for process record-replay |
| 39 if ![supports_process_record] { | 39 if ![supports_process_record] { |
| 40 return | 40 return |
| 41 } | 41 } |
| 42 | 42 |
| 43 set testfile "machinestate" | 43 standard_testfile machinestate.c ms1.c |
| 44 set srcfile ${testfile}.c | 44 set precsave [standard_output_file machinestate.precsave] |
| 45 set srcfile1 ms1.c | |
| 46 | 45 |
| 47 if { [prepare_for_testing $testfile.exp $testfile {machinestate.c ms1.c} ] } { | 46 if { [prepare_for_testing $testfile.exp $testfile \ |
| 47 » [list $srcfile $srcfile2]] } { |
| 48 return -1 | 48 return -1 |
| 49 } | 49 } |
| 50 | 50 |
| 51 set newline "\[\r\n\]+" | 51 set newline "\[\r\n\]+" |
| 52 | 52 |
| 53 set beginmain [gdb_get_line_number " begin main " $srcfile] | 53 set beginmain [gdb_get_line_number " begin main " $srcfile] |
| 54 set endmain [gdb_get_line_number " end main " $srcfile] | 54 set endmain [gdb_get_line_number " end main " $srcfile] |
| 55 | 55 |
| 56 # Test begins | 56 # Test begins |
| 57 | 57 |
| 58 runto main | 58 runto main |
| 59 | 59 |
| 60 if [supports_process_record] { | 60 if [supports_process_record] { |
| 61 # Activate process record/replay | 61 # Activate process record/replay |
| 62 gdb_test_no_output "record" "Turn on process record" | 62 gdb_test_no_output "record" "Turn on process record" |
| 63 } | 63 } |
| 64 | 64 |
| 65 gdb_test "break $endmain" \ | 65 gdb_test "break $endmain" \ |
| 66 "Breakpoint $decimal at .*/$srcfile, line $endmain\." \ | 66 "Breakpoint $decimal at .*/$srcfile, line $endmain\." \ |
| 67 "BP at end of main" | 67 "BP at end of main" |
| 68 | 68 |
| 69 gdb_test "continue" "Breakpoint .* end main .*" "run to end of main" | 69 gdb_test "continue" "Breakpoint .* end main .*" "run to end of main" |
| 70 | 70 |
| 71 gdb_test "record save machinestate.precsave" \ | 71 gdb_test "record save $precsave" \ |
| 72 "Saved core file machinestate.precsave with execution log\." \ | 72 "Saved core file $precsave with execution log\." \ |
| 73 "save process recfile" | 73 "save process recfile" |
| 74 | 74 |
| 75 gdb_test "kill" "" "Kill process, prepare to debug log file" \ | 75 gdb_test "kill" "" "Kill process, prepare to debug log file" \ |
| 76 "Kill the program being debugged\\? \\(y or n\\) " "y" | 76 "Kill the program being debugged\\? \\(y or n\\) " "y" |
| 77 | 77 |
| 78 gdb_test "record restore machinestate.precsave" \ | 78 gdb_test "record restore $precsave" \ |
| 79 "Program terminated with signal .*" \ | 79 "Program terminated with signal .*" \ |
| 80 "reload prec save file" | 80 "reload prec save file" |
| 81 | 81 |
| 82 # Proceed to end of main | 82 # Proceed to end of main |
| 83 | 83 |
| 84 gdb_test "break $endmain" \ | 84 gdb_test "break $endmain" \ |
| 85 "Breakpoint.* file .*/$srcfile, line $endmain.*" "" | 85 "Breakpoint.* file .*/$srcfile, line $endmain.*" "" |
| 86 | 86 |
| 87 gdb_test_multiple "continue" "go to end of main forward" { | 87 gdb_test_multiple "continue" "go to end of main forward" { |
| 88 -re ".*Breakpoint $decimal,.*/$srcfile:$endmain.*$gdb_prompt $" { | 88 -re ".*Breakpoint $decimal,.*/$srcfile:$endmain.*$gdb_prompt $" { |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" "" | 246 gdb_test "tbreak $breakloc" ".*/$srcfile, line $breakloc.*" "" |
| 247 gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc" | 247 gdb_test "continue" ".*/$srcfile:$breakloc.*" "forward to $breakloc" |
| 248 | 248 |
| 249 gdb_test "print aglobal" ".* = 0$newline" "module global forward-breakpoint" | 249 gdb_test "print aglobal" ".* = 0$newline" "module global forward-breakpoint" |
| 250 gdb_test "reverse-step" ".*hide.*" "" | 250 gdb_test "reverse-step" ".*hide.*" "" |
| 251 gdb_test "step" ".*$newline$breakloc.*" "" | 251 gdb_test "step" ".*$newline$breakloc.*" "" |
| 252 gdb_test "print aglobal" ".* = 0$newline" "module global forward step-to" | 252 gdb_test "print aglobal" ".* = 0$newline" "module global forward step-to" |
| 253 gdb_test "step" ".* module global post-change .*" "" | 253 gdb_test "step" ".* module global post-change .*" "" |
| 254 gdb_test "print aglobal" ".* = 1$newline" "module global step post-change" | 254 gdb_test "print aglobal" ".* = 1$newline" "module global step post-change" |
| 255 | 255 |
| OLD | NEW |