From: Sandra Loosemore Date: Mon, 3 Aug 2015 18:09:32 +0000 (-0700) Subject: Further robustify gdb.base/bp-permanent.exp. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ee2d2b102071f89a04f93f0434df818f69ef1e50;p=binutils-gdb.git Further robustify gdb.base/bp-permanent.exp. 2015-08-03 Sandra Loosemore gdb/testsuite/ * gdb.base/bp-permanent.exp: Report test as unsupported if the target cannot stop at the permanent breakpoint. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d943900f401..f633c115a54 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-08-03 Sandra Loosemore + + * gdb.base/bp-permanent.exp: Report test as unsupported if + the target cannot stop at the permanent breakpoint. + 2015-08-03 Doug Evans * gdb.perf/single-step.exp (SINGLE_STEP_COUNT): Change to 1000 from diff --git a/gdb/testsuite/gdb.base/bp-permanent.exp b/gdb/testsuite/gdb.base/bp-permanent.exp index cbdbc7577af..2bcf1473904 100644 --- a/gdb/testsuite/gdb.base/bp-permanent.exp +++ b/gdb/testsuite/gdb.base/bp-permanent.exp @@ -123,8 +123,21 @@ proc test {always_inserted sw_watchpoint} { with_test_prefix "basics" { # Run to the permanent breakpoint, just to make sure we've inserted it # correctly. - gdb_test "continue" "Program received signal SIGTRAP.*" \ - "permanent breakpoint causes random signal" + # If the target fails to stop, the remainder of the test will not work + # so just return. This can happen on some simulator targets where + # the running program doesn't see breakpoints that are visible to + # the execution engine, or where writes to the .text section are + # quietly ignored. + set test "permanent breakpoint causes random signal" + gdb_test_multiple "continue" $test { + -re "exited normally.*$gdb_prompt $" { + unsupported "failed to stop at permanent breakpoint" + return + } + -re "Program received signal SIGTRAP.*$gdb_prompt $" { + pass $test + } + } # Now set a breakpoint on top, thus creating a permanent breakpoint. gdb_breakpoint "$line_bp"