[PATCH 05/12] RISC-V: Redefine "nop" test

Tsukasa OI research_trasio@irq.a4lg.com
Sat Nov 5 12:29:11 GMT 2022


Seemingly, t_insns.[sd] was the first GAS test for RISC-V.  This commit
redefines this test as a template of the new testing utility for
"nop" and "c.nop".

gas/ChangeLog:

	* testsuite/gas/riscv/nop.s: New test.
	* testsuite/gas/riscv/nop.d: New test.
	* testsuite/gas/riscv/nop-noalias.d: New test.
	* testsuite/gas/riscv/nop-noarch.d: New failure test.
	* testsuite/gas/riscv/nop-noarch.l: Likewise.
	* testsuite/gas/riscv/t_insns.d: Removed.
	* testsuite/gas/riscv/t_insns.s: Removed.
---
 gas/testsuite/gas/riscv/nop-noalias.d | 13 +++++++++++++
 gas/testsuite/gas/riscv/nop-noarch.d  |  3 +++
 gas/testsuite/gas/riscv/nop-noarch.l  |  2 ++
 gas/testsuite/gas/riscv/nop.d         | 12 ++++++++++++
 gas/testsuite/gas/riscv/nop.s         |  9 +++++++++
 gas/testsuite/gas/riscv/t_insns.d     | 10 ----------
 gas/testsuite/gas/riscv/t_insns.s     |  2 --
 7 files changed, 39 insertions(+), 12 deletions(-)
 create mode 100644 gas/testsuite/gas/riscv/nop-noalias.d
 create mode 100644 gas/testsuite/gas/riscv/nop-noarch.d
 create mode 100644 gas/testsuite/gas/riscv/nop-noarch.l
 create mode 100644 gas/testsuite/gas/riscv/nop.d
 create mode 100644 gas/testsuite/gas/riscv/nop.s
 delete mode 100644 gas/testsuite/gas/riscv/t_insns.d
 delete mode 100644 gas/testsuite/gas/riscv/t_insns.s

diff --git a/gas/testsuite/gas/riscv/nop-noalias.d b/gas/testsuite/gas/riscv/nop-noalias.d
new file mode 100644
index 00000000000..8dca3c8e01f
--- /dev/null
+++ b/gas/testsuite/gas/riscv/nop-noalias.d
@@ -0,0 +1,13 @@
+#as: -march=rv32i -I$srcdir/$subdir
+#source: nop.s
+#objdump: -d -M no-aliases
+
+.*:[ 	]+file format .*
+
+
+Disassembly of section .text:
+
+0+000 <target>:
+[ 	]+[0-9a-f]+:[ 	]+00000013[ 	]+addi[ 	]+zero,zero,0
+[ 	]+[0-9a-f]+:[ 	]+0001[ 	]+c\.addi[ 	]+zero,0
+[ 	]+[0-9a-f]+:[ 	]+0001[ 	]+c\.addi[ 	]+zero,0
diff --git a/gas/testsuite/gas/riscv/nop-noarch.d b/gas/testsuite/gas/riscv/nop-noarch.d
new file mode 100644
index 00000000000..d3fe5dc763e
--- /dev/null
+++ b/gas/testsuite/gas/riscv/nop-noarch.d
@@ -0,0 +1,3 @@
+#as: -march=rv32i -I$srcdir/$subdir -defsym NOARCH=1
+#source: nop.s
+#error_output: nop-noarch.l
diff --git a/gas/testsuite/gas/riscv/nop-noarch.l b/gas/testsuite/gas/riscv/nop-noarch.l
new file mode 100644
index 00000000000..4e418e1291d
--- /dev/null
+++ b/gas/testsuite/gas/riscv/nop-noarch.l
@@ -0,0 +1,2 @@
+.*: Assembler messages:
+.*: Error: unrecognized opcode `c\.nop', extension `c' required
diff --git a/gas/testsuite/gas/riscv/nop.d b/gas/testsuite/gas/riscv/nop.d
new file mode 100644
index 00000000000..19b5fc13b55
--- /dev/null
+++ b/gas/testsuite/gas/riscv/nop.d
@@ -0,0 +1,12 @@
+#as: -march=rv32i -I$srcdir/$subdir
+#objdump: -d
+
+.*:[ 	]+file format .*
+
+
+Disassembly of section .text:
+
+0+000 <target>:
+[ 	]+[0-9a-f]+:[ 	]+00000013[ 	]+nop
+[ 	]+[0-9a-f]+:[ 	]+0001[ 	]+nop
+[ 	]+[0-9a-f]+:[ 	]+0001[ 	]+nop
diff --git a/gas/testsuite/gas/riscv/nop.s b/gas/testsuite/gas/riscv/nop.s
new file mode 100644
index 00000000000..1a2dd75f3b1
--- /dev/null
+++ b/gas/testsuite/gas/riscv/nop.s
@@ -0,0 +1,9 @@
+.include "testutils.inc"
+
+target:
+	nop
+	# Architecture block: change disabled when NOARCH is defined.
+	SET_ARCH_START	+c
+	nop
+	c.nop
+	SET_ARCH_END
diff --git a/gas/testsuite/gas/riscv/t_insns.d b/gas/testsuite/gas/riscv/t_insns.d
deleted file mode 100644
index 720f0db2930..00000000000
--- a/gas/testsuite/gas/riscv/t_insns.d
+++ /dev/null
@@ -1,10 +0,0 @@
-#as:
-#objdump: -dr
-
-.*:[ 	]+file format .*
-
-
-Disassembly of section .text:
-
-0+000 <target>:
-[ 	]+0:[ 	]+00000013[ 	]+nop
diff --git a/gas/testsuite/gas/riscv/t_insns.s b/gas/testsuite/gas/riscv/t_insns.s
deleted file mode 100644
index 99456883315..00000000000
--- a/gas/testsuite/gas/riscv/t_insns.s
+++ /dev/null
@@ -1,2 +0,0 @@
-target:
-	nop
-- 
2.37.2



More information about the Binutils mailing list