1 # Copyright
1998-2022 Free Software Foundation
, Inc.
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.
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.
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
/>.
16 # This file was written by Michael Snyder
(msnyder@cygnus.com
)
18 load_lib
"trace-support.exp"
24 standard_testfile actions.c
25 set executable $testfile
26 if ![gdb_trace_common_supports_arch
] {
27 unsupported
"no trace-common.h support for arch"
30 if { [gdb_compile
"$srcdir/$subdir/$srcfile" $binfile \
31 executable
{debug nowarnings
}] != "" } {
32 untested
"failed to compile"
37 gdb_reinitialize_dir $srcdir
/$subdir
39 if { ![gdb_target_supports_trace
] } then {
40 unsupported
"current target does not support trace"
45 # test
while-stepping dynamically
(live target
)
48 proc test_while_stepping
{ while_stepping
} {
54 with_test_prefix
"$while_stepping" {
55 clean_restart $executable
59 ## verify number of
trace frames collected matches stepcount
61 gdb_delete_tracepoints
62 gdb_test
"trace gdb_c_test" \
63 "Tracepoint $decimal at .*" \
64 "Set tracepoint at gdb_c_test"
66 gdb_trace_setactions
"define $while_stepping <stepcount>" \
68 "collect \$$fpreg" "^$" \
69 "$while_stepping 5" "^$" \
74 gdb_test
"tstart" ".*"
76 gdb_breakpoint
"end" qualified
78 "Continuing.*Breakpoint $decimal, end.*" \
79 "run trace experiment"
83 gdb_tfind_test
"frame 5 should be the last one collected" "5" "5"
85 gdb_test
"tfind 6" "failed to find.*" \
86 "trace stopped after 5 stepping frames"
88 gdb_test
"tfind none" ".*"
92 # Test all
while-stepping aliases.
94 test_while_stepping
"while-stepping"
95 test_while_stepping
"stepping"
96 test_while_stepping
"ws"