public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Tsukasa OI <research_trasio@irq.a4lg.com>
To: Tsukasa OI <research_trasio@irq.a4lg.com>,
	Nelson Chu <nelson.chu@sifive.com>,
	Vineet Gupta <vineetg@rivosinc.com>
Cc: binutils@sourceware.org
Subject: [PATCH v2 2/3] RISC-V: Unify "access all CSRs" testcases
Date: Fri, 24 Dec 2021 12:22:55 +0900	[thread overview]
Message-ID: <e0a3e0c11bcaa02cee6569dad57e7d1b153bfc95.1640316166.git.research_trasio@irq.a4lg.com> (raw)
In-Reply-To: <cover.1640316166.git.research_trasio@irq.a4lg.com>

This commit unifies two "access all CSRs" sources using
.include directive.

gas/ChangeLog:

	* testsuite/gas/riscv/priv-reg.s: Move main contents to
	priv-reg-all-access.s.
	* testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Move main
	contents to priv-reg-all-access.s.
	* testsuite/gas/riscv/priv-reg-access-all.s: New: common part
	of "access all CSRs" testcases.
	* testsuite/gas/riscv/priv-reg-fail-fext.d: Add necessary
	assembler option.
	* testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
	* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
	* testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
	* testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
	* testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
	* testsuite/gas/riscv/priv-reg-fail-zkr.d: Likewise.
	* testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
	* testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
	* testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
---
 gas/testsuite/gas/riscv/priv-reg-access-all.s | 292 +++++++++++++++++
 gas/testsuite/gas/riscv/priv-reg-fail-fext.d  |   2 +-
 .../gas/riscv/priv-reg-fail-read-only-01.d    |   2 +-
 .../gas/riscv/priv-reg-fail-read-only-01.s    | 267 +---------------
 .../gas/riscv/priv-reg-fail-rv32-only.d       |   2 +-
 .../gas/riscv/priv-reg-fail-version-1p10.d    |   2 +-
 .../gas/riscv/priv-reg-fail-version-1p11.d    |   2 +-
 .../gas/riscv/priv-reg-fail-version-1p9p1.d   |   2 +-
 gas/testsuite/gas/riscv/priv-reg-fail-zkr.d   |   2 +-
 .../gas/riscv/priv-reg-version-1p10.d         |   2 +-
 .../gas/riscv/priv-reg-version-1p11.d         |   2 +-
 .../gas/riscv/priv-reg-version-1p9p1.d        |   2 +-
 gas/testsuite/gas/riscv/priv-reg.s            | 294 +-----------------
 13 files changed, 304 insertions(+), 569 deletions(-)
 create mode 100644 gas/testsuite/gas/riscv/priv-reg-access-all.s

