From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kevin Buettner To: gdb-patches@sources.redhat.com Subject: [PATCH RFA] gdb.base/finish.exp: Allow finish to stop on call Date: Fri, 18 May 2001 17:38:00 -0000 Message-id: <1010519003833.ZM16512@ocotillo.lan> X-SW-Source: 2001-05/msg00360.html On the IA-64, a "finish" won't stop us at the statement after the call due to the fact that the "call" instruction isn't the last instruction in the call sequence. (The global pointer still needs to be reset.) The patch below tweaks the finish_void test to allow for this eventuality. Okay to commit? * gdb.base/finish.exp (finish_void): Allow "finish" command to stop on the call statement as well as the statement after the call. Index: testsuite/gdb.base/finish.exp =================================================================== RCS file: /cvs/src/src/gdb/testsuite/gdb.base/finish.exp,v retrieving revision 1.3 diff -u -p -r1.3 finish.exp --- finish.exp 2001/03/06 08:21:50 1.3 +++ finish.exp 2001/05/19 00:27:32 @@ -77,8 +77,15 @@ proc finish_void { } { gdb_test "continue" "Breakpoint.* void_func.*" \ "continue to void_func" send_gdb "finish\n" + # Some architectures will have one or more instructions after the + # call instruction which still is part of the call sequence, so we + # must be prepared for a "finish" to show us the void_func call + # again as well as the statement after. gdb_expect { -re ".*void_checkpoint.*$gdb_prompt $" { + pass "finish from void_func" + } + -re ".*call to void_func.*$gdb_prompt $" { pass "finish from void_func" } -re ".*$gdb_prompt $" {