[gdb/testsuite] Add nopie to gdb.base/unwind-on-each-insn-amd64-2.exp
authorTom de Vries <tdevries@suse.de>
Thu, 28 Sep 2023 07:47:36 +0000 (09:47 +0200)
committerTom de Vries <tdevries@suse.de>
Thu, 28 Sep 2023 07:47:36 +0000 (09:47 +0200)
When running test-case gdb.base/unwind-on-each-insn-amd64-2.exp with target
board unix/-fPIE/-pie, I run into:
...
gdb compile failed, ld: unwind-on-each-insn-amd64-21.o: relocation \
  R_X86_64_32S against `.text' can not be used when making a PIE object; \
  recompile with -fPIE
ld: failed to set dynamic section sizes: bad value
...

Fix this by hardcoding nopie in the test-case, and for good measure in the
other test-cases that source unwind-on-each-insn.exp.tcl and use a .s file.

Tested on x86_64-linux.

Approved-by: Kevin Buettner <kevinb@redhat.com>
gdb/testsuite/gdb.base/unwind-on-each-insn-amd64-2.exp
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 c8a94ccef4f553eaec17d54abf7a6f6608addfb9..8675ba2fa48dc34ad66a79c7b8a7631aa45e6235 100644 (file)
 
 require is_x86_64_m64_target
 
-set srcfile_flags {debug}
-set srcfile2_flags {nodebug}
+set srcfile_flags {}
+lappend srcfile_flags debug
+lappend srcfile_flags nopie
+
+set srcfile2_flags {}
+lappend srcfile2_flags nodebug
+lappend srcfile_flags nopie
+
+set ldflags $srcfile_flags
 
 if [info exists COMPILE] {
     # Make sure that we use .eh_frame info, by generating it
index cec4a2de236ba1abbd21730ae37a275ec691a66c..e7c22d47cd7181bf19eaedb429b9d6cd1a866513 100644 (file)
 
 require is_x86_64_m64_target
 
-set srcfile_flags {debug}
-set srcfile2_flags {debug}
+set srcfile_flags {}
+lappend srcfile_flags debug
+lappend srcfile_flags nopie
+
+set srcfile2_flags $srcfile_flags
+set ldflags $srcfile_flags
 
 if [info exists COMPILE] {
     standard_testfile unwind-on-each-insn.c unwind-on-each-insn-foo.c
index 5e9f60902e74a9e491cc3445c15cd5cf6fb1f6bb..255ed09f1badc29c961915a862551454550fdd7c 100644 (file)
 
 require is_x86_like_target
 
-set srcfile_flags {debug}
-set srcfile2_flags {debug}
+set srcfile_flags {}
+lappend srcfile_flags debug
+lappend srcfile_flags nopie
+
+set srcfile2_flags $srcfile_flags
+set ldflags $srcfile_flags
 
 if [info exists COMPILE] {
     standard_testfile unwind-on-each-insn.c unwind-on-each-insn-foo.c
index 2fc6d30b0f3d76272a38b1918f7b0785a1beb6e3..b5fc257b69e7614d5bd7bbdb25b855b1de4b850b 100644 (file)
@@ -17,6 +17,7 @@ standard_testfile .c -foo.c
 
 set srcfile_flags {debug}
 set srcfile2_flags {nodebug}
+set ldflags {debug}
 
 # Make sure that we don't use .eh_frame info, by not generating it,
 # using -fno-asynchronous-unwind-tables, if supported.
index 1b6840e3102db02a725ebafd182f03b607d1bd41..82404d191e03a9a6ede177b8c68cb47f0cc0d3ad 100644 (file)
@@ -24,7 +24,7 @@
 # value, can be calculated correctly.
 
 if {[prepare_for_testing_full "failed to prepare" \
-        [list ${testfile} {debug} \
+        [list ${testfile} $ldflags \
              $srcfile $srcfile_flags $srcfile2 $srcfile2_flags]]} {
     return -1
 }