diff --git a/gas/testsuite/gas/riscv/priv-reg-access-all.s b/gas/testsuite/gas/riscv/priv-reg-access-all.s
new file mode 100644
index 00000000000..2479b29a976
--- /dev/null
+++ b/gas/testsuite/gas/riscv/priv-reg-access-all.s
@@ -0,0 +1,292 @@
+	# Supported the current priv spec 1.11.
+	csr ustatus
+	csr uie
+	csr utvec
+
+	csr uscratch
+	csr uepc
+	csr ucause
+	csr utval		# Added in 1.10
+	csr uip
+
+	csr cycle
+	csr time
+	csr instret
+	csr hpmcounter3
+	csr hpmcounter4
+	csr hpmcounter5
+	csr hpmcounter6
+	csr hpmcounter7
+	csr hpmcounter8
+	csr hpmcounter9
+	csr hpmcounter10
+	csr hpmcounter11
+	csr hpmcounter12
+	csr hpmcounter13
+	csr hpmcounter14
+	csr hpmcounter15
+	csr hpmcounter16
+	csr hpmcounter17
+	csr hpmcounter18
+	csr hpmcounter19
+	csr hpmcounter20
+	csr hpmcounter21
+	csr hpmcounter22
+	csr hpmcounter23
+	csr hpmcounter24
+	csr hpmcounter25
+	csr hpmcounter26
+	csr hpmcounter27
+	csr hpmcounter28
+	csr hpmcounter29
+	csr hpmcounter30
+	csr hpmcounter31
+	csr cycleh
+	csr timeh
+	csr instreth
+	csr hpmcounter3h
+	csr hpmcounter4h
+	csr hpmcounter5h
+	csr hpmcounter6h
+	csr hpmcounter7h
+	csr hpmcounter8h
+	csr hpmcounter9h
+	csr hpmcounter10h
+	csr hpmcounter11h
+	csr hpmcounter12h
+	csr hpmcounter13h
+	csr hpmcounter14h
+	csr hpmcounter15h
+	csr hpmcounter16h
+	csr hpmcounter17h
+	csr hpmcounter18h
+	csr hpmcounter19h
+	csr hpmcounter20h
+	csr hpmcounter21h
+	csr hpmcounter22h
+	csr hpmcounter23h
+	csr hpmcounter24h
+	csr hpmcounter25h
+	csr hpmcounter26h
+	csr hpmcounter27h
+	csr hpmcounter28h
+	csr hpmcounter29h
+	csr hpmcounter30h
+	csr hpmcounter31h
+
+	csr sstatus
+	csr sedeleg
+	csr sideleg
+	csr sie
+	csr stvec
+	csr scounteren		# Added in 1.10
+
+	csr sscratch
+	csr sepc
+	csr scause
+	csr stval		# Added in 1.10
+	csr sip
+
+	csr satp		# Added in 1.10
+
+	csr mvendorid
+	csr marchid
+	csr mimpid
+	csr mhartid
+
+	csr mstatus
+	csr misa		# 0xf10 in 1.9, but changed to 0x301 since 1.9.1.
+	csr medeleg
+	csr mideleg
+	csr mie
+	csr mtvec
+	csr mcounteren		# Added in 1.10
+
+	csr mscratch
+	csr mepc
+	csr mcause
+	csr mtval		# Added in 1.10
+	csr mip
+
+	csr pmpcfg0		# Added in 1.10
+	csr pmpcfg1		# Added in 1.10
+	csr pmpcfg2		# Added in 1.10
+	csr pmpcfg3		# Added in 1.10
+	csr pmpaddr0		# Added in 1.10
+	csr pmpaddr1		# Added in 1.10
+	csr pmpaddr2		# Added in 1.10
+	csr pmpaddr3		# Added in 1.10
+	csr pmpaddr4		# Added in 1.10
+	csr pmpaddr5		# Added in 1.10
+	csr pmpaddr6		# Added in 1.10
+	csr pmpaddr7		# Added in 1.10
+	csr pmpaddr8		# Added in 1.10
+	csr pmpaddr9		# Added in 1.10
+	csr pmpaddr10		# Added in 1.10
+	csr pmpaddr11		# Added in 1.10
+	csr pmpaddr12		# Added in 1.10
+	csr pmpaddr13		# Added in 1.10
+	csr pmpaddr14		# Added in 1.10
+	csr pmpaddr15		# Added in 1.10
+
+	csr mcycle
+	csr minstret
+	csr mhpmcounter3
+	csr mhpmcounter4
+	csr mhpmcounter5
+	csr mhpmcounter6
+	csr mhpmcounter7
+	csr mhpmcounter8
+	csr mhpmcounter9
+	csr mhpmcounter10
+	csr mhpmcounter11
+	csr mhpmcounter12
+	csr mhpmcounter13
+	csr mhpmcounter14
+	csr mhpmcounter15
+	csr mhpmcounter16
+	csr mhpmcounter17
+	csr mhpmcounter18
+	csr mhpmcounter19
+	csr mhpmcounter20
+	csr mhpmcounter21
+	csr mhpmcounter22
+	csr mhpmcounter23
+	csr mhpmcounter24
+	csr mhpmcounter25
+	csr mhpmcounter26
+	csr mhpmcounter27
+	csr mhpmcounter28
+	csr mhpmcounter29
+	csr mhpmcounter30
+	csr mhpmcounter31
+	csr mcycleh
+	csr minstreth
+	csr mhpmcounter3h
+	csr mhpmcounter4h
+	csr mhpmcounter5h
+	csr mhpmcounter6h
+	csr mhpmcounter7h
+	csr mhpmcounter8h
+	csr mhpmcounter9h
+	csr mhpmcounter10h
+	csr mhpmcounter11h
+	csr mhpmcounter12h
+	csr mhpmcounter13h
+	csr mhpmcounter14h
+	csr mhpmcounter15h
+	csr mhpmcounter16h
+	csr mhpmcounter17h
+	csr mhpmcounter18h
+	csr mhpmcounter19h
+	csr mhpmcounter20h
+	csr mhpmcounter21h
+	csr mhpmcounter22h
+	csr mhpmcounter23h
+	csr mhpmcounter24h
+	csr mhpmcounter25h
+	csr mhpmcounter26h
+	csr mhpmcounter27h
+	csr mhpmcounter28h
+	csr mhpmcounter29h
+	csr mhpmcounter30h
+	csr mhpmcounter31h
+
+	csr mcountinhibit	# Added in 1.11
+	csr mhpmevent3
+	csr mhpmevent4
+	csr mhpmevent5
+	csr mhpmevent6
+	csr mhpmevent7
+	csr mhpmevent8
+	csr mhpmevent9
+	csr mhpmevent10
+	csr mhpmevent11
+	csr mhpmevent12
+	csr mhpmevent13
+	csr mhpmevent14
+	csr mhpmevent15
+	csr mhpmevent16
+	csr mhpmevent17
+	csr mhpmevent18
+	csr mhpmevent19
+	csr mhpmevent20
+	csr mhpmevent21
+	csr mhpmevent22
+	csr mhpmevent23
+	csr mhpmevent24
+	csr mhpmevent25
+	csr mhpmevent26
+	csr mhpmevent27
+	csr mhpmevent28
+	csr mhpmevent29
+	csr mhpmevent30
+	csr mhpmevent31
+
+	# Supported in previous priv spec, but dropped now.
+	csr ubadaddr		# 0x043 in 1.9.1, but the value is utval since 1.10
+	csr sbadaddr		# 0x143 in 1.9.1, but the value is stval since 1.10
+	csr sptbr		# 0x180 in 1.9.1, but the value is satp since 1.10
+	csr mbadaddr		# 0x343 in 1.9.1, but the value is mtval since 1.10
+	csr mucounteren		# 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11
+
+	csr hstatus		# 0x200, dropped in 1.10
+	csr hedeleg		# 0x202, dropped in 1.10
+	csr hideleg		# 0x203, dropped in 1.10
+	csr hie			# 0x204, dropped in 1.10
+	csr htvec		# 0x205, dropped in 1.10
+	csr hscratch		# 0x240, dropped in 1.10
+	csr hepc		# 0x241, dropped in 1.10
+	csr hcause		# 0x242, dropped in 1.10
+	csr hbadaddr		# 0x243, dropped in 1.10
+	csr hip			# 0x244, dropped in 1.10
+	csr mbase		# 0x380, dropped in 1.10
+	csr mbound		# 0x381, dropped in 1.10
+	csr mibase		# 0x382, dropped in 1.10
+	csr mibound		# 0x383, dropped in 1.10
+	csr mdbase		# 0x384, dropped in 1.10
+	csr mdbound		# 0x385, dropped in 1.10
+	csr mscounteren		# 0x321, dropped in 1.10
+	csr mhcounteren		# 0x322, dropped in 1.10
+
+	# Unprivileged CSR which are not controlled by privilege spec.
+
+	# Float
+	csr fflags
+	csr frm
+	csr fcsr
+
+	# Core debug
+	csr dcsr
+	csr dpc
+	csr dscratch0
+	csr dscratch1
+	csr dscratch		# 0x7b2, alias to dscratch0
+
+	# Trigger debug
+	csr tselect
+	csr tdata1
+	csr tdata2
+	csr tdata3
+	csr tinfo
+	csr tcontrol
+	csr mcontext
+	csr scontext
+	csr mcontrol		# 0x7a1, alias to tdata1
+	csr icount		# 0x7a1, alias to tdata1
+	csr itrigger		# 0x7a1, alias to tdata1
+	csr etrigger		# 0x7a1, alias to tdata1
+	csr textra32		# 0x7a3, alias to tdata3
+	csr textra64		# 0x7a3, alias to tdata3
+
+	# Scalar crypto
+	csr seed		# 0x015, Entropy Source
+
+	# Vector
+	csr vstart
+	csr vxsat
+	csr vxrm
+	csr vcsr
+	csr vl
+	csr vtype
+	csr vlenb
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-fext.d b/gas/testsuite/gas/riscv/priv-reg-fail-fext.d
index da535663693..cce806e8705 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-fext.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-fext.d
@@ -1,3 +1,3 @@
-#as: -march=rv32i -mcsr-check
+#as: -I$srcdir/$subdir -march=rv32i -mcsr-check
 #source: priv-reg.s
 #warning_output: priv-reg-fail-fext.l
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d
index ae190c053c6..1134c4c7955 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d
@@ -1,3 +1,3 @@
-#as: -march=rv32if -mcsr-check
+#as: -I$srcdir/$subdir -march=rv32if -mcsr-check
 #source: priv-reg-fail-read-only-01.s
 #warning_output: priv-reg-fail-read-only-01.l
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s
index af0fc4e14a4..fc996f6159f 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s
@@ -1,269 +1,4 @@
 	.macro csr val
 	csrw \val, a1
 	.endm
