Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1471)

Side by Side Diff: gdb/testsuite/gdb.trace/strace.exp

Issue 124383005: GDB 7.6.50 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@upstream
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « gdb/testsuite/gdb.trace/strace.c ('k') | gdb/testsuite/gdb.trace/tfile.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2011-2012 Free Software Foundation, Inc. 1 # Copyright 2011-2013 Free Software Foundation, Inc.
2 # This program is free software; you can redistribute it and/or modify 2 # This program is free software; you can redistribute it and/or modify
3 # it under the terms of the GNU General Public License as published by 3 # it under the terms of the GNU General Public License as published by
4 # the Free Software Foundation; either version 3 of the License, or 4 # the Free Software Foundation; either version 3 of the License, or
5 # (at your option) any later version. 5 # (at your option) any later version.
6 # 6 #
7 # This program is distributed in the hope that it will be useful, 7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY; without even the implied warranty of 8 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 # GNU General Public License for more details. 10 # GNU General Public License for more details.
11 # 11 #
12 # You should have received a copy of the GNU General Public License 12 # You should have received a copy of the GNU General Public License
13 # along with this program. If not, see <http://www.gnu.org/licenses/>. 13 # along with this program. If not, see <http://www.gnu.org/licenses/>.
14 14
15 load_lib "trace-support.exp"; 15 load_lib "trace-support.exp"
16 16
17 if {[skip_shlib_tests]} { 17 if {[skip_shlib_tests]} {
18 return 0 18 return 0
19 } 19 }
20 20
21 standard_testfile 21 standard_testfile
22 set executable $testfile 22 set executable $testfile
23 23
24 set libipa [get_in_proc_agent] 24 set libipa [get_in_proc_agent]
25 25
26 set lib_opts debug 26 set lib_opts debug
27 27
28 if [get_compiler_info] { 28 if [get_compiler_info] {
29 return -1 29 return -1
30 } 30 }
31 31
32 set additional_flags [list quiet debug shlib=$libipa shlib_load \ 32 set additional_flags [list quiet debug shlib=$libipa shlib_load \
33 "additional_flags=-lust -lurcu-bp" ] 33 "additional_flags=-lust -lurcu-bp" ]
34 34
35 if { [gdb_compile $srcdir/$subdir/$srcfile $binfile executable $additional_flags ] != ""} { 35 if { [gdb_compile $srcdir/$subdir/$srcfile $binfile executable $additional_flags ] != ""} {
36 untested "UST library or headers are not installed" 36 untested "UST library or headers are not installed"
37 return -1 37 return -1
38 } 38 }
39 39
40 proc strace_info_marker { } { with_test_prefix "info_marker" { 40 # Test that the socket file is removed when GDB quits, detaches or
41 # resumes the inferior until it exits.
42
43 proc strace_remove_socket { action } {
44 with_test_prefix "remove_socket_after_${action}" {
45
41 global executable 46 global executable
42 global gdb_prompt 47 global gdb_prompt
48 global libipa
43 49
44 # Restart with a fresh gdb. 50 # Restart with a fresh gdb.
45 clean_restart $executable 51 clean_restart $executable
52 gdb_load_shlibs $libipa
46 if ![runto_main] { 53 if ![runto_main] {
47 fail "Can't run to main" 54 fail "Can't run to main"
48 return -1 55 return -1
49 } 56 }
50 57
51 # List the markers in program. They should be disabled. 58 # List the markers in program.
52 gdb_test "info static-tracepoint-markers" \ 59 gdb_test "info static-tracepoint-markers" \
53 ".*ust/bar\[\t \]+n\[\t \]+.*ust/bar2\[\t \]+n\[\t \]+.*" 60 ".*ust/bar\[\t \]+n\[\t \]+.*ust/bar2\[\t \]+n\[\t \]+.*"
54 61
55 # List all the thread. It is expected to get three threads without 62 set pid ""
56 # any errors. 63 set test "collect pid"
57 gdb_test_multiple "info threads 3 2 1" "info threads" { 64 gdb_test_multiple "info inferiors" $test {
58 » -re "3\[ \t\]+Thread .*2\[ \t\]+Thread .*1\[ \t\]+Thread .*${gdb_prompt} $" { 65 » -re "process (\[-0-9a-fx\]+) \[^\n\]*\n.*${gdb_prompt} $" {
59 » pass "info threads" 66 » set pid $expect_out(1,string)
60 » } 67 » pass $test
68 » }
69 » -re ".*${gdb_prompt} $" {
70 » fail $test
71 » }
72 }
73
74 set test "socket file exists"
75 set socket_file "/tmp/gdb_ust${pid}"
76 set status [remote_exec target "sh -c { \[ -S $socket_file \] }"]
77
78 if { [lindex $status 0] == 0 } {
79 » pass $test
80 } else {
81 » fail $test
82 }
83
84 send_gdb "${action}\n"
85 gdb_expect {
86 » -re "A debugging session is active.\r\n.*\r\nQuit anyway\\? \\(y or n\\) $" {
87 » send_gdb "y\n"
88 » }
89 » -re "Detaching .*, process .*$" {
90 » }
91 » -re "Continuing.*$" {
92 » }
93 }
94
95 set exists 1
96
97 for {set i 1} {$i <= 5} {incr i} {
98 » set status [remote_exec target "sh -c { \[ -S $socket_file \] }"]
99 » if { [lindex $status 0] != 0 } {
100 » set exists 0
101 » break
102 » }
103 » sleep 1
104 }
105
106 if { ![is_remote target] && ![string equal $action "detach"] } {
107 » setup_kfail gdb/14161 *-*-*
108 }
109
110 set test "socket file removed"
111
112 if { $exists } {
113 » fail $test
114 » # Since $socket_file is a socket file instead of a regular file, we
115 » # can't use 'remote_file target delete $socket_file' here.
116 » remote_exec target "sh -c \"rm -r $socket_file\""
117 } else {
118 » pass $test
119 }
120
121 if { [string equal $action "quit"] && [is_remote host] } {
122 » global gdb_spawn_id
123 » # unset gdb_spawn_id here to avoid sending command 'quit' to GDB
124 » # later in default_gdb_exit.
125 » unset gdb_spawn_id
61 } 126 }
62 }} 127 }}
63 128
64 proc strace_probe_marker { } { with_test_prefix "probe_marker" { 129 proc strace_info_marker { } {
65 global executable 130 with_test_prefix "info_marker" {
66 global expect_out 131 » global executable
67 global gdb_prompt 132 » global gdb_prompt
68 global hex 133 » global libipa
69 134
70 # Restart with a fresh gdb. 135 » # Restart with a fresh gdb.
71 clean_restart $executable 136 » clean_restart $executable
72 if ![runto_main] { 137 » gdb_load_shlibs $libipa
73 » fail "Can't run to main" 138 » if ![runto_main] {
74 » return -1 139 » fail "Can't run to main"
75 } 140 » return -1
76 141 » }
77 gdb_test "strace -m ust/bar" "Static tracepoint \[0-9\]+ at ${hex}: file.*" 142
78 gdb_test "strace -m ust/bar2" "Static tracepoint \[0-9\]+ at ${hex}: file.*" 143 » # List the markers in program. They should be disabled.
79 # Two trace markers should be enabled. 144 » gdb_test "info static-tracepoint-markers" \
80 gdb_test "info static-tracepoint-markers" \ 145 » ".*ust/bar\[\t \]+n\[\t \]+.*ust/bar2\[\t \]+n\[\t \]+.*"
81 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+y\[\t \]+$hex.*" 146
82 147 » # List all the thread. It is expected to get three threads without
83 gdb_test "break end" "Breakpoint \[0-9\]+ at.*" 148 » # any errors.
84 149 » gdb_test_multiple "info threads 3 2 1" "info threads" {
85 gdb_test_no_output "tstart" 150 » -re "3\[ \t\]+Thread .*2\[ \t\]+Thread .*1\[ \t\]+Thread .*${gdb_pro mpt} $" {
86 gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" "continue to end" 151 » » pass "info threads"
87 gdb_test_no_output "tstop" 152 » }
88 153 » }
89 gdb_test "tfind" "Found trace frame 0, tracepoint .*" "tfind frame 0" 154
90 gdb_test "tfind" "Found trace frame 1, tracepoint .*" "tfind frame 1" 155 » # GDB detaches inferior so that the socket file can be removed.
91 gdb_test "tfind" "Target failed to find requested trace frame\\..*" 156 » gdb_test_multiple "detach" "detach" {
92 }} 157 » -re "Detaching .*, process .*${gdb_prompt} $" {
93 158 » » pass "detach"
94 proc strace_trace_on_same_addr { type } { 159 » }
95 with_test_prefix "trace_same_addr $type" { 160 » }
96 global executable 161 }
97 global expect_out 162 }
98 global gdb_prompt 163
99 global hex 164 proc strace_probe_marker { } {
100 165 with_test_prefix "probe_marker" {
101 # Restart with a fresh gdb. 166 » global executable
102 clean_restart $executable 167 » global expect_out
103 if ![runto_main] { 168 » global gdb_prompt
104 » fail "Can't run to main" 169 » global hex
105 » return -1 170 » global libipa
106 } 171
107 172 » # Restart with a fresh gdb.
108 set marker_bar_addr "" 173 » clean_restart $executable
109 set marker_bar2_addr "" 174 » gdb_load_shlibs $libipa
110 175 » if ![runto_main] {
111 # List the markers in program. They should be disabled. 176 » fail "Can't run to main"
112 gdb_test_multiple "info static-tracepoint-markers" "info static-tracepoint-m arkers 1" { 177 » return -1
113 » -re ".*ust/bar\[\t \]+n.*${gdb_prompt} $" { 178 » }
114 » set ignore "" 179
115 180 » gdb_test "strace -m ust/bar" \
116 » regexp "ust/bar\[\t \]+n\[\t \]+($hex) .*ust/bar2\[\t \]+n\[\t \]+($ hex) " \ 181 » "Static tracepoint \[0-9\]+ at ${hex}: file.*"
117 » » "$expect_out(0,string)" ignore marker_bar_addr marker_bar2_addr 182 » gdb_test "strace -m ust/bar2" \
118 183 » "Static tracepoint \[0-9\]+ at ${hex}: file.*"
119 » pass "info static-tracepoint-markers 1" 184 » # Two trace markers should be enabled.
120 » } 185 » gdb_test "info static-tracepoint-markers" \
121 » -re ".*${gdb_prompt} $" { 186 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+y\[\t \]+$hex.*"
122 » fail "info static-tracepoint-markers 1" 187
123 » } 188 » gdb_test "break end" "Breakpoint \[0-9\]+ at.*"
124 }
125
126 gdb_test "strace -m ust/bar" "Static tracepoint \[0-9\]+ at ${hex}: file.*"
127 gdb_test "strace -m ust/bar2" "Static tracepoint \[0-9\]+ at ${hex}: file.*"
128 # Two trace markers should be enabled.
129 gdb_test "info static-tracepoint-markers" \
130 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+y\[\t \]+$hex.*" \
131 » "info static-tracepoint-markers 2"
132
133 # Set breapoints or tracepoints.
134 set test "${type} on marker bar"
135 gdb_test_multiple "${type} *${marker_bar_addr}" $test {
136 » -re "\(Fast trace|Trace|Break\)point \[0-9\]+ at ${hex}: file.*\r\n$gdb_ prompt $" {
137 » pass $test
138 » }
139 » -re ".*\r\n$gdb_prompt $" {
140 » if [string equal $type "ftrace"] {
141 » » # The instruction may be not long enough to set a fast
142 » » # tracepoint. Skip the rest of this test.
143 » » return -1;
144 » } else {
145 » » fail $test
146 » }
147 » }
148 }
149 set test "${type} on marker bar2"
150 gdb_test_multiple "${type} *${marker_bar2_addr}" $test {
151 » -re "\(Fast trace|Trace|Break\)point \[0-9\]+ at ${hex}: file.*" {
152 » pass $test
153 » }
154 » -re ".*\r\n$gdb_prompt $" {
155 » if [string equal $type "ftrace"] {
156 » » # The instruction may be not long enough to set a fast
157 » » # tracepoint. Skip the rest of this test.
158 » » return -1;
159 » } else {
160 » » fail $test
161 » }
162 » }
163 }
164
165 gdb_test "break end" "Breakpoint \[0-9\]+ at.*"
166
167 if [string equal $type "break"] {
168 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
169 » "continue to bar"
170 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
171 » "continue to bar2"
172 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
173 » "continue to end"
174 } else {
175 189
176 gdb_test_no_output "tstart" 190 gdb_test_no_output "tstart"
177 gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \ 191 gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
178 "continue to end" 192 "continue to end"
179 gdb_test_no_output "tstop" 193 gdb_test_no_output "tstop"
180 194
181 » gdb_test "tfind" "Found trace frame 0, tracepoint .*" "tfind frame 0" 195 » gdb_test "tfind" "Found trace frame 0, tracepoint .*" \
182 » gdb_test "tfind" "Found trace frame 1, tracepoint .*" "tfind frame 1" 196 » "tfind frame 0"
183 » gdb_test "tfind" "Found trace frame 2, tracepoint .*" "tfind frame 2" 197 » gdb_test "tfind" "Found trace frame 1, tracepoint .*" \
184 » gdb_test "tfind" "Found trace frame 3, tracepoint .*" "tfind frame 3" 198 » "tfind frame 1"
185 » gdb_test "tfind" "Target failed to find requested trace frame\\..*" 199 » gdb_test "tfind" \
186 } 200 » "Target failed to find requested trace frame\\..*"
187 }} 201 }
188 202 }
189 proc strace_trace_on_diff_addr { } { with_test_prefix "trace_diff_addr" { 203
190 204 proc strace_trace_on_same_addr { type } {
191 global executable 205 with_test_prefix "trace_same_addr $type" {
192 global expect_out 206 » global executable
193 global gdb_prompt 207 » global expect_out
194 global hex 208 » global gdb_prompt
195 209 » global hex
196 # Restart with a fresh gdb. 210 » global libipa
197 clean_restart $executable 211
198 if ![runto_main] { 212 » # Restart with a fresh gdb.
199 » fail "Can't run to main" 213 » clean_restart $executable
200 » return -1 214 » gdb_load_shlibs $libipa
201 } 215 » if ![runto_main] {
202 216 » fail "Can't run to main"
203 set marker_bar_addr "" 217 » return -1
204 set marker_bar2_addr "" 218 » }
205 219
206 # List the markers in program. They should be disabled. 220 » set marker_bar_addr ""
207 gdb_test_multiple "info static-tracepoint-markers" "info static-tracepoint-m arkers 1" { 221 » set marker_bar2_addr ""
208 » -re ".*ust/bar\[\t \]+n.*${gdb_prompt} $" { 222
209 » set ignore "" 223 » # List the markers in program. They should be disabled.
210 224 » gdb_test_multiple "info static-tracepoint-markers" "info static-tracepoi nt-markers 1" {
211 » regexp "ust/bar\[\t \]+n\[\t \]+($hex) .*ust/bar2\[\t \]+n\[\t \]+($ hex) " \ 225 » -re ".*ust/bar\[\t \]+n.*${gdb_prompt} $" {
212 » » "$expect_out(0,string)" ignore marker_bar_addr marker_bar2_addr 226 » » set ignore ""
213 227
214 » pass "info static-tracepoint-markers 1" 228 » » regexp "ust/bar\[\t \]+n\[\t \]+($hex) .*ust/bar2\[\t \]+n\[\t \ ]+($hex) " \
215 » } 229 » » "$expect_out(0,string)" ignore marker_bar_addr marker_bar2_a ddr
216 » -re ".*${gdb_prompt} $" { 230
217 » fail "info static-tracepoint-markers 1" 231 » » pass "info static-tracepoint-markers 1"
218 » } 232 » }
219 } 233 » -re ".*${gdb_prompt} $" {
220 234 » » fail "info static-tracepoint-markers 1"
221 gdb_test "strace -m ust/bar" "Static tracepoint \[0-9\]+ at ${hex}: file.*" 235 » }
222 236 » }
223 gdb_test "info static-tracepoint-markers" \ 237
224 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+n\[\t \]+$hex.*" \ 238 » gdb_test "strace -m ust/bar" "Static tracepoint \[0-9\]+ at ${hex}: file .*"
225 » "info static-tracepoint-markers 2" 239 » gdb_test "strace -m ust/bar2" "Static tracepoint \[0-9\]+ at ${hex}: fil e.*"
226 240 » # Two trace markers should be enabled.
227 241 » gdb_test "info static-tracepoint-markers" \
228 # Set common tracepoint. 242 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+y\[\t \]+$hex.*" \
229 gdb_test "trace *${marker_bar2_addr}" \ 243 » "info static-tracepoint-markers 2"
230 » "Tracepoint \[0-9\]+ at ${hex}: file.*" 244
231 245 » # Set breapoints or tracepoints.
232 gdb_test "break end" "Breakpoint \[0-9\]+ at.*" 246 » set test "${type} on marker bar"
233 247 » gdb_test_multiple "${type} *${marker_bar_addr}" $test {
234 gdb_test_no_output "tstart" 248 » -re "\(Fast trace|Trace|Break\)point \[0-9\]+ at ${hex}: file.*\r\n$ gdb_prompt $" {
235 gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" "continue to end" 249 » » pass $test
236 gdb_test_no_output "tstop" 250 » }
237 251 » -re ".*\r\n$gdb_prompt $" {
238 gdb_test "tfind" "Found trace frame 0, tracepoint .*" "tfind frame 0" 252 » » if [string equal $type "ftrace"] {
239 gdb_test "tfind" "Found trace frame 1, tracepoint .*" "tfind frame 1" 253 » » # The instruction may be not long enough to set a fast
240 gdb_test "tfind" "Target failed to find requested trace frame\\..*" 254 » » # tracepoint. Skip the rest of this test.
241 }} 255 » » return -1
256 » » } else {
257 » » fail $test
258 » » }
259 » }
260 » }
261 » set test "${type} on marker bar2"
262 » gdb_test_multiple "${type} *${marker_bar2_addr}" $test {
263 » -re "\(Fast trace|Trace|Break\)point \[0-9\]+ at ${hex}: file.*" {
264 » » pass $test
265 » }
266 » -re ".*\r\n$gdb_prompt $" {
267 » » if [string equal $type "ftrace"] {
268 » » # The instruction may be not long enough to set a fast
269 » » # tracepoint. Skip the rest of this test.
270 » » return -1
271 » » } else {
272 » » fail $test
273 » » }
274 » }
275 » }
276
277 » gdb_test "break end" "Breakpoint \[0-9\]+ at.*"
278
279 » if [string equal $type "break"] {
280 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
281 » » "continue to bar"
282 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
283 » » "continue to bar2"
284 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
285 » » "continue to end"
286 » } else {
287
288 » gdb_test_no_output "tstart"
289 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
290 » » "continue to end"
291 » gdb_test_no_output "tstop"
292
293 » gdb_test "tfind" "Found trace frame 0, tracepoint .*" \
294 » » "tfind frame 0"
295 » gdb_test "tfind" "Found trace frame 1, tracepoint .*" \
296 » » "tfind frame 1"
297 » gdb_test "tfind" "Found trace frame 2, tracepoint .*" \
298 » » "tfind frame 2"
299 » gdb_test "tfind" "Found trace frame 3, tracepoint .*" \
300 » » "tfind frame 3"
301 » gdb_test "tfind" \
302 » » "Target failed to find requested trace frame\\..*"
303 » }
304 }
305 }
306
307 proc strace_trace_on_diff_addr { } {
308 with_test_prefix "trace_diff_addr" {
309
310 » global executable
311 » global expect_out
312 » global gdb_prompt
313 » global hex
314 » global libipa
315
316 » # Restart with a fresh gdb.
317 » clean_restart $executable
318 » gdb_load_shlibs $libipa
319 » if ![runto_main] {
320 » fail "Can't run to main"
321 » return -1
322 » }
323
324 » set marker_bar_addr ""
325 » set marker_bar2_addr ""
326
327 » # List the markers in program. They should be disabled.
328 » gdb_test_multiple "info static-tracepoint-markers" "info static-tracepoi nt-markers 1" {
329 » -re ".*ust/bar\[\t \]+n.*${gdb_prompt} $" {
330 » » set ignore ""
331
332 » » regexp "ust/bar\[\t \]+n\[\t \]+($hex) .*ust/bar2\[\t \]+n\[\t \ ]+($hex) " \
333 » » "$expect_out(0,string)" ignore marker_bar_addr marker_bar2_a ddr
334
335 » » pass "info static-tracepoint-markers 1"
336 » }
337 » -re ".*${gdb_prompt} $" {
338 » » fail "info static-tracepoint-markers 1"
339 » }
340 » }
341
342 » gdb_test "strace -m ust/bar" "Static tracepoint \[0-9\]+ at ${hex}: file .*"
343
344 » gdb_test "info static-tracepoint-markers" \
345 » "ust/bar\[\t \]+y\[\t \]+$hex .*ust/bar2\[\t \]+n\[\t \]+$hex.*" \
346 » "info static-tracepoint-markers 2"
347
348
349 » # Set common tracepoint.
350 » gdb_test "trace *${marker_bar2_addr}" \
351 » "Tracepoint \[0-9\]+ at ${hex}: file.*"
352
353 » gdb_test "break end" "Breakpoint \[0-9\]+ at.*"
354
355 » gdb_test_no_output "tstart"
356 » gdb_test "continue" "Continuing\\.\[ \r\n\]+Breakpoint.*" \
357 » "continue to end"
358 » gdb_test_no_output "tstop"
359
360 » gdb_test "tfind" "Found trace frame 0, tracepoint .*" \
361 » "tfind frame 0"
362 » gdb_test "tfind" "Found trace frame 1, tracepoint .*" \
363 » "tfind frame 1"
364 » gdb_test "tfind" \
365 » "Target failed to find requested trace frame\\..*"
366 }
367 }
368
369 # Run it on x86/x86_64 linux.
370 if { [istarget "x86_64-*-linux*"] || [istarget "i\[34567\]86-*-linux*"] } {
371 strace_info_marker
372 strace_remove_socket "quit"
373 strace_remove_socket "detach"
374 strace_remove_socket "continue"
375 }
242 376
243 clean_restart $executable 377 clean_restart $executable
244 378 gdb_load_shlibs $libipa
245 if ![runto_main] { 379 if ![runto_main] {
246 fail "Can't run to main to check for trace support" 380 fail "Can't run to main to check for trace support"
247 return -1 381 return -1
248 } 382 }
249
250 # Run it on native x86/x86_64 linux.
251 if { ![is_remote target]
252 && ([istarget "x86_64-*-linux*"] || [istarget "i\[34567\]86-*-linux*"]) } {
253 strace_info_marker
254 return
255 }
256
257 if { ![gdb_target_supports_trace] } then { 383 if { ![gdb_target_supports_trace] } then {
384 # At this point, the socket file has been created. We must make sure it is
385 # removed when we return here. GDB detaches inferior so that the socket
386 # file can be removed. Note that GDB simply kill inferior doesn't remove
387 # the socket file.
388 gdb_test "detach" "Detaching .*, process .*"
258 unsupported "Current target does not support trace" 389 unsupported "Current target does not support trace"
259 return -1; 390 return -1
260 } 391 }
261 392
262 gdb_load_shlibs $libipa
263
264 strace_info_marker
265 strace_probe_marker 393 strace_probe_marker
266 394
267 strace_trace_on_same_addr "trace" 395 strace_trace_on_same_addr "trace"
268 strace_trace_on_same_addr "ftrace" 396 strace_trace_on_same_addr "ftrace"
269 strace_trace_on_same_addr "break" 397 strace_trace_on_same_addr "break"
270 strace_trace_on_diff_addr 398 strace_trace_on_diff_addr
OLDNEW
« no previous file with comments | « gdb/testsuite/gdb.trace/strace.c ('k') | gdb/testsuite/gdb.trace/tfile.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698