OLD | NEW |
1 # Copyright 2008-2012 Free Software Foundation, Inc. | 1 # Copyright 2008-2012 Free Software Foundation, Inc. |
2 | 2 |
3 # This program is free software; you can redistribute it and/or modify | 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 | 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 | 5 # the Free Software Foundation; either version 3 of the License, or |
6 # (at your option) any later version. | 6 # (at your option) any later version. |
7 # | 7 # |
8 # This program is distributed in the hope that it will be useful, | 8 # This program is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
(...skipping 11 matching lines...) Expand all Loading... |
22 set MIFLAGS "-i=mi" | 22 set MIFLAGS "-i=mi" |
23 | 23 |
24 gdb_exit | 24 gdb_exit |
25 if {[mi_gdb_start]} { | 25 if {[mi_gdb_start]} { |
26 continue | 26 continue |
27 } | 27 } |
28 | 28 |
29 # | 29 # |
30 # Start here | 30 # Start here |
31 # | 31 # |
32 set testfile "nsmoribund" | 32 standard_testfile nsmoribund.c |
33 set srcfile "$testfile.c" | |
34 set binfile "$objdir/$subdir/mi-$testfile" | |
35 | 33 |
36 set options [list debug incdir=$objdir] | 34 set options [list debug] |
37 if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
s] != "" } { | 35 if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
s] != "" } { |
38 return -1 | 36 return -1 |
39 } | 37 } |
40 | 38 |
41 mi_gdb_reinitialize_dir $srcdir/$subdir | 39 mi_gdb_reinitialize_dir $srcdir/$subdir |
42 mi_gdb_load $binfile | 40 mi_gdb_load $binfile |
43 | 41 |
44 mi_gdb_test "-gdb-set non-stop 1" ".*" | 42 mi_gdb_test "-gdb-set non-stop 1" ".*" |
45 mi_gdb_test "-gdb-set target-async 1" ".*" | 43 mi_gdb_test "-gdb-set target-async 1" ".*" |
46 mi_detect_async | 44 mi_detect_async |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 # Get rid of the breakpoint while the other threads are stepping over | 109 # Get rid of the breakpoint while the other threads are stepping over |
112 # it, and tell all threads to exit. The program should exit | 110 # it, and tell all threads to exit. The program should exit |
113 # gracefully shortly. Send all commands in a row, since if something | 111 # gracefully shortly. Send all commands in a row, since if something |
114 # goes wrong with moribund locations support or displaced stepping (or | 112 # goes wrong with moribund locations support or displaced stepping (or |
115 # a target bug if it can step over breakpoints itself), a spurious | 113 # a target bug if it can step over breakpoints itself), a spurious |
116 # SIGTRAP/SIGSEGV can come at any time after deleting the breakpoint. | 114 # SIGTRAP/SIGSEGV can come at any time after deleting the breakpoint. |
117 # Note that this causes multiple prompts to appear before the output | 115 # Note that this causes multiple prompts to appear before the output |
118 # we are interested in, so we can't use mi_gdb_test or | 116 # we are interested in, so we can't use mi_gdb_test or |
119 # gdb_test_multiple (or an MI equivalent) | 117 # gdb_test_multiple (or an MI equivalent) |
120 | 118 |
121 send_gdb "102-break-delete\n" | 119 mi_gdb_test "102-break-delete" "102\\^done.*" |
122 send_gdb "print done = 1\n" | 120 mi_gdb_test "print done = 1" { = 1"} |
123 send_gdb "103-exec-continue --all\n" | 121 mi_gdb_test "103-exec-continue --all" "\[^\n\]*\r\n$running_re" |
124 | 122 |
125 gdb_expect { | 123 gdb_expect { |
126 -re "\\*stopped,reason=\"exited-normally\"" { | 124 -re "\\*stopped,reason=\"exited-normally\"" { |
127 pass "resume all, program exited normally" | 125 pass "resume all, program exited normally" |
128 } | 126 } |
129 timeout { | 127 timeout { |
130 fail "resume all, waiting for program exit (timeout)" | 128 fail "resume all, waiting for program exit (timeout)" |
131 } | 129 } |
132 } | 130 } |
133 | 131 |
134 mi_gdb_exit | 132 mi_gdb_exit |
OLD | NEW |