gdb/testsuite/
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.base / step-bt.exp
CommitLineData
0b302171 1# Copyright 2006-2012 Free Software Foundation, Inc.
f4b618d1
JB
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
e22f8b7c 5# the Free Software Foundation; either version 3 of the License, or
f4b618d1 6# (at your option) any later version.
e22f8b7c 7#
f4b618d1
JB
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.
e22f8b7c 12#
f4b618d1 13# You should have received a copy of the GNU General Public License
e22f8b7c 14# along with this program. If not, see <http://www.gnu.org/licenses/>.
f4b618d1 15
f9f7ad22
MS
16# The intent of this testcase is to assure that backtrace works while
17# single-stepping the instructions that prepare to call a function.
f4b618d1 18
f4b618d1
JB
19
20set testfile step-bt
21set srcfile ${testfile}.c
22set binfile ${objdir}/${subdir}/${testfile}
23if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
24 untested "Couldn't compile test program"
25 return -1
26}
27
28# Get things started.
29
30gdb_exit
31gdb_start
32gdb_reinitialize_dir $srcdir/$subdir
33gdb_load ${binfile}
34
35gdb_test "break *hello" \
36 "Breakpoint.*at.* file .*$srcfile, line .*" \
37 "breakpoint at first instruction of hello()"
38
39gdb_run_cmd
40gdb_expect {
41 -re ".*Breakpoint.* hello .* at .*$srcfile:.*$gdb_prompt $" {
42 pass "run to hello()"
43 }
44 -re ".*$gdb_prompt $" {
45 fail "run to hello()"
46 return -1
47 }
48 timeout {
49 fail "run to hello() (timeout)"
50 return -1
51 }
52}
53
54gdb_test "stepi" \
27d3a1a2 55 ".*" \
f4b618d1
JB
56 "step first instruction"
57
58gdb_test "bt" \
089ec8f1 59 "#0 +(0x\[0-9a-z\]+ in )?hello .*#1 +(0x\[0-9a-z\]* in )?main.*" \
f4b618d1
JB
60 "backtrace after first instruction step"
61
62gdb_test "stepi" \
27d3a1a2 63 ".*" \
f4b618d1
JB
64 "step second instruction"
65
66gdb_test "bt" \
089ec8f1 67 "#0 +(0x\[0-9a-z\]+ in )?hello .*#1 +(0x\[0-9a-z\]* in )?main.*" \
f4b618d1
JB
68 "backtrace after second instruction step"
69
This page took 0.841041 seconds and 4 git commands to generate.