testsuite: Range stepping and non-stop mode
authorPedro Alves <palves@redhat.com>
Mon, 30 Nov 2015 16:05:23 +0000 (16:05 +0000)
committerPedro Alves <palves@redhat.com>
Mon, 30 Nov 2015 18:42:06 +0000 (18:42 +0000)
The range-stepping tests fail with "maint set target-non-stop on" mode
because exec_cmd_expect_vCont_count doesn't know that in non-stop
mode, vCont's reply is simply "OK".

gdb/testsuite/ChangeLog:
2015-11-30  Pedro Alves  <palves@redhat.com>

* lib/range-stepping-support.exp (exec_cmd_expect_vCont_count):
Handle non-stop mode vCont replies.

gdb/testsuite/ChangeLog
gdb/testsuite/lib/range-stepping-support.exp

index 02a9a07..08b5b6f 100644 (file)
@@ -1,5 +1,10 @@
 2015-11-30  Pedro Alves  <palves@redhat.com>
 
+       * lib/range-stepping-support.exp (exec_cmd_expect_vCont_count):
+       Handle non-stop mode vCont replies.
+
+2015-11-30  Pedro Alves  <palves@redhat.com>
+
        * gdb.base/dprintf-non-stop.exp: Use build_executable instead of
        prepare_for_testing.  Start gdb with "set non-stop on" appended to
        GDBFLAGS.  Lax expected stop output.
index 1b27309..8cfc08b 100644 (file)
@@ -25,12 +25,15 @@ proc exec_cmd_expect_vCont_count { cmd exp_vCont_r } {
     set r_counter 0
     set s_counter 0
     set ret 1
+    # We either get a stop reply in all-stop mode, or an OK in
+    # non-stop mode.
+    set vcont_reply "(T\[\[:xdigit:\]\]\[\[:xdigit:\]\]|OK)"
     gdb_test_multiple $cmd $test {
-       -re "vCont;s\[^\r\n\]*Packet received: T\[\[:xdigit:\]\]\[\[:xdigit:\]\]" {
+       -re "vCont;s\[^\r\n\]*Packet received: $vcont_reply" {
            incr s_counter
            exp_continue
        }
-       -re "vCont;r\[^\r\n\]*Packet received: T\[\[:xdigit:\]\]\[\[:xdigit:\]\]" {
+       -re "vCont;r\[^\r\n\]*Packet received: $vcont_reply" {
            incr r_counter
            exp_continue
        }