[binutils-gdb] [gdb/testsuite] Add nopie to gdb.base/eh_return.exp

Tom de Vries vries@sourceware.org
Mon Aug 31 08:42:04 GMT 2020


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e840f2e3e2f5091b392994d47d1f9f31b5d57269

commit e840f2e3e2f5091b392994d47d1f9f31b5d57269
Author: Tom de Vries <tdevries@suse.de>
Date:   Mon Aug 31 10:42:01 2020 +0200

    [gdb/testsuite] Add nopie to gdb.base/eh_return.exp
    
    When running test-case gdb.base/eh_return.exp with target board
    unix/-fPIE/-pie, we run into:
    ...
    (gdb) break *0x88e^M
    Breakpoint 1 at 0x88e: file eh_return.c, line 54.^M
    (gdb) PASS: gdb.base/eh_return.exp: setting breakpoint at *0x88e
    run ^M
    Starting program: eh_return ^M
    Warning:^M
    Cannot insert breakpoint 1.^M
    Cannot access memory at address 0x88e^M
    ^M
    (gdb) FAIL: gdb.base/eh_return.exp: hit breakpoint
    ...
    
    The problem is that gdb does not support setting breakpoints on unrelocated
    addresses.
    
    Fix this by using nopie for the test-case.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2020-08-31  Tom de Vries  <tdevries@suse.de>
    
            * gdb.base/eh_return.exp: Use nopie.

Diff:
---
 gdb/testsuite/ChangeLog              | 4 ++++
 gdb/testsuite/gdb.base/eh_return.exp | 3 ++-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index af4444040b8..24da6ad79ba 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2020-08-31  Tom de Vries  <tdevries@suse.de>
+
+	* gdb.base/eh_return.exp: Use nopie.
+
 2020-08-28  Pedro Alves  <pedro@palves.net>
 
 	* gdb.base/advance-until-multiple-locations.exp
diff --git a/gdb/testsuite/gdb.base/eh_return.exp b/gdb/testsuite/gdb.base/eh_return.exp
index e38398ed37c..78a4af4b0c0 100644
--- a/gdb/testsuite/gdb.base/eh_return.exp
+++ b/gdb/testsuite/gdb.base/eh_return.exp
@@ -18,7 +18,8 @@
 
 standard_testfile
 
-if {[prepare_for_testing "failed to prepare" $testfile $srcfile debug]} {
+if {[prepare_for_testing "failed to prepare" $testfile $srcfile \
+	 {debug nopie}]} {
     return -1
 }


More information about the Gdb-cvs mailing list