gdb/testsuite: use "set sysroot" in gdb.multi/multi-target.exp.tcl
authorSimon Marchi <simon.marchi@efficios.com>
Wed, 10 Feb 2021 23:01:10 +0000 (18:01 -0500)
committerSimon Marchi <simon.marchi@polymtl.ca>
Wed, 10 Feb 2021 23:01:10 +0000 (18:01 -0500)
The multi-target tests involve some inferiors using remote targets.  By
default, GDB uses target: as the sysroot, which makes it read loaded
libraries and their debug info through GDBserver.  This makes the tests
run slower than necessary.

Pass `-ex "set sysroot"` when launching GDB in these tests, so that GDB
always reads from its local file system.

On a system where I don't have debug info for libc, that reduces run
time for

    $ make check TESTS="gdb.multi/multi-target-*.exp"

from 1:15 to 0:45.

On this other system where debug info is installed though, it reduces it
from 13:00 to 1:45.

gdb/testsuite/ChangeLog:

* gdb.multi/multi-target.exp.tcl (setup): Add "set sysroot" to
GDBFLAGS.

Change-Id: I9d24f3def843472d35dfb5667c12d70ae1d7e984

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.multi/multi-target.exp.tcl

index 6d10953d7058970dacbb251ab7253bf9777cae4e..43758c959fe94e240fb53fedecf82d6c1473fc8a 100644 (file)
@@ -1,3 +1,8 @@
+2021-02-10  Simon Marchi  <simon.marchi@efficios.com>
+
+       * gdb.multi/multi-target.exp.tcl (setup): Add "set sysroot" to
+       GDBFLAGS.
+
 2021-02-10  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * gdb.fortran/lbound-ubound.F90: New file.
index 53727bb6ed13ce16ce06680607cf1d1a5159ef0b..6f3051c6b27a03598b79cfc82215c4b7ef60ffea 100644 (file)
@@ -109,7 +109,13 @@ proc setup {non-stop} {
     global binfile
 
     cleanup_gdbservers
-    clean_restart ${binfile}
+
+    save_vars { ::GDBFLAGS } {
+       # Make GDB read files from the local file system, not through the
+       # remote targets.
+       set ::GDBFLAGS "${::GDBFLAGS} -ex \"set sysroot\""
+       clean_restart ${binfile}
+    }
 
     # multi-target depends on target running in non-stop mode.  Force
     # it on for remote targets, until this is the default.