This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Add explicit shared check to eh-frame-hdr test.


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

commit 74ccf6db1188b7b05c716f8382d28b276ec578ec
Author: Jim Wilson <jimw@sifive.com>
Date:   Tue Jan 9 10:08:47 2018 -0800

    Add explicit shared check to eh-frame-hdr test.
    
    	ld/
    	* testsuite/ld-elf/eh-frame-hdr.d (#xfail): Delete
    	(#alltargets): Renamed from #target.  Add shared.
    	* testsuite/lib/ld-lib.exp (run_dump_test): Document shared target.
    	Document alltargets option.  Add support for alltargets option.
    	(istarget): Add support for shared target.

Diff:
---
 ld/ChangeLog                       |  8 ++++++++
 ld/testsuite/ld-elf/eh-frame-hdr.d |  4 +---
 ld/testsuite/lib/ld-lib.exp        | 18 +++++++++++++++++-
 3 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/ld/ChangeLog b/ld/ChangeLog
index 19ff34e..0545b6a 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,11 @@
+2018-01-09  Jim Wilson  <jimw@sifive.com>
+
+	* testsuite/ld-elf/eh-frame-hdr.d (#xfail): Delete
+	(#alltargets): Renamed from #target.  Add shared.
+	* testsuite/lib/ld-lib.exp (run_dump_test): Document shared target.
+	Document alltargets option.  Add support for alltargets option.
+	(istarget): Add support for shared target.
+
 2018-01-08  Jim Wilson  <jimw@sifive.com>
 
 	* testsuite/ld-riscv-elf/c-lui.d: Don't use -shared.  Check for _start
diff --git a/ld/testsuite/ld-elf/eh-frame-hdr.d b/ld/testsuite/ld-elf/eh-frame-hdr.d
index 08b12d8..12e79f4 100644
--- a/ld/testsuite/ld-elf/eh-frame-hdr.d
+++ b/ld/testsuite/ld-elf/eh-frame-hdr.d
@@ -1,9 +1,7 @@
 #source: eh-frame-hdr.s
 #ld: -e _start --eh-frame-hdr
 #objdump: -hw
-#target: cfi
-#xfail: avr*-*-* or1k*-*-elf or1k*-*-rtems* pru-*-* visium-*-*
-# These targets support CFI generation but not shared libraries.
+#alltargets: cfi shared
 #...
   [0-9] .eh_frame_hdr +0*[12][048c] .*
 #pass
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index bfbc30d..52baf0b 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -519,7 +519,13 @@ proc ld_link_defsyms {} {
 #   target: TARGET
 #       Only run the test for TARGET.  This may occur more than once; the
 #       target being tested must match at least one.  You may provide target
-#       name "cfi" for any target supporting the CFI statements.
+#       name "cfi" for any target supporting the CFI statements.  You may
+#       provide target name "shared" for any target supporting shared
+#       libraries.
+#
+#   alltargets: TARGET
+#       Only run the test for TARGET.  This may occur more than once; the
+#       target being tested must match all of them.
 #
 #   notarget: TARGET
 #       Do not run the test for TARGET.  This may occur more than once;
@@ -599,6 +605,7 @@ proc run_dump_test { name {extra_options {}} } {
     set opts(ld_after_inputfiles) {}
     set opts(xfail) {}
     set opts(target) {}
+    set opts(alltargets) {}
     set opts(notarget) {}
     set opts(objdump) {}
     set opts(nm) {}
@@ -628,6 +635,7 @@ proc run_dump_test { name {extra_options {}} } {
 	switch -- $opt_name {
 	    xfail {}
 	    target {}
+	    alltargets {}
 	    notarget {}
 	    warning {}
 	    error {}
@@ -726,6 +734,11 @@ proc run_dump_test { name {extra_options {}} } {
 	    return
 	}
     }
+    foreach targ $opts(alltargets) {
+	if ![istarget $targ] {
+	    return
+	}
+    }
     foreach targ $opts(notarget) {
 	if [istarget $targ] {
 	    return
@@ -2152,6 +2165,9 @@ proc istarget { target } {
     if {$target == "cfi"} {
 	return [check_as_cfi]
     }
+    if {$target == "shared"} {
+	return [check_shared_lib_support]
+    }
     return [istarget_ld $target]
 }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]