[gdb/testsuite] Fix gdb.base/maint.exp with cc-with-gdb-index
authorTom de Vries <tdevries@suse.de>
Sun, 1 Aug 2021 17:53:42 +0000 (19:53 +0200)
committerTom de Vries <tdevries@suse.de>
Sun, 1 Aug 2021 17:53:42 +0000 (19:53 +0200)
With target board cc-with-gdb-index we run into:
...
FAIL: gdb.base/maint.exp: maint print statistics
...

The output that is checked is:
...
Statistics for 'maint':^M
  Number of "minimal" symbols read: 53^M
  Number of "full" symbols read: 40^M
  Number of "types" defined: 60^M
  Number of symbol tables: 7^M
  Number of symbol tables with line tables: 2^M
  Number of symbol tables with blockvectors: 2^M
  Number of read CUs: 2^M
  Number of unread CUs: 5^M
  Total memory used for objfile obstack: 20320^M
  Total memory used for BFD obstack: 4064^M
  Total memory used for string cache: 4064^M
...
and the regexp doesn't match because it expects the "Number of read/unread
CUs" lines in a different place.

Fix this by updating the regexp.

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2021-08-01  Tom de Vries  <tdevries@suse.de>

* gdb.base/maint.exp: Update "maint print statistics" to match
output with target board cc-with-gdb-index.

gdb/testsuite/gdb.base/maint.exp

index 6831d1ba72065ed717adc2e85dd2e4e125e1e430..0a0cc0f813c8056ea560ff1259f37736910f9391 100644 (file)
@@ -191,19 +191,27 @@ if [istarget "*-*-cygwin*"] {
        set timeout [expr $timeout + 500]
 }
 
-send_gdb "maint print statistics\n"
-gdb_expect  {
-    -re "Statistics for\[^\n\r\]*maint\[^\n\r\]*:\r\n  Number of \"minimal\" symbols read: $decimal\r\n  Number of \"full\" symbols read: $decimal\r\n  Number of \"types\" defined: $decimal\r\n(  Number of read CUs: $decimal\r\n  Number of unread CUs: $decimal\r\n)?  Number of symbol tables: $decimal\r\n  Number of symbol tables with line tables: $decimal\r\n  Number of symbol tables with blockvectors: $decimal\r\n(  Number of \"partial\" symbols read: $decimal\r\n)?(  Number of psym tables \\(not yet expanded\\): $decimal\r\n)?  Total memory used for psymbol cache: $decimal\r\n  Total memory used for objfile obstack: $decimal\r\n  Total memory used for BFD obstack: $decimal\r\n  Total memory used for string cache: $decimal\r\n" {
-       gdb_expect {
-           -re "$gdb_prompt $" {
-               pass "maint print statistics"
-           }
-           timeout { fail "(timeout) maint print statistics" }
-       }
-    }
-    -re ".*$gdb_prompt $"     { fail "maint print statistics" }
-    timeout         { fail "(timeout) maint print statistics" }
-}
+set re \
+    [list \
+        "Statistics for\[^\n\r\]*maint\[^\n\r\]*:" \
+        "  Number of \"minimal\" symbols read: $decimal" \
+        "  Number of \"full\" symbols read: $decimal" \
+        "  Number of \"types\" defined: $decimal" \
+        "  Number of symbol tables: $decimal" \
+        "  Number of symbol tables with line tables: $decimal" \
+        "  Number of symbol tables with blockvectors: $decimal" \
+        "(  Number of read CUs: $decimal" \
+        "  Number of unread CUs: $decimal" \
+        ")?(  Number of \"partial\" symbols read: $decimal" \
+        ")?(  Number of psym tables \\(not yet expanded\\): $decimal" \
+        ")?(  Total memory used for psymbol cache: $decimal" \
+        ")?  Total memory used for objfile obstack: $decimal" \
+        "  Total memory used for BFD obstack: $decimal" \
+        "  Total memory used for string cache: $decimal" \
+        ""]
+
+set re [multi_line {*}$re]
+gdb_test_lines "maint print statistics" "" $re
 
 # There aren't any ...
 gdb_test_no_output "maint print dummy-frames"