diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 249cbc0b095..5866051977d 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2016-04-22 Yao Qi + + * gdb.reverse/step-precsave.exp: Do one step and test program + stops in "callee" and do multiple steps until program goes out + of "callee". + * gdb.reverse/step-reverse.exp: Likewise. + 2016-04-22 Yao Qi * gdb.trace/signal.exp: Also pass if diff --git a/gdb/testsuite/gdb.reverse/step-precsave.exp b/gdb/testsuite/gdb.reverse/step-precsave.exp index a15bc2d27b8..92574b6936e 100644 --- a/gdb/testsuite/gdb.reverse/step-precsave.exp +++ b/gdb/testsuite/gdb.reverse/step-precsave.exp @@ -240,20 +240,25 @@ gdb_test_multiple "stepi" "$test_message" { # step backward into function (thru return) -set test_message "reverse step into fn call" -gdb_test_multiple "step" "$test_message" { - -re "RETURN FROM CALLEE.*$gdb_prompt $" { - send_gdb "step\n" - exp_continue - } - -re "ARRIVED IN CALLEE.*$gdb_prompt $" { - pass "$test_message" - } -} +gdb_test "step" "(RETURN FROM CALLEE|ARRIVED IN CALLEE).*" \ + "reverse step into fn call" # step backward out of called function (thru call) -gdb_test "step" ".*STEP INTO THIS CALL.*" "reverse step out of called fn" +set test_message "reverse step out of called fn" +gdb_test_multiple "step" "$test_message" { + -re "STEP INTO THIS CALL.*.*$gdb_prompt $" { + pass "$test_message" + } + -re "ARRIVED IN CALLEE.*$gdb_prompt $" { + send_gdb "step\n" + exp_continue + } + -re "ENTER CALLEE.*$gdb_prompt $" { + send_gdb "step\n" + exp_continue + } +} # next backward over call diff --git a/gdb/testsuite/gdb.reverse/step-reverse.exp b/gdb/testsuite/gdb.reverse/step-reverse.exp index fbf41e83f91..6f1e8b638bc 100644 --- a/gdb/testsuite/gdb.reverse/step-reverse.exp +++ b/gdb/testsuite/gdb.reverse/step-reverse.exp @@ -213,20 +213,25 @@ gdb_test_multiple "stepi" "$test_message" { # step backward into function (thru return) -set test_message "reverse step into fn call" -gdb_test_multiple "step" "$test_message" { - -re "RETURN FROM CALLEE.*$gdb_prompt $" { - send_gdb "step\n" - exp_continue - } - -re "ARRIVED IN CALLEE.*$gdb_prompt $" { - pass "$test_message" - } -} +gdb_test "step" "(RETURN FROM CALLEE|ARRIVED IN CALLEE).*" \ + "reverse step into fn call" # step backward out of called function (thru call) -gdb_test "step" ".*STEP INTO THIS CALL.*" "reverse step out of called fn" +set test_message "reverse step out of called fn" +gdb_test_multiple "step" "$test_message" { + -re "STEP INTO THIS CALL.*.*$gdb_prompt $" { + pass "$test_message" + } + -re "ARRIVED IN CALLEE.*$gdb_prompt $" { + send_gdb "step\n" + exp_continue + } + -re "ENTER CALLEE.*$gdb_prompt $" { + send_gdb "step\n" + exp_continue + } +} # next backward over call