-
-       # Supported the current priv spec 1.11.
-	csr ustatus
-	csr uie
-	csr utvec
-
-	csr uscratch
-	csr uepc
-	csr ucause
-	csr utval               # Added in 1.10
-	csr uip
-
-	csr fflags
-	csr frm
-	csr fcsr
-
-	csr cycle
-	csr time
-	csr instret
-	csr hpmcounter3
-	csr hpmcounter4
-	csr hpmcounter5
-	csr hpmcounter6
-	csr hpmcounter7
-	csr hpmcounter8
-	csr hpmcounter9
-	csr hpmcounter10
-	csr hpmcounter11
-	csr hpmcounter12
-	csr hpmcounter13
-	csr hpmcounter14
-	csr hpmcounter15
-	csr hpmcounter16
-	csr hpmcounter17
-	csr hpmcounter18
-	csr hpmcounter19
-	csr hpmcounter20
-	csr hpmcounter21
-	csr hpmcounter22
-	csr hpmcounter23
-	csr hpmcounter24
-	csr hpmcounter25
-	csr hpmcounter26
-	csr hpmcounter27
-	csr hpmcounter28
-	csr hpmcounter29
-	csr hpmcounter30
-	csr hpmcounter31
-	csr cycleh
-	csr timeh
-	csr instreth
-	csr hpmcounter3h
-	csr hpmcounter4h
-	csr hpmcounter5h
-	csr hpmcounter6h
-	csr hpmcounter7h
-	csr hpmcounter8h
-	csr hpmcounter9h
-	csr hpmcounter10h
-	csr hpmcounter11h
-	csr hpmcounter12h
-	csr hpmcounter13h
-	csr hpmcounter14h
-	csr hpmcounter15h
-	csr hpmcounter16h
-	csr hpmcounter17h
-	csr hpmcounter18h
-	csr hpmcounter19h
-	csr hpmcounter20h
-	csr hpmcounter21h
-	csr hpmcounter22h
-	csr hpmcounter23h
-	csr hpmcounter24h
-	csr hpmcounter25h
-	csr hpmcounter26h
-	csr hpmcounter27h
-	csr hpmcounter28h
-	csr hpmcounter29h
-	csr hpmcounter30h
-	csr hpmcounter31h
-
-	csr sstatus
-	csr sedeleg
-	csr sideleg
-	csr sie
-	csr stvec
-	csr scounteren          # Added in 1.10
-
-	csr sscratch
-	csr sepc
-	csr scause
-	csr stval               # Added in 1.10
-	csr sip
-
-	csr satp                # Added in 1.10
-
-	csr mvendorid
-	csr marchid
-	csr mimpid
-	csr mhartid
-
-	csr mstatus
-	csr misa                # 0xf10 in 1.9, but changed to 0x301 since 1.9.1.
-	csr medeleg
-	csr mideleg
-	csr mie
-	csr mtvec
-	csr mcounteren          # Added in 1.10
-
-	csr mscratch
-	csr mepc
-	csr mcause
-	csr mtval               # Added in 1.10
-	csr mip
-
-	csr pmpcfg0             # Added in 1.10
-	csr pmpcfg1             # Added in 1.10
-	csr pmpcfg2             # Added in 1.10
-	csr pmpcfg3             # Added in 1.10
-	csr pmpaddr0            # Added in 1.10
-	csr pmpaddr1            # Added in 1.10
-	csr pmpaddr2            # Added in 1.10
-	csr pmpaddr3            # Added in 1.10
-	csr pmpaddr4            # Added in 1.10
-	csr pmpaddr5            # Added in 1.10
-	csr pmpaddr6            # Added in 1.10
-	csr pmpaddr7            # Added in 1.10
-	csr pmpaddr8            # Added in 1.10
-	csr pmpaddr9            # Added in 1.10
-	csr pmpaddr10           # Added in 1.10
-	csr pmpaddr11           # Added in 1.10
-	csr pmpaddr12           # Added in 1.10
-	csr pmpaddr13           # Added in 1.10
-	csr pmpaddr14           # Added in 1.10
-	csr pmpaddr15           # Added in 1.10
-
-	csr mcycle
-	csr minstret
-	csr mhpmcounter3
-	csr mhpmcounter4
-	csr mhpmcounter5
-	csr mhpmcounter6
-	csr mhpmcounter7
-	csr mhpmcounter8
-	csr mhpmcounter9
-	csr mhpmcounter10
-	csr mhpmcounter11
-	csr mhpmcounter12
-	csr mhpmcounter13
-	csr mhpmcounter14
-	csr mhpmcounter15
-	csr mhpmcounter16
-	csr mhpmcounter17
-	csr mhpmcounter18
-	csr mhpmcounter19
-	csr mhpmcounter20
-	csr mhpmcounter21
-	csr mhpmcounter22
-	csr mhpmcounter23
-	csr mhpmcounter24
-	csr mhpmcounter25
-	csr mhpmcounter26
-	csr mhpmcounter27
-	csr mhpmcounter28
-	csr mhpmcounter29
-	csr mhpmcounter30
-	csr mhpmcounter31
-	csr mcycleh
-	csr minstreth
-	csr mhpmcounter3h
-	csr mhpmcounter4h
-	csr mhpmcounter5h
-	csr mhpmcounter6h
-	csr mhpmcounter7h
-	csr mhpmcounter8h
-	csr mhpmcounter9h
-	csr mhpmcounter10h
-	csr mhpmcounter11h
-	csr mhpmcounter12h
-	csr mhpmcounter13h
-	csr mhpmcounter14h
-	csr mhpmcounter15h
-	csr mhpmcounter16h
-	csr mhpmcounter17h
-	csr mhpmcounter18h
-	csr mhpmcounter19h
-	csr mhpmcounter20h
-	csr mhpmcounter21h
-	csr mhpmcounter22h
-	csr mhpmcounter23h
-	csr mhpmcounter24h
-	csr mhpmcounter25h
-	csr mhpmcounter26h
-	csr mhpmcounter27h
-	csr mhpmcounter28h
-	csr mhpmcounter29h
-	csr mhpmcounter30h
-	csr mhpmcounter31h
-
-	csr mcountinhibit       # Added in 1.11
-	csr mhpmevent3
-	csr mhpmevent4
-	csr mhpmevent5
-	csr mhpmevent6
-	csr mhpmevent7
-	csr mhpmevent8
-	csr mhpmevent9
-	csr mhpmevent10
-	csr mhpmevent11
-	csr mhpmevent12
-	csr mhpmevent13
-	csr mhpmevent14
-	csr mhpmevent15
-	csr mhpmevent16
-	csr mhpmevent17
-	csr mhpmevent18
-	csr mhpmevent19
-	csr mhpmevent20
-	csr mhpmevent21
-	csr mhpmevent22
-	csr mhpmevent23
-	csr mhpmevent24
-	csr mhpmevent25
-	csr mhpmevent26
-	csr mhpmevent27
-	csr mhpmevent28
-	csr mhpmevent29
-	csr mhpmevent30
-	csr mhpmevent31
-
-	csr tselect
-	csr tdata1
-	csr tdata2
-	csr tdata3
-
-	csr dcsr
-	csr dpc
-	csr dscratch0           # Added in 1.11
-	csr dscratch1           # Added in 1.11
-
-	# Supported in previous priv spec, but dropped now.
-	csr ubadaddr            # 0x043 in 1.9.1, but the value is utval since 1.10
-	csr sbadaddr            # 0x143 in 1.9.1, but the value is stval since 1.10
-	csr sptbr               # 0x180 in 1.9.1, but the value is satp since 1.10
-	csr mbadaddr            # 0x343 in 1.9.1, but the value is mtval since 1.10
-	csr mucounteren         # 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11
-	csr dscratch            # 0x7b2 in 1.10,  but the value is dscratch0 since 1.11
-
-	csr hstatus             # 0x200, dropped in 1.10
-	csr hedeleg             # 0x202, dropped in 1.10
-	csr hideleg             # 0x203, dropped in 1.10
-	csr hie                 # 0x204, dropped in 1.10
-	csr htvec               # 0x205, dropped in 1.10
-	csr hscratch            # 0x240, dropped in 1.10
-	csr hepc                # 0x241, dropped in 1.10
-	csr hcause              # 0x242, dropped in 1.10
-	csr hbadaddr            # 0x243, dropped in 1.10
-	csr hip                 # 0x244, dropped in 1.10
-	csr mbase               # 0x380, dropped in 1.10
-	csr mbound              # 0x381, dropped in 1.10
-	csr mibase              # 0x382, dropped in 1.10
-	csr mibound             # 0x383, dropped in 1.10
-	csr mdbase              # 0x384, dropped in 1.10
-	csr mdbound             # 0x385, dropped in 1.10
-	csr mscounteren         # 0x321, dropped in 1.10
-	csr mhcounteren         # 0x322, dropped in 1.10
+	.include "priv-reg-access-all.s"
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d b/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d
index d71b2615c5f..a1f27ec0622 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d
@@ -1,3 +1,3 @@
-#as: -march=rv64if -mcsr-check
+#as: -I$srcdir/$subdir -march=rv64if -mcsr-check
 #source: priv-reg.s
 #warning_output: priv-reg-fail-rv32-only.l
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d
index 3e1836a64a9..aa95d3396f4 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d
@@ -1,4 +1,4 @@
-#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.10 -march-attr
+#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.10 -march-attr
 #source: priv-reg.s
 #warning_output: priv-reg-fail-version-1p10.l
 #readelf: -A
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d
index e1705e7cafc..d57b5423485 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d
@@ -1,4 +1,4 @@
-#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.11 -march-attr
+#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.11 -march-attr
 #source: priv-reg.s
 #warning_output: priv-reg-fail-version-1p11.l
 #readelf: -A
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d
index 56ade5932c9..d03754cbcc3 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d
@@ -1,4 +1,4 @@
-#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.9.1 -march-attr
+#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.9.1 -march-attr
 #source: priv-reg.s
 #warning_output: priv-reg-fail-version-1p9p1.l
 #readelf: -A
diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d b/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d
index d65d5104099..e5c9c51713a 100644
--- a/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d
+++ b/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d
@@ -1,3 +1,3 @@
-#as: -march=rv32if -mcsr-check
+#as: -I$srcdir/$subdir -march=rv32if -mcsr-check
 #source: priv-reg.s
 #warning_output: priv-reg-fail-zkr.l
diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p10.d b/gas/testsuite/gas/riscv/priv-reg-version-1p10.d
index 928c9c089ba..81e338d5747 100644
--- a/gas/testsuite/gas/riscv/priv-reg-version-1p10.d
+++ b/gas/testsuite/gas/riscv/priv-reg-version-1p10.d
@@ -1,4 +1,4 @@
-#as: -march=rv32if -mpriv-spec=1.10
+#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.10
 #source: priv-reg.s
 #objdump: -dr -Mpriv-spec=1.10
 
diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p11.d b/gas/testsuite/gas/riscv/priv-reg-version-1p11.d
index a283049d7b3..1925ba09235 100644
--- a/gas/testsuite/gas/riscv/priv-reg-version-1p11.d
+++ b/gas/testsuite/gas/riscv/priv-reg-version-1p11.d
@@ -1,4 +1,4 @@
-#as: -march=rv32if -mpriv-spec=1.11
+#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.11
 #source: priv-reg.s
 #objdump: -dr -Mpriv-spec=1.11
 
diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d b/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d
index d9b86ed92ab..d02c0e71893 100644
--- a/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d
+++ b/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d
@@ -1,4 +1,4 @@
-#as: -march=rv32if -mpriv-spec=1.9.1
+#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.9.1
 #source: priv-reg.s
 #objdump: -dr -Mpriv-spec=1.9.1
 
diff --git a/gas/testsuite/gas/riscv/priv-reg.s b/gas/testsuite/gas/riscv/priv-reg.s
index 5cf3ebc1b3e..74ff4a48f83 100644
--- a/gas/testsuite/gas/riscv/priv-reg.s
+++ b/gas/testsuite/gas/riscv/priv-reg.s
@@ -1,296 +1,4 @@
 	.macro csr val
 	csrr a0,\val
 	.endm
-
-	# Supported the current priv spec 1.11.
-	csr ustatus
-	csr uie
-	csr utvec
-
-	csr uscratch
-	csr uepc
-	csr ucause
-	csr utval		# Added in 1.10
-	csr uip
-
-	csr cycle
-	csr time
-	csr instret
-	csr hpmcounter3
-	csr hpmcounter4
-	csr hpmcounter5
-	csr hpmcounter6
-	csr hpmcounter7
-	csr hpmcounter8
-	csr hpmcounter9
-	csr hpmcounter10
-	csr hpmcounter11
-	csr hpmcounter12
-	csr hpmcounter13
-	csr hpmcounter14
-	csr hpmcounter15
-	csr hpmcounter16
-	csr hpmcounter17
-	csr hpmcounter18
-	csr hpmcounter19
-	csr hpmcounter20
-	csr hpmcounter21
-	csr hpmcounter22
-	csr hpmcounter23
-	csr hpmcounter24
-	csr hpmcounter25
-	csr hpmcounter26
-	csr hpmcounter27
-	csr hpmcounter28
-	csr hpmcounter29
-	csr hpmcounter30
-	csr hpmcounter31
-	csr cycleh
-	csr timeh
-	csr instreth
-	csr hpmcounter3h
-	csr hpmcounter4h
-	csr hpmcounter5h
-	csr hpmcounter6h
-	csr hpmcounter7h
-	csr hpmcounter8h
-	csr hpmcounter9h
-	csr hpmcounter10h
-	csr hpmcounter11h
-	csr hpmcounter12h
-	csr hpmcounter13h
-	csr hpmcounter14h
-	csr hpmcounter15h
-	csr hpmcounter16h
-	csr hpmcounter17h
-	csr hpmcounter18h
-	csr hpmcounter19h
-	csr hpmcounter20h
-	csr hpmcounter21h
-	csr hpmcounter22h
-	csr hpmcounter23h
-	csr hpmcounter24h
-	csr hpmcounter25h
-	csr hpmcounter26h
-	csr hpmcounter27h
-	csr hpmcounter28h
-	csr hpmcounter29h
-	csr hpmcounter30h
-	csr hpmcounter31h
-
-	csr sstatus
-	csr sedeleg
-	csr sideleg
-	csr sie
-	csr stvec
-	csr scounteren		# Added in 1.10
-
-	csr sscratch
-	csr sepc
-	csr scause
-	csr stval		# Added in 1.10
-	csr sip
-
-	csr satp		# Added in 1.10
-
-	csr mvendorid
-	csr marchid
-	csr mimpid
-	csr mhartid
-
-	csr mstatus
-	csr misa		# 0xf10 in 1.9, but changed to 0x301 since 1.9.1.
-	csr medeleg
-	csr mideleg
-	csr mie
-	csr mtvec
-	csr mcounteren		# Added in 1.10
-
-	csr mscratch
-	csr mepc
-	csr mcause
-	csr mtval		# Added in 1.10
-	csr mip
-
-	csr pmpcfg0		# Added in 1.10
-	csr pmpcfg1		# Added in 1.10
-	csr pmpcfg2		# Added in 1.10
-	csr pmpcfg3		# Added in 1.10
-	csr pmpaddr0		# Added in 1.10
-	csr pmpaddr1		# Added in 1.10
-	csr pmpaddr2		# Added in 1.10
-	csr pmpaddr3		# Added in 1.10
-	csr pmpaddr4		# Added in 1.10
-	csr pmpaddr5		# Added in 1.10
-	csr pmpaddr6		# Added in 1.10
-	csr pmpaddr7		# Added in 1.10
-	csr pmpaddr8		# Added in 1.10
-	csr pmpaddr9		# Added in 1.10
-	csr pmpaddr10		# Added in 1.10
-	csr pmpaddr11		# Added in 1.10
-	csr pmpaddr12		# Added in 1.10
-	csr pmpaddr13		# Added in 1.10
-	csr pmpaddr14		# Added in 1.10
-	csr pmpaddr15		# Added in 1.10
-
-	csr mcycle
-	csr minstret
-	csr mhpmcounter3
-	csr mhpmcounter4
-	csr mhpmcounter5
-	csr mhpmcounter6
-	csr mhpmcounter7
-	csr mhpmcounter8
-	csr mhpmcounter9
-	csr mhpmcounter10
-	csr mhpmcounter11
-	csr mhpmcounter12
-	csr mhpmcounter13
-	csr mhpmcounter14
-	csr mhpmcounter15
-	csr mhpmcounter16
-	csr mhpmcounter17
-	csr mhpmcounter18
-	csr mhpmcounter19
-	csr mhpmcounter20
-	csr mhpmcounter21
-	csr mhpmcounter22
-	csr mhpmcounter23
-	csr mhpmcounter24
-	csr mhpmcounter25
-	csr mhpmcounter26
-	csr mhpmcounter27
-	csr mhpmcounter28
-	csr mhpmcounter29
-	csr mhpmcounter30
-	csr mhpmcounter31
-	csr mcycleh
-	csr minstreth
-	csr mhpmcounter3h
-	csr mhpmcounter4h
-	csr mhpmcounter5h
-	csr mhpmcounter6h
-	csr mhpmcounter7h
-	csr mhpmcounter8h
-	csr mhpmcounter9h
-	csr mhpmcounter10h
-	csr mhpmcounter11h
-	csr mhpmcounter12h
-	csr mhpmcounter13h
-	csr mhpmcounter14h
-	csr mhpmcounter15h
-	csr mhpmcounter16h
-	csr mhpmcounter17h
-	csr mhpmcounter18h
-	csr mhpmcounter19h
-	csr mhpmcounter20h
-	csr mhpmcounter21h
-	csr mhpmcounter22h
-	csr mhpmcounter23h
-	csr mhpmcounter24h
-	csr mhpmcounter25h
-	csr mhpmcounter26h
-	csr mhpmcounter27h
-	csr mhpmcounter28h
-	csr mhpmcounter29h
-	csr mhpmcounter30h
-	csr mhpmcounter31h
-
-	csr mcountinhibit	# Added in 1.11
-	csr mhpmevent3
-	csr mhpmevent4
-	csr mhpmevent5
-	csr mhpmevent6
-	csr mhpmevent7
-	csr mhpmevent8
-	csr mhpmevent9
-	csr mhpmevent10
-	csr mhpmevent11
-	csr mhpmevent12
-	csr mhpmevent13
-	csr mhpmevent14
-	csr mhpmevent15
-	csr mhpmevent16
-	csr mhpmevent17
-	csr mhpmevent18
-	csr mhpmevent19
-	csr mhpmevent20
-	csr mhpmevent21
-	csr mhpmevent22
-	csr mhpmevent23
-	csr mhpmevent24
-	csr mhpmevent25
-	csr mhpmevent26
-	csr mhpmevent27
-	csr mhpmevent28
-	csr mhpmevent29
-	csr mhpmevent30
-	csr mhpmevent31
-
-	# Supported in previous priv spec, but dropped now.
-	csr ubadaddr		# 0x043 in 1.9.1, but the value is utval since 1.10
-	csr sbadaddr		# 0x143 in 1.9.1, but the value is stval since 1.10
-	csr sptbr		# 0x180 in 1.9.1, but the value is satp since 1.10
-	csr mbadaddr		# 0x343 in 1.9.1, but the value is mtval since 1.10
-	csr mucounteren		# 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11
-
-	csr hstatus		# 0x200, dropped in 1.10
-	csr hedeleg		# 0x202, dropped in 1.10
-	csr hideleg		# 0x203, dropped in 1.10
-	csr hie			# 0x204, dropped in 1.10
-	csr htvec		# 0x205, dropped in 1.10
-	csr hscratch		# 0x240, dropped in 1.10
-	csr hepc		# 0x241, dropped in 1.10
-	csr hcause		# 0x242, dropped in 1.10
-	csr hbadaddr		# 0x243, dropped in 1.10
-	csr hip			# 0x244, dropped in 1.10
-	csr mbase		# 0x380, dropped in 1.10
-	csr mbound		# 0x381, dropped in 1.10
-	csr mibase		# 0x382, dropped in 1.10
-	csr mibound		# 0x383, dropped in 1.10
-	csr mdbase		# 0x384, dropped in 1.10
-	csr mdbound		# 0x385, dropped in 1.10
-	csr mscounteren		# 0x321, dropped in 1.10
-	csr mhcounteren		# 0x322, dropped in 1.10
-
-	# Unprivileged CSR which are not controlled by privilege spec.
-
-	# Float
-	csr fflags
-	csr frm
-	csr fcsr
-
-	# Core debug
-	csr dcsr
-	csr dpc
-	csr dscratch0
-	csr dscratch1
-	csr dscratch		# 0x7b2, alias to dscratch0
-
-	# Trigger debug
-	csr tselect
-	csr tdata1
-	csr tdata2
-	csr tdata3
-	csr tinfo
-	csr tcontrol
-	csr mcontext
-	csr scontext
-	csr mcontrol		# 0x7a1, alias to tdata1
-	csr icount		# 0x7a1, alias to tdata1
-	csr itrigger		# 0x7a1, alias to tdata1
-	csr etrigger		# 0x7a1, alias to tdata1
-	csr textra32		# 0x7a3, alias to tdata3
-	csr textra64		# 0x7a3, alias to tdata3
-
-	# Scalar crypto
-	csr seed		# 0x015, Entropy Source
-
-	# Vector
-	csr vstart
-	csr vxsat
-	csr vxrm
-	csr vcsr
-	csr vl
-	csr vtype
-	csr vlenb
+	.include "priv-reg-access-all.s"
-- 
2.32.0


  parent reply	other threads:[~2021-12-24  3:23 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-24  3:22 [PATCH v2 0/3] RISC-V: Prepare Privileged Architecture 1.12 Tsukasa OI
2021-12-24  3:22 ` [PATCH v2 1/3] RISC-V: Make testcase indentation consistent Tsukasa OI
2021-12-24  3:22 ` Tsukasa OI [this message]
2021-12-24  3:22 ` [PATCH v2 3/3] RISC-V: Add Privileged Architecture version 1.12 Tsukasa OI
2022-02-21 13:21 ` [PATCH v2 0/3] RISC-V: Prepare Privileged Architecture 1.12 Jan Beulich
2022-02-21 13:38   ` Tsukasa OI
2022-02-21 13:49     ` Tsukasa OI

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e0a3e0c11bcaa02cee6569dad57e7d1b153bfc95.1640316166.git.research_trasio@irq.a4lg.com \
    --to=research_trasio@irq.a4lg.com \
    --cc=binutils@sourceware.org \
    --cc=nelson.chu@sifive.com \
    --cc=vineetg@rivosinc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).