diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-07-02 12:06:56 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-07-02 12:06:56 +0000 |
commit | a16242411fae409bd8b9133ee711e2177d0bcde2 (patch) | |
tree | 5d5aaf52cbfa00826830ff3fc2ec5b538517f3a5 /gdb | |
parent | 2d7b58e8d63907b0dd76f7447f514ef66035a62f (diff) | |
download | gdb-a16242411fae409bd8b9133ee711e2177d0bcde2.zip gdb-a16242411fae409bd8b9133ee711e2177d0bcde2.tar.gz gdb-a16242411fae409bd8b9133ee711e2177d0bcde2.tar.bz2 |
gdb/testsuite/
* gdb.base/stale-infcall.c (infcall): New label test-next.
(main): New labels test-pass and test-fail.
* gdb.base/stale-infcall.exp: Continue to test-next. Put breakpoint
$test_fail_bpnum to test-fail.
(test system longjmp tracking support): New test.
Delete $test_fail_bpnum.
* lib/gdb.exp (gdb_continue_to_breakpoint): Accept also Temporary
breakpoint.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/ChangeLog | 11 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/stale-infcall.c | 7 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/stale-infcall.exp | 18 | ||||
-rw-r--r-- | gdb/testsuite/lib/gdb.exp | 2 |
4 files changed, 35 insertions, 3 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 2f4d131..44673d4 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,14 @@ +2012-07-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdb.base/stale-infcall.c (infcall): New label test-next. + (main): New labels test-pass and test-fail. + * gdb.base/stale-infcall.exp: Continue to test-next. Put breakpoint + $test_fail_bpnum to test-fail. + (test system longjmp tracking support): New test. + Delete $test_fail_bpnum. + * lib/gdb.exp (gdb_continue_to_breakpoint): Accept also Temporary + breakpoint. + 2012-06-30 Doug Evans <dje@google.com> * gdb.dwarf2/fission-reread.S: New file. diff --git a/gdb/testsuite/gdb.base/stale-infcall.c b/gdb/testsuite/gdb.base/stale-infcall.c index 1f5169a..e4f97fa 100644 --- a/gdb/testsuite/gdb.base/stale-infcall.c +++ b/gdb/testsuite/gdb.base/stale-infcall.c @@ -26,7 +26,7 @@ static jmp_buf jmp; void infcall (void) { - longjmp (jmp, 1); + longjmp (jmp, 1); /* test-next */ } static void @@ -54,7 +54,10 @@ run2 (void) int main () { - if (setjmp (jmp) == 0) + if (setjmp (jmp) == 0) /* test-pass */ + infcall (); + + if (setjmp (jmp) == 0) /* test-fail */ run1 (); else run2 (); diff --git a/gdb/testsuite/gdb.base/stale-infcall.exp b/gdb/testsuite/gdb.base/stale-infcall.exp index bb22339..9d73ebdb 100644 --- a/gdb/testsuite/gdb.base/stale-infcall.exp +++ b/gdb/testsuite/gdb.base/stale-infcall.exp @@ -23,6 +23,24 @@ if ![runto_main] { return -1 } +gdb_breakpoint [gdb_get_line_number "test-next"] temporary +gdb_continue_to_breakpoint "test-next" ".* test-next .*" +gdb_breakpoint [gdb_get_line_number "test-fail"] +gdb_test_no_output {set $test_fail_bpnum=$bpnum} + +set test "test system longjmp tracking support" +gdb_test_multiple "next" $test { + -re " test-pass .*\r\n$gdb_prompt $" { + pass $test + } + -re " test-fail .*\r\n$gdb_prompt $" { + xfail $test + untested "System lacks support for tracking longjmps" + return -1 + } +} +gdb_test_no_output {delete $test_fail_bpnum} + gdb_breakpoint [gdb_get_line_number "break-run1"] gdb_breakpoint [gdb_get_line_number "break-run2"] gdb_breakpoint [gdb_get_line_number "break-exit"] diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index 7cb619a..289d4d8 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -469,7 +469,7 @@ proc gdb_continue_to_breakpoint {name {location_pattern .*}} { send_gdb "continue\n" gdb_expect { - -re "Breakpoint .* (at|in) $location_pattern\r\n$gdb_prompt $" { + -re "(?:Breakpoint|Temporary breakpoint) .* (at|in) $location_pattern\r\n$gdb_prompt $" { pass $full_name } -re ".*$gdb_prompt $" { |