This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 1/5] fix some gdb.dwarf2 tests for parallel safety
- From: Tom Tromey <tromey at redhat dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tromey at redhat dot com>
- Date: Tue, 13 Aug 2013 15:03:19 -0600
- Subject: [PATCH 1/5] fix some gdb.dwarf2 tests for parallel safety
- References: <1376427803-16608-1-git-send-email-tromey at redhat dot com>
This fixes a few gdb.dwarf2 tests to be more parallel-safe. This
mostly amounts to changing them to write their files into the
directory designated by standard_output_file.
Built and regtested on x86-64 Fedora 18.
* gdb.dwarf2/clztest.exp: Use standard_testfile.
* gdb.dwarf2/dw2-minsym-in-cu.exp: Use standard_testfile.
* gdb.dwarf2/fission-base.S: Remove directory from
DW_AT_GNU_dwo_name.
* gdb.dwarf2/fission-base.exp: Use build_executable. Set
debug-file-directory.
* gdb.dwarf2/fission-reread.S: Remove directory from
DW_AT_GNU_dwo_name.
* gdb.dwarf2/fission-reread.exp: Use build_executable. Set
debug-file-directory.
---
gdb/testsuite/gdb.dwarf2/clztest.exp | 1 +
gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp | 6 ++----
gdb/testsuite/gdb.dwarf2/fission-base.S | 5 +----
gdb/testsuite/gdb.dwarf2/fission-base.exp | 11 ++++++++++-
gdb/testsuite/gdb.dwarf2/fission-reread.S | 7 ++-----
gdb/testsuite/gdb.dwarf2/fission-reread.exp | 11 ++++++++++-
6 files changed, 26 insertions(+), 15 deletions(-)
diff --git a/gdb/testsuite/gdb.dwarf2/clztest.exp b/gdb/testsuite/gdb.dwarf2/clztest.exp
index 127fbdf..0874342 100644
--- a/gdb/testsuite/gdb.dwarf2/clztest.exp
+++ b/gdb/testsuite/gdb.dwarf2/clztest.exp
@@ -15,6 +15,7 @@
load_lib dwarf.exp
+standard_testfile .S
set test "clztest"
# This test can only be run on targets which support DWARF-2 and use gas.
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp b/gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp
index 105123f..9b2a805 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-minsym-in-cu.exp
@@ -21,11 +21,9 @@ if {![dwarf2_support]} {
# This testfile has reproducibility only with cc-with-index.sh.
-set testfile "dw2-minsym-in-cu"
-set srcfile ${testfile}.S
-set executable ${testfile}
+standard_testfile .S
-if [prepare_for_testing ${testfile}.exp ${executable} ${srcfile}] {
+if [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile}] {
return -1
}
diff --git a/gdb/testsuite/gdb.dwarf2/fission-base.S b/gdb/testsuite/gdb.dwarf2/fission-base.S
index 23de5a7..14b2494 100644
--- a/gdb/testsuite/gdb.dwarf2/fission-base.S
+++ b/gdb/testsuite/gdb.dwarf2/fission-base.S
@@ -145,10 +145,7 @@ main:
.ascii "/tmp/src/gdb/testsuite\0" # DW_AT_comp_dir
# Normally dwo_name would be "fission-base.dwo".
# Simplification: Leave the DWO contents in the executable.
- # "gdb.dwarf2/" is included so that gdb can load the file without
- # having to set "debug-file-directory". This is useful when
- # testing with cc-with-tweaks.sh -i.
- .ascii "gdb.dwarf2/fission-base\0" # DW_AT_GNU_dwo_name
+ .ascii "fission-base\0" # DW_AT_GNU_dwo_name
.4byte .Ldebug_pubnames0 # DW_AT_GNU_pubnames
.4byte .Ldebug_pubtypes0 # DW_AT_GNU_pubtypes
.4byte .Ldebug_addr0_begin # DW_AT_GNU_addr_base
diff --git a/gdb/testsuite/gdb.dwarf2/fission-base.exp b/gdb/testsuite/gdb.dwarf2/fission-base.exp
index 88e4ff1..58448f8 100644
--- a/gdb/testsuite/gdb.dwarf2/fission-base.exp
+++ b/gdb/testsuite/gdb.dwarf2/fission-base.exp
@@ -29,10 +29,19 @@ set basename "fission-base"
standard_testfile .S
-if { [prepare_for_testing "$testfile.exp" "$testfile" "$srcfile" {nodebug}] } {
+if { [build_executable "$testfile.exp" "$testfile" "$srcfile" {nodebug}] } {
return -1
}
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+
+gdb_test_no_output "set debug-file-directory [file dirname $binfile]" \
+ "set debug-file-directory"
+
+gdb_load ${binfile}
+
if ![runto_main] {
return -1
}
diff --git a/gdb/testsuite/gdb.dwarf2/fission-reread.S b/gdb/testsuite/gdb.dwarf2/fission-reread.S
index c598824..e566cc6 100644
--- a/gdb/testsuite/gdb.dwarf2/fission-reread.S
+++ b/gdb/testsuite/gdb.dwarf2/fission-reread.S
@@ -135,11 +135,8 @@ main:
.uleb128 0x2 /* (DIE (0) DW_TAG_type_unit) */
.ascii "/tmp/src/gdb/testsuite\0" /* DW_AT_comp_dir */
/* Normally dwo_name would be "fission-reread.dwo".
- Simplification: Leave the DWO contents in the executable.
- "gdb.dwarf2/" is included so that gdb can load the file without
- having to set "debug-file-directory". This is useful when
- testing with cc-with-tweaks.sh -i. */
- .ascii "gdb.dwarf2/fission-reread\0" /* DW_AT_GNU_dwo_name */
+ Simplification: Leave the DWO contents in the executable. */
+ .ascii "fission-reread\0" /* DW_AT_GNU_dwo_name */
.4byte .Ldebug_pubnames0 /* DW_AT_GNU_pubnames */
.4byte .Ldebug_pubtypes0 /* DW_AT_GNU_pubtypes */
.4byte .Ldebug_addr0 /* DW_AT_GNU_addr_base */
diff --git a/gdb/testsuite/gdb.dwarf2/fission-reread.exp b/gdb/testsuite/gdb.dwarf2/fission-reread.exp
index 0f06326..f275308 100644
--- a/gdb/testsuite/gdb.dwarf2/fission-reread.exp
+++ b/gdb/testsuite/gdb.dwarf2/fission-reread.exp
@@ -24,10 +24,19 @@ set basename "fission-reread"
standard_testfile .S
-if { [prepare_for_testing "$testfile.exp" "$testfile" "$srcfile" {nodebug}] } {
+if { [build_executable "$testfile.exp" "$testfile" "$srcfile" {nodebug}] } {
return -1
}
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+
+gdb_test_no_output "set debug-file-directory [file dirname $binfile]" \
+ "set debug-file-directory"
+
+gdb_load ${binfile}
+
gdb_test "break main" "Breakpoint.*at.*"
# If we get this far gdb didn't crash, nor did an error occur.
--
1.8.1.4