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] RISC-V: Mark unsupported gas testcases


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

commit 8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63
Author: Palmer Dabbelt <palmer@dabbelt.com>
Date:   Tue Oct 17 10:51:38 2017 -0700

    RISC-V: Mark unsupported gas testcases
    
    There are individual comments that explain why each test isn't
    supported, but the vast majority of them are due to RISC-V's aggressive
    linker relaxation.  The SLEB test cases should eventually be supported,
    but the remaining ones probably won't ever be.
    
    2017-10-18  Palmer Dabbelt  <palmer@dabbelt.com>
    
            * testsuite/gas/all/align.d: Mark as unsupported on RISC-V.
            testsuite/gas/all/relax.d: Likewise.
            testsuite/gas/all/sleb128-2.d: Likewise.
            testsuite/gas/all/sleb128-4.d: Likewise.
            testsuite/gas/all/sleb128-5.d: Likewise.
            testsuite/gas/all/sleb128-7.d: Likewise.
            testsuite/gas/elf/section11.d: Likewise.
            testsuite/gas/all/gas.exp (diff1.s): Likewise.

Diff:
---
 gas/ChangeLog                     | 11 +++++++++++
 gas/testsuite/gas/all/align.d     |  4 +++-
 gas/testsuite/gas/all/gas.exp     |  1 +
 gas/testsuite/gas/all/relax.d     |  4 ++++
 gas/testsuite/gas/all/sleb128-2.d |  4 ++++
 gas/testsuite/gas/all/sleb128-4.d |  4 ++++
 gas/testsuite/gas/all/sleb128-5.d |  4 ++++
 gas/testsuite/gas/all/sleb128-7.d |  4 ++++
 gas/testsuite/gas/elf/section11.d |  3 +++
 9 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index a38ffa3..cb90c99 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,14 @@
+2017-10-18  Palmer Dabbelt  <palmer@dabbelt.com>
+
+	* testsuite/gas/all/align.d: Mark as unsupported on RISC-V.
+	testsuite/gas/all/relax.d: Likewise.
+	testsuite/gas/all/sleb128-2.d: Likewise.
+	testsuite/gas/all/sleb128-4.d: Likewise.
+	testsuite/gas/all/sleb128-5.d: Likewise.
+	testsuite/gas/all/sleb128-7.d: Likewise.
+	testsuite/gas/elf/section11.d: Likewise.
+	testsuite/gas/all/gas.exp (diff1.s): Likewise.
+
 2017-10-18  Nick Clifton  <nickc@redhat.com>
 
 	PR gas/22304
diff --git a/gas/testsuite/gas/all/align.d b/gas/testsuite/gas/all/align.d
index dec2168..eb08d8d 100644
--- a/gas/testsuite/gas/all/align.d
+++ b/gas/testsuite/gas/all/align.d
@@ -2,7 +2,9 @@
 #name: align
 # The RX port will always replace zeros in any aligned area with NOPs,
 # even if the user requested that they filled with zeros.
-#not-target: m32c-* rx-*
+# RISC-V handles alignment via relaxation and therefor won't have object files
+# with the expected alignment.
+#not-target: m32c-* riscv*-* rx-*
 
 # Test the alignment pseudo-op.
 
diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp
index 93e31da..6a68bcc 100644
--- a/gas/testsuite/gas/all/gas.exp
+++ b/gas/testsuite/gas/all/gas.exp
@@ -63,6 +63,7 @@ if {    ![istarget alpha*-*-*vms*]
      && ![istarget microblaze-*-*]
      && ![istarget mn10300-*-*]
      && ![istarget msp430*-*-*]
+     && ![istarget riscv*-*-*]
      && ![istarget rl78-*-*]
      && ![istarget rx-*-*] } then {
     gas_test_error "diff1.s" "" "difference of two undefined symbols"
diff --git a/gas/testsuite/gas/all/relax.d b/gas/testsuite/gas/all/relax.d
index 1e581c2..27937fe 100644
--- a/gas/testsuite/gas/all/relax.d
+++ b/gas/testsuite/gas/all/relax.d
@@ -1,5 +1,9 @@
 #objdump : -s -j .data -j "\$DATA\$"
 #name : relax .uleb128
+# RISC-V doesn't support .sleb operands that are the difference of two symbols
+# because symbol values are not known until after linker relaxation has been
+# performed.
+#not-target : riscv*-*-*
 
 .*: .*
 
diff --git a/gas/testsuite/gas/all/sleb128-2.d b/gas/testsuite/gas/all/sleb128-2.d
index cce0b4c..377aa1f 100644
--- a/gas/testsuite/gas/all/sleb128-2.d
+++ b/gas/testsuite/gas/all/sleb128-2.d
@@ -1,5 +1,9 @@
 #objdump : -s -j .data -j "\$DATA\$"
 #name : .sleb128 tests (2)
+# RISC-V doesn't support .sleb operands that are the difference of two symbols
+# because symbol values are not known until after linker relaxation has been
+# performed.
+#not-target : riscv*-*-*
 
 .*: .*
 
diff --git a/gas/testsuite/gas/all/sleb128-4.d b/gas/testsuite/gas/all/sleb128-4.d
index 89b9565..49eebbb 100644
--- a/gas/testsuite/gas/all/sleb128-4.d
+++ b/gas/testsuite/gas/all/sleb128-4.d
@@ -1,6 +1,10 @@
 #objdump : -s -j .data -j "\$DATA\$"
 #name : .sleb128 tests (4)
 #skip: msp430*-*-*
+# RISC-V doesn't support .sleb operands that are the difference of two symbols
+# because symbol values are not known until after linker relaxation has been
+# performed.
+#not-target: riscv*-*-*
 
 .*: .*
 
diff --git a/gas/testsuite/gas/all/sleb128-5.d b/gas/testsuite/gas/all/sleb128-5.d
index 0accfb5..b8298f5 100644
--- a/gas/testsuite/gas/all/sleb128-5.d
+++ b/gas/testsuite/gas/all/sleb128-5.d
@@ -1,5 +1,9 @@
 #objdump : -s -j .data -j "\$DATA\$"
 #name : .sleb128 tests (5)
+# RISC-V doesn't support .sleb operands that are the difference of two symbols
+# because symbol values are not known until after linker relaxation has been
+# performed.
+#not-target : riscv*-*-*
 
 .*: .*
 
diff --git a/gas/testsuite/gas/all/sleb128-7.d b/gas/testsuite/gas/all/sleb128-7.d
index 6fcbdef..84aa5f1 100644
--- a/gas/testsuite/gas/all/sleb128-7.d
+++ b/gas/testsuite/gas/all/sleb128-7.d
@@ -1,5 +1,9 @@
 #objdump : -s -j .data -j "\$DATA\$"
 #name : .sleb128 tests (7)
+# RISC-V doesn't support .sleb operands that are the difference of two symbols
+# because symbol values are not known until after linker relaxation has been
+# performed.
+#not-target: riscv*-*-*
 
 .*: .*
 
diff --git a/gas/testsuite/gas/elf/section11.d b/gas/testsuite/gas/elf/section11.d
index c1043db..a92ad5a 100644
--- a/gas/testsuite/gas/elf/section11.d
+++ b/gas/testsuite/gas/elf/section11.d
@@ -3,6 +3,9 @@
 #name: Disabling section padding
 # The RX port uses non standard section names.
 #skip: rx-*-*
+# RISC-V handles alignment via linker relaxation, so object files don't have
+# the expected alignment.
+#not-target: riscv*-*-*
 
 #...
   \[ .\] .text[ 	]+PROGBITS[ 	]+0+00 0+[0-9a-f]+ 0+0(1|4|5) 00  AX  0   0 16


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