[gdb/testsuite] Simplify gdb.base/unwind-on-each-insn.exp.tcl
authorTom de Vries <tdevries@suse.de>
Fri, 27 Jan 2023 21:01:16 +0000 (22:01 +0100)
committerTom de Vries <tdevries@suse.de>
Fri, 27 Jan 2023 21:01:16 +0000 (22:01 +0100)
Recent commit 1d98e564c97 ("[gdb/testsuite] Add
gdb.base/unwind-on-each-insn-{amd64,i386}.exp") broke commit eb015bf86b6
("[gdb/testsuite] Avoid using .eh_frame in gdb.base/unwind-on-each-insn.exp"),
in the sense that gdb.base/unwind-on-each-insn.exp no longer uses
-fno-asynchronous-unwind-tables, due to trying to concatenate two lists using:
...
    lappend srcfile2_flags $nodebug_flags
...
which should instead be:
...
    lappend srcfile2_flags {*}$nodebug_flags
...

Fix this by simplifying gdb.base/unwind-on-each-insn.exp.tcl, completely
leaving the responsibility to set srcfile_flags and srcfile2_flags to each
includer.

Tested on x86_64-linux.

gdb/testsuite/gdb.base/unwind-on-each-insn-amd64.exp
gdb/testsuite/gdb.base/unwind-on-each-insn-i386.exp
gdb/testsuite/gdb.base/unwind-on-each-insn.exp
gdb/testsuite/gdb.base/unwind-on-each-insn.exp.tcl

index b005715aa562c71c6bcdbb45e31460490f9e5a5d..cec4a2de236ba1abbd21730ae37a275ec691a66c 100644 (file)
 
 require is_x86_64_m64_target
 
-set srcfile_flags {}
-set srcfile2_flags {}
-set srcfile_debug 1
-set srcfile2_debug 1
+set srcfile_flags {debug}
+set srcfile2_flags {debug}
 
 if [info exists COMPILE] {
     standard_testfile unwind-on-each-insn.c unwind-on-each-insn-foo.c
index d4d57eb57a9b74e31e449e2d2f786994d322ca90..5e9f60902e74a9e491cc3445c15cd5cf6fb1f6bb 100644 (file)
 
 require is_x86_like_target
 
-set srcfile_flags {}
-set srcfile2_flags {}
-set srcfile_debug 1
-set srcfile2_debug 1
+set srcfile_flags {debug}
+set srcfile2_flags {debug}
 
 if [info exists COMPILE] {
     standard_testfile unwind-on-each-insn.c unwind-on-each-insn-foo.c
index e86565a03f67508692d9cd9068368a853e41555a..2fc6d30b0f3d76272a38b1918f7b0785a1beb6e3 100644 (file)
 
 standard_testfile .c -foo.c
 
-set srcfile_flags {}
-set srcfile2_flags {}
-set srcfile_debug 1
-set srcfile2_debug 0
+set srcfile_flags {debug}
+set srcfile2_flags {nodebug}
+
+# Make sure that we don't use .eh_frame info, by not generating it,
+# using -fno-asynchronous-unwind-tables, if supported.
+if { [gdb_can_simple_compile fno-asynchronous-unwind-tables \
+         { void foo () { } } object -fno-asynchronous-unwind-tables] } {
+    lappend srcfile2_flags additional_flags=-fno-asynchronous-unwind-tables
+}
 
 source $srcdir/$subdir/unwind-on-each-insn.exp.tcl
index 45ed91a3986d34cf4b5efc1a9cc179da57d5f900..1b6840e3102db02a725ebafd182f03b607d1bd41 100644 (file)
 # and that the previous stack-pointer value, and frame base address
 # value, can be calculated correctly.
 
-set debug_flags {debug}
-set nodebug_flags {nodebug}
-
-# Make sure that we don't use .eh_frame info, by not generating it,
-# using -fno-asynchronous-unwind-tables, if supported.
-if { [gdb_can_simple_compile fno-asynchronous-unwind-tables \
-         { void foo () { } } object -fno-asynchronous-unwind-tables] } {
-    lappend nodebug_flags additional_flags=-fno-asynchronous-unwind-tables
-}
-
-if { $srcfile_debug } {
-    lappend srcfile_flags $debug_flags
-} else {
-    lappend srcfile_flags $nodebug_flags
-}
-if { $srcfile2_debug } {
-    lappend srcfile2_flags $debug_flags
-} else {
-    lappend srcfile2_flags $nodebug_flags
-}
-
 if {[prepare_for_testing_full "failed to prepare" \
-        [list ${testfile} $debug_flags \
+        [list ${testfile} {debug} \
              $srcfile $srcfile_flags $srcfile2 $srcfile2_flags]]} {
     return -1
 }