1# Copyright (C) 2012-2013 Free Software Foundation, Inc. 2 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 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16standard_testfile 17 18if { [prepare_for_testing ${testfile}.exp ${testfile}] } { 19 return -1 20} 21 22if ![runto callee] { 23 return 0 24} 25 26set test "up" 27gdb_test_multiple $test $test { 28 -re "\r\n(\[0-9\]+)\[ \t\]+callee \\(\\);\r\n$gdb_prompt $" { 29 set notcurrent $expect_out(1,string) 30 pass $test 31 } 32} 33 34set test {info line *$pc} 35gdb_test_multiple $test $test { 36 -re "\r\nLine (\[0-9\]+) of .*\r\n$gdb_prompt $" { 37 set current $expect_out(1,string) 38 pass $test 39 } 40} 41 42if {$notcurrent == $current} { 43 untested "target arch has an instruction after call as part of the caller line" 44 return 0 45} 46 47set test "break" 48gdb_test_multiple $test $test { 49 -re "\r\nBreakpoint \[0-9\]+ at .*, line $current\\.\r\n$gdb_prompt $" { 50 pass $test 51 } 52 -re "\r\nBreakpoint \[0-9\]+ at .*, line $notcurrent\\.\r\n$gdb_prompt $" { 53 fail "$test (caller line)" 54 } 55} 56