aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPalmer Dabbelt <palmer@dabbelt.com>2017-10-17 10:51:38 -0700
committerPalmer Dabbelt <palmer@dabbelt.com>2017-10-18 13:16:42 -0700
commit8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63 (patch)
tree985287af8b390be9317cd9fa7b81a31a0f1f18bc
parentc8ba13ad37c98262b94f99cc4f84ac0066c48cc2 (diff)
downloadgdb-8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63.zip
gdb-8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63.tar.gz
gdb-8dfa5d5a6389b7f0fdd7baaedc5f316f05debf63.tar.bz2
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.
-rw-r--r--gas/ChangeLog11
-rw-r--r--gas/testsuite/gas/all/align.d4
-rw-r--r--gas/testsuite/gas/all/gas.exp1
-rw-r--r--gas/testsuite/gas/all/relax.d4
-rw-r--r--gas/testsuite/gas/all/sleb128-2.d4
-rw-r--r--gas/testsuite/gas/all/sleb128-4.d4
-rw-r--r--gas/testsuite/gas/all/sleb128-5.d4
-rw-r--r--gas/testsuite/gas/all/sleb128-7.d4
-rw-r--r--gas/testsuite/gas/elf/section11.d3
9 files changed, 38 insertions, 1 deletions
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