aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.dwarf2/fission-reread.S
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2021-09-01 18:18:05 +0200
committerTom de Vries <tdevries@suse.de>2021-09-01 18:18:05 +0200
commit250e8e0d7fe4afcb125f9c7838fca9ec66ecc407 (patch)
tree44aeebfbbc311abc615d0fc189f8c61c0967edbd /gdb/testsuite/gdb.dwarf2/fission-reread.S
parentea17b3d59fe623b9946ab88b5a93e818bc9cd91c (diff)
downloadgdb-250e8e0d7fe4afcb125f9c7838fca9ec66ecc407.zip
gdb-250e8e0d7fe4afcb125f9c7838fca9ec66ecc407.tar.gz
gdb-250e8e0d7fe4afcb125f9c7838fca9ec66ecc407.tar.bz2
[gdb/testsuite] Fix dwo path in fission-*.S
[ Using $build for /home/vries/gdb_versions/devel/build to make things a bit more readable. ] When using make check// to run test-case gdb.dwarf2/fission-base.exp: ... ( cd $build/gdb; make check//unix RUNTESTFLAGS="fission-base.exp" ) ... we run into: ... (gdb) file \ $build/gdb/testsuite.unix/outputs/gdb.dwarf2/fission-base/fission-base^M Reading symbols from \ $build/gdb/testsuite.unix/outputs/gdb.dwarf2/fission-base/fission-base...^M warning: Could not find DWO CU \ $build/gdb/testsuite.1/outputs/gdb.dwarf2/fission-base/fission-base.dwo \ (0x807060504030201) referenced by CU at offset 0xc7 [in module \ $build/gdb/testsuite.unix/outputs/gdb.dwarf2/fission-base/fission-base]^M ... The problem is that the executable refers to the dwo file using path name $build/gdb/testsuite.1/outputs/gdb.dwarf2/fission-base/fission-base.dwo, while the actual dwo file is at $build/gdb/testsuite.unix/outputs/gdb.dwarf2/fission-base/fission-base.dwo. This is caused by this trick in fission-base.S: ... #define XSTR(s) STR(s) #define STR(s) #s ... .asciz XSTR(DWO) # DW_AT_GNU_dwo_name ... and: ... $ echo | gcc -E -dD - | grep "define unix" ... I used this trick to avoid doing additional_flags=-DDWO=\"$dwo\", since I was concerned that there could be quoting issues. However, I've found other uses of this pattern, f.i. in gdb/testsuite/gdb.base/corefile-buildid.exp: ... additional_flags=-DSHLIB_NAME=\"$dlopen_lib\"] ... So, fix this by: - using additional_flags=-DDWO=\"$dwo\" and - using plain DWO instead of XSTR(DWO) Likewise in other gdb.dwarf2/fission*.exp test-cases. Tested on x86_64-linux, using make check//unix. gdb/testsuite/ChangeLog: 2021-09-01 Tom de Vries <tdevries@suse.de> PR testsuite/28298 * gdb.dwarf2/fission-base.S: Use DWO instead of XSTR(DWO). * gdb.dwarf2/fission-loclists-pie.S: Same. * gdb.dwarf2/fission-loclists.S: Same. * gdb.dwarf2/fission-reread.S: Same. * gdb.dwarf2/fission-base.exp: Use additional_flags=-DDWO=\"$dwo\". * gdb.dwarf2/fission-loclists-pie.exp: Same. * gdb.dwarf2/fission-loclists.exp: Same. * gdb.dwarf2/fission-reread.exp: Same.
Diffstat (limited to 'gdb/testsuite/gdb.dwarf2/fission-reread.S')
-rw-r--r--gdb/testsuite/gdb.dwarf2/fission-reread.S7
1 files changed, 2 insertions, 5 deletions
diff --git a/gdb/testsuite/gdb.dwarf2/fission-reread.S b/gdb/testsuite/gdb.dwarf2/fission-reread.S
index dd1ffcd..fcbcecb 100644
--- a/gdb/testsuite/gdb.dwarf2/fission-reread.S
+++ b/gdb/testsuite/gdb.dwarf2/fission-reread.S
@@ -47,9 +47,6 @@
# define SYMBOL(str) str
#endif
-#define XSTR(s) STR(s)
-#define STR(s) #s
-
.file "fission-reread.cc"
.globl SYMBOL(baz)
@@ -146,7 +143,7 @@ SYMBOL(main):
.4byte 0 /* Offset to Type DIE */
.uleb128 0x2 /* (DIE (0) DW_TAG_type_unit) */
.ascii "/tmp/src/gdb/testsuite\0" /* DW_AT_comp_dir */
- .asciz XSTR(DWO) /* DW_AT_GNU_dwo_name */
+ .asciz DWO /* 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 */
@@ -217,7 +214,7 @@ SYMBOL(main):
.4byte .Letext0-.Ltext0 /* DW_AT_high_pc */
.4byte .Ldebug_line0 /* DW_AT_stmt_list */
.ascii "/tmp/src/gdb/testsuite\0" /* DW_AT_comp_dir */
- .asciz XSTR(DWO) /* DW_AT_GNU_dwo_name */
+ .asciz DWO /* 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 */