]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
RISC-V: Add Privileged Architecture 1.13 CSRs.
authorJiawei <jiawei@iscas.ac.cn>
Fri, 9 May 2025 02:22:45 +0000 (10:22 +0800)
committerNelson Chu <nelson@rivosinc.com>
Fri, 9 May 2025 04:28:42 +0000 (12:28 +0800)
This patch support RISC-V Privileged Architecture 1.13 CSRs 'medelegh' and
'hedelegh'. More details between 1.12 and 1.13 see [1].

[1] https://github.com/riscv/riscv-isa-manual/blob/main/src/priv-preface.adoc

Version log: Remove gas/po changes.

bfd/ChangeLog:

        * cpu-riscv.c: New option.
        * cpu-riscv.h (enum riscv_spec_class): Ditto.

binutils/ChangeLog:

        * doc/binutils.texi: New option.

gas/ChangeLog:

        * NEWS: Add priv-1.13 support.
        * config/tc-riscv.c: New option.
        * configure: Ditto.
        * configure.ac: Ditto.
        * testsuite/gas/riscv/csr-version-1p10.d: New CSR.
        * testsuite/gas/riscv/csr-version-1p10.l: New warning.
        * testsuite/gas/riscv/csr-version-1p11.d: New CSR.
        * testsuite/gas/riscv/csr-version-1p11.l: New warning.
        * testsuite/gas/riscv/csr-version-1p12.d: New CSR.
        * testsuite/gas/riscv/csr-version-1p12.l: New warning.
        * testsuite/gas/riscv/csr.s: New CSR.
        * testsuite/gas/riscv/attribute-15.d: New test.
        * testsuite/gas/riscv/attribute-16.d: New test.
        * testsuite/gas/riscv/csr-version-1p13.d: New test.
        * testsuite/gas/riscv/csr-version-1p13.l: New test.

include/ChangeLog:

        * opcode/riscv-opc.h (CSR_MEDELEGH): New CSR.
        (CSR_HEDELEGH): Ditto.
        (DECLARE_CSR): Ditto.

19 files changed:
bfd/cpu-riscv.c
bfd/cpu-riscv.h
binutils/doc/binutils.texi
gas/NEWS
gas/config/tc-riscv.c
gas/configure
gas/configure.ac
gas/testsuite/gas/riscv/attribute-15.d [new file with mode: 0644]
gas/testsuite/gas/riscv/attribute-16.d [new file with mode: 0644]
gas/testsuite/gas/riscv/csr-version-1p10.d
gas/testsuite/gas/riscv/csr-version-1p10.l
gas/testsuite/gas/riscv/csr-version-1p11.d
gas/testsuite/gas/riscv/csr-version-1p11.l
gas/testsuite/gas/riscv/csr-version-1p12.d
gas/testsuite/gas/riscv/csr-version-1p12.l
gas/testsuite/gas/riscv/csr-version-1p13.d [new file with mode: 0644]
gas/testsuite/gas/riscv/csr-version-1p13.l [new file with mode: 0644]
gas/testsuite/gas/riscv/csr.s
include/opcode/riscv-opc.h

index ea25e784fd845ae497d160c75935a4fc091cd494..67ee601afc1a886d8e4cf90e4005cae4427e194d 100644 (file)
@@ -118,6 +118,7 @@ const struct riscv_spec riscv_priv_specs[] =
   {"1.10",  PRIV_SPEC_CLASS_1P10},
   {"1.11",  PRIV_SPEC_CLASS_1P11},
   {"1.12",  PRIV_SPEC_CLASS_1P12},
+  {"1.13",  PRIV_SPEC_CLASS_1P13},
 };
 
 /* Get the corresponding CSR version class by giving privilege
index 93a3f523bd8e8db044dceb1949dabf0489817015..b07fcf8e881e7eef7d9ffe522a70c678684214a9 100644 (file)
@@ -33,6 +33,7 @@ enum riscv_spec_class
   PRIV_SPEC_CLASS_1P10,
   PRIV_SPEC_CLASS_1P11,
   PRIV_SPEC_CLASS_1P12,
+  PRIV_SPEC_CLASS_1P13,
   PRIV_SPEC_CLASS_DRAFT,
 };
 
index c74526e929a7867cc0509e9e3e574c60c7d9f898..7f041d9deda3caf975046c4500e05cf089a513db 100644 (file)
@@ -2720,7 +2720,7 @@ instructions will be represented as such (@code{addi sp,sp,-128} will be
 
 @item priv-spec=@var{SPEC}
 Print the CSR according to the chosen privilege spec version (e.g.,
-@code{1.10}, @code{1.11}, @code{1.12}).
+@code{1.10}, @code{1.11}, @code{1.12}, @code{1.13}).
 @end table
 
 For MIPS, this option controls the printing of instruction mnemonic
index bff2248c9b0064f90bc48098e12162d31dba2a0c..af0c37c480a053f6c6828418bf51c715451d1fd7 100644 (file)
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -8,6 +8,8 @@
   to have the same ISA as elf architecture attribute.  Once used .option arch
   directives, the file need to be rebuilt since 2.45.
 
+* Add support for RISC-V privileged version 1.13.
+
 * Add support for RISC-V standard extensions:
   ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0.
 
index 79121e7a65a66e0052aa53938d9bd494d53b14f7..ca4030d6a9340d8738f53e48d88ec432ce7bc4e0 100644 (file)
@@ -5468,7 +5468,7 @@ RISC-V options:\n\
   -fno-pic                    don't generate position-independent code (default)\n\
   -march=ISA                  set the RISC-V architecture\n\
   -misa-spec=ISAspec          set the RISC-V ISA spec (2.2, 20190608, 20191213)\n\
-  -mpriv-spec=PRIVspec        set the RISC-V privilege spec (1.10, 1.11, 1.12)\n\
+  -mpriv-spec=PRIVspec        set the RISC-V privilege spec (1.10, 1.11, 1.12, 1.13)\n\
   -mabi=ABI                   set the RISC-V ABI\n\
   -mrelax                     enable relax (default)\n\
   -mno-relax                  disable relax\n\
index 16a8937f53a35e78eb6ed2f625a4471a0994d19c..e39c965b465eaf72d0adb1535a9c4ca90bbdedae 100755 (executable)
@@ -12609,7 +12609,7 @@ _ACEOF
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_isa_spec" >&5
 $as_echo "$with_isa_spec" >&6; }
 
-        # --with-priv-spec=[1.9.1|1.10|1.11|1.12].
+        # --with-priv-spec=[1.9.1|1.10|1.11|1.12|1.13].
         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for default configuration of --with-priv-spec" >&5
 $as_echo_n "checking for default configuration of --with-priv-spec... " >&6; }
         if test "x${with_priv_spec}" != x; then
index e97ec598b6fcb7db5a853fb882bed7713b411627..e1d32c3b530035b18f0e5fba1177658885e3b9cc 100644 (file)
@@ -653,7 +653,7 @@ changequote([,])dnl
         fi
         AC_MSG_RESULT($with_isa_spec)
 
-        # --with-priv-spec=[1.9.1|1.10|1.11|1.12].
+        # --with-priv-spec=[1.9.1|1.10|1.11|1.12|1.13].
         AC_MSG_CHECKING(for default configuration of --with-priv-spec)
         if test "x${with_priv_spec}" != x; then
           AC_DEFINE_UNQUOTED(DEFAULT_RISCV_PRIV_SPEC, "$with_priv_spec",
diff --git a/gas/testsuite/gas/riscv/attribute-15.d b/gas/testsuite/gas/riscv/attribute-15.d
new file mode 100644 (file)
index 0000000..929631a
--- /dev/null
@@ -0,0 +1,8 @@
+#as: -march-attr -mpriv-spec=1.13
+#readelf: -A
+#source: attribute-11.s
+Attribute Section: riscv
+File Attributes
+  Tag_RISCV_arch: [a-zA-Z0-9_\"].*
+  Tag_RISCV_priv_spec: 1
+  Tag_RISCV_priv_spec_minor: 13
diff --git a/gas/testsuite/gas/riscv/attribute-16.d b/gas/testsuite/gas/riscv/attribute-16.d
new file mode 100644 (file)
index 0000000..928d8d7
--- /dev/null
@@ -0,0 +1,6 @@
+#as: -march-attr -mpriv-spec=1.13
+#readelf: -A
+#source: empty.s
+Attribute Section: riscv
+File Attributes
+  Tag_RISCV_arch: [a-zA-Z0-9_\"].*
index 6896e7b1ccdb04e2d9b1f930c7d3a8c463ce2928..ba2fa9e5638352258a8efae97a5699660c5f0cc5 100644 (file)
@@ -175,6 +175,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+30159073[     ]+csrw[         ]+misa,a1
 [      ]+[0-9a-f]+:[   ]+30202573[     ]+csrr[         ]+a0,medeleg
 [      ]+[0-9a-f]+:[   ]+30259073[     ]+csrw[         ]+medeleg,a1
+[      ]+[0-9a-f]+:[   ]+31202573[     ]+csrr[         ]+a0,0x312
+[      ]+[0-9a-f]+:[   ]+31259073[     ]+csrw[         ]+0x312,a1
 [      ]+[0-9a-f]+:[   ]+30302573[     ]+csrr[         ]+a0,mideleg
 [      ]+[0-9a-f]+:[   ]+30359073[     ]+csrw[         ]+mideleg,a1
 [      ]+[0-9a-f]+:[   ]+30402573[     ]+csrr[         ]+a0,mie
@@ -555,6 +557,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+60059073[     ]+csrw[         ]+hstatus,a1
 [      ]+[0-9a-f]+:[   ]+60202573[     ]+csrr[         ]+a0,hedeleg
 [      ]+[0-9a-f]+:[   ]+60259073[     ]+csrw[         ]+hedeleg,a1
+[      ]+[0-9a-f]+:[   ]+61202573[     ]+csrr[         ]+a0,0x612
+[      ]+[0-9a-f]+:[   ]+61259073[     ]+csrw[         ]+0x612,a1
 [      ]+[0-9a-f]+:[   ]+60302573[     ]+csrr[         ]+a0,hideleg
 [      ]+[0-9a-f]+:[   ]+60359073[     ]+csrw[         ]+hideleg,a1
 [      ]+[0-9a-f]+:[   ]+60402573[     ]+csrr[         ]+a0,hie
index 46d1e4e5849d5fd64aa1575c5727de3a1e549361..0f8e0ece25fae7e70898e59072027cc877d93842 100644 (file)
 .*Info: macro .*
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
 .*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.10'
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.10'
+.*Info: macro .*
 .*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Info: macro .*
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.10'
 .*Info: macro .*
 .*Warning: invalid CSR `hedeleg', needs `h' extension
 .*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
 .*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
index 308140aa064a6ff7dba0860797b0b99cf0d19ca9..ed848981d3f92c199d51c42bd291ee063d36b769 100644 (file)
@@ -175,6 +175,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+30159073[     ]+csrw[         ]+misa,a1
 [      ]+[0-9a-f]+:[   ]+30202573[     ]+csrr[         ]+a0,medeleg
 [      ]+[0-9a-f]+:[   ]+30259073[     ]+csrw[         ]+medeleg,a1
+[      ]+[0-9a-f]+:[   ]+31202573[     ]+csrr[         ]+a0,0x312
+[      ]+[0-9a-f]+:[   ]+31259073[     ]+csrw[         ]+0x312,a1
 [      ]+[0-9a-f]+:[   ]+30302573[     ]+csrr[         ]+a0,mideleg
 [      ]+[0-9a-f]+:[   ]+30359073[     ]+csrw[         ]+mideleg,a1
 [      ]+[0-9a-f]+:[   ]+30402573[     ]+csrr[         ]+a0,mie
@@ -555,6 +557,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+60059073[     ]+csrw[         ]+hstatus,a1
 [      ]+[0-9a-f]+:[   ]+60202573[     ]+csrr[         ]+a0,hedeleg
 [      ]+[0-9a-f]+:[   ]+60259073[     ]+csrw[         ]+hedeleg,a1
+[      ]+[0-9a-f]+:[   ]+61202573[     ]+csrr[         ]+a0,0x612
+[      ]+[0-9a-f]+:[   ]+61259073[     ]+csrw[         ]+0x612,a1
 [      ]+[0-9a-f]+:[   ]+60302573[     ]+csrr[         ]+a0,hideleg
 [      ]+[0-9a-f]+:[   ]+60359073[     ]+csrw[         ]+hideleg,a1
 [      ]+[0-9a-f]+:[   ]+60402573[     ]+csrr[         ]+a0,hie
index 9e813e206cdc3e657de9429f8d52541ab59194d9..69e6c5318df8568a68b6cd05257016df21db7ded 100644 (file)
 .*Info: macro .*
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
 .*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.11'
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.11'
+.*Info: macro .*
 .*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Info: macro .*
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.11'
 .*Info: macro .*
 .*Warning: invalid CSR `hedeleg', needs `h' extension
 .*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
 .*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
index 5fe33162c9c34976e60402c7676516e55123b141..dfbb243e430c5b661c72d3cf2c1716bb6d739e7c 100644 (file)
@@ -175,6 +175,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+30159073[     ]+csrw[         ]+misa,a1
 [      ]+[0-9a-f]+:[   ]+30202573[     ]+csrr[         ]+a0,medeleg
 [      ]+[0-9a-f]+:[   ]+30259073[     ]+csrw[         ]+medeleg,a1
+[      ]+[0-9a-f]+:[   ]+31202573[     ]+csrr[         ]+a0,0x312
+[      ]+[0-9a-f]+:[   ]+31259073[     ]+csrw[         ]+0x312,a1
 [      ]+[0-9a-f]+:[   ]+30302573[     ]+csrr[         ]+a0,mideleg
 [      ]+[0-9a-f]+:[   ]+30359073[     ]+csrw[         ]+mideleg,a1
 [      ]+[0-9a-f]+:[   ]+30402573[     ]+csrr[         ]+a0,mie
@@ -555,6 +557,8 @@ Disassembly of section .text:
 [      ]+[0-9a-f]+:[   ]+60059073[     ]+csrw[         ]+hstatus,a1
 [      ]+[0-9a-f]+:[   ]+60202573[     ]+csrr[         ]+a0,hedeleg
 [      ]+[0-9a-f]+:[   ]+60259073[     ]+csrw[         ]+hedeleg,a1
+[      ]+[0-9a-f]+:[   ]+61202573[     ]+csrr[         ]+a0,0x612
+[      ]+[0-9a-f]+:[   ]+61259073[     ]+csrw[         ]+0x612,a1
 [      ]+[0-9a-f]+:[   ]+60302573[     ]+csrr[         ]+a0,hideleg
 [      ]+[0-9a-f]+:[   ]+60359073[     ]+csrw[         ]+hideleg,a1
 [      ]+[0-9a-f]+:[   ]+60402573[     ]+csrr[         ]+a0,hie
index ff60ec0076711e25f67c9fd699de141902a8fa26..721484130ffc589960ded2a367e545a16b727c58 100644 (file)
 .*Info: macro .*
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
 .*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.12'
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh' for the privileged spec `1.12'
+.*Info: macro .*
 .*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Info: macro .*
 .*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Info: macro .*
 .*Warning: invalid CSR `hedeleg', needs `h' extension
 .*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
 .*Info: macro .*
 .*Warning: invalid CSR `hideleg', needs `h' extension
diff --git a/gas/testsuite/gas/riscv/csr-version-1p13.d b/gas/testsuite/gas/riscv/csr-version-1p13.d
new file mode 100644 (file)
index 0000000..1309030
--- /dev/null
@@ -0,0 +1,941 @@
+#as: -march=rv64i_zicsr -mcsr-check -mpriv-spec=1.13
+#source: csr.s
+#warning_output: csr-version-1p13.l
+#objdump: -dr -Mpriv-spec=1.13
+
+.*:[   ]+file format .*
+
+
+Disassembly of section .text:
+
+0+000 <.text>:
+[      ]+[0-9a-f]+:[   ]+c0002573[     ]+rdcycle[      ]+a0
+[      ]+[0-9a-f]+:[   ]+c0059073[     ]+csrw[         ]+cycle,a1
+[      ]+[0-9a-f]+:[   ]+c0102573[     ]+rdtime[       ]+a0
+[      ]+[0-9a-f]+:[   ]+c0159073[     ]+csrw[         ]+time,a1
+[      ]+[0-9a-f]+:[   ]+c0202573[     ]+rdinstret[    ]+a0
+[      ]+[0-9a-f]+:[   ]+c0259073[     ]+csrw[         ]+instret,a1
+[      ]+[0-9a-f]+:[   ]+c0302573[     ]+csrr[         ]+a0,hpmcounter3
+[      ]+[0-9a-f]+:[   ]+c0359073[     ]+csrw[         ]+hpmcounter3,a1
+[      ]+[0-9a-f]+:[   ]+c0402573[     ]+csrr[         ]+a0,hpmcounter4
+[      ]+[0-9a-f]+:[   ]+c0459073[     ]+csrw[         ]+hpmcounter4,a1
+[      ]+[0-9a-f]+:[   ]+c0502573[     ]+csrr[         ]+a0,hpmcounter5
+[      ]+[0-9a-f]+:[   ]+c0559073[     ]+csrw[         ]+hpmcounter5,a1
+[      ]+[0-9a-f]+:[   ]+c0602573[     ]+csrr[         ]+a0,hpmcounter6
+[      ]+[0-9a-f]+:[   ]+c0659073[     ]+csrw[         ]+hpmcounter6,a1
+[      ]+[0-9a-f]+:[   ]+c0702573[     ]+csrr[         ]+a0,hpmcounter7
+[      ]+[0-9a-f]+:[   ]+c0759073[     ]+csrw[         ]+hpmcounter7,a1
+[      ]+[0-9a-f]+:[   ]+c0802573[     ]+csrr[         ]+a0,hpmcounter8
+[      ]+[0-9a-f]+:[   ]+c0859073[     ]+csrw[         ]+hpmcounter8,a1
+[      ]+[0-9a-f]+:[   ]+c0902573[     ]+csrr[         ]+a0,hpmcounter9
+[      ]+[0-9a-f]+:[   ]+c0959073[     ]+csrw[         ]+hpmcounter9,a1
+[      ]+[0-9a-f]+:[   ]+c0a02573[     ]+csrr[         ]+a0,hpmcounter10
+[      ]+[0-9a-f]+:[   ]+c0a59073[     ]+csrw[         ]+hpmcounter10,a1
+[      ]+[0-9a-f]+:[   ]+c0b02573[     ]+csrr[         ]+a0,hpmcounter11
+[      ]+[0-9a-f]+:[   ]+c0b59073[     ]+csrw[         ]+hpmcounter11,a1
+[      ]+[0-9a-f]+:[   ]+c0c02573[     ]+csrr[         ]+a0,hpmcounter12
+[      ]+[0-9a-f]+:[   ]+c0c59073[     ]+csrw[         ]+hpmcounter12,a1
+[      ]+[0-9a-f]+:[   ]+c0d02573[     ]+csrr[         ]+a0,hpmcounter13
+[      ]+[0-9a-f]+:[   ]+c0d59073[     ]+csrw[         ]+hpmcounter13,a1
+[      ]+[0-9a-f]+:[   ]+c0e02573[     ]+csrr[         ]+a0,hpmcounter14
+[      ]+[0-9a-f]+:[   ]+c0e59073[     ]+csrw[         ]+hpmcounter14,a1
+[      ]+[0-9a-f]+:[   ]+c0f02573[     ]+csrr[         ]+a0,hpmcounter15
+[      ]+[0-9a-f]+:[   ]+c0f59073[     ]+csrw[         ]+hpmcounter15,a1
+[      ]+[0-9a-f]+:[   ]+c1002573[     ]+csrr[         ]+a0,hpmcounter16
+[      ]+[0-9a-f]+:[   ]+c1059073[     ]+csrw[         ]+hpmcounter16,a1
+[      ]+[0-9a-f]+:[   ]+c1102573[     ]+csrr[         ]+a0,hpmcounter17
+[      ]+[0-9a-f]+:[   ]+c1159073[     ]+csrw[         ]+hpmcounter17,a1
+[      ]+[0-9a-f]+:[   ]+c1202573[     ]+csrr[         ]+a0,hpmcounter18
+[      ]+[0-9a-f]+:[   ]+c1259073[     ]+csrw[         ]+hpmcounter18,a1
+[      ]+[0-9a-f]+:[   ]+c1302573[     ]+csrr[         ]+a0,hpmcounter19
+[      ]+[0-9a-f]+:[   ]+c1359073[     ]+csrw[         ]+hpmcounter19,a1
+[      ]+[0-9a-f]+:[   ]+c1402573[     ]+csrr[         ]+a0,hpmcounter20
+[      ]+[0-9a-f]+:[   ]+c1459073[     ]+csrw[         ]+hpmcounter20,a1
+[      ]+[0-9a-f]+:[   ]+c1502573[     ]+csrr[         ]+a0,hpmcounter21
+[      ]+[0-9a-f]+:[   ]+c1559073[     ]+csrw[         ]+hpmcounter21,a1
+[      ]+[0-9a-f]+:[   ]+c1602573[     ]+csrr[         ]+a0,hpmcounter22
+[      ]+[0-9a-f]+:[   ]+c1659073[     ]+csrw[         ]+hpmcounter22,a1
+[      ]+[0-9a-f]+:[   ]+c1702573[     ]+csrr[         ]+a0,hpmcounter23
+[      ]+[0-9a-f]+:[   ]+c1759073[     ]+csrw[         ]+hpmcounter23,a1
+[      ]+[0-9a-f]+:[   ]+c1802573[     ]+csrr[         ]+a0,hpmcounter24
+[      ]+[0-9a-f]+:[   ]+c1859073[     ]+csrw[         ]+hpmcounter24,a1
+[      ]+[0-9a-f]+:[   ]+c1902573[     ]+csrr[         ]+a0,hpmcounter25
+[      ]+[0-9a-f]+:[   ]+c1959073[     ]+csrw[         ]+hpmcounter25,a1
+[      ]+[0-9a-f]+:[   ]+c1a02573[     ]+csrr[         ]+a0,hpmcounter26
+[      ]+[0-9a-f]+:[   ]+c1a59073[     ]+csrw[         ]+hpmcounter26,a1
+[      ]+[0-9a-f]+:[   ]+c1b02573[     ]+csrr[         ]+a0,hpmcounter27
+[      ]+[0-9a-f]+:[   ]+c1b59073[     ]+csrw[         ]+hpmcounter27,a1
+[      ]+[0-9a-f]+:[   ]+c1c02573[     ]+csrr[         ]+a0,hpmcounter28
+[      ]+[0-9a-f]+:[   ]+c1c59073[     ]+csrw[         ]+hpmcounter28,a1
+[      ]+[0-9a-f]+:[   ]+c1d02573[     ]+csrr[         ]+a0,hpmcounter29
+[      ]+[0-9a-f]+:[   ]+c1d59073[     ]+csrw[         ]+hpmcounter29,a1
+[      ]+[0-9a-f]+:[   ]+c1e02573[     ]+csrr[         ]+a0,hpmcounter30
+[      ]+[0-9a-f]+:[   ]+c1e59073[     ]+csrw[         ]+hpmcounter30,a1
+[      ]+[0-9a-f]+:[   ]+c1f02573[     ]+csrr[         ]+a0,hpmcounter31
+[      ]+[0-9a-f]+:[   ]+c1f59073[     ]+csrw[         ]+hpmcounter31,a1
+[      ]+[0-9a-f]+:[   ]+c8002573[     ]+csrr[         ]+a0,cycleh
+[      ]+[0-9a-f]+:[   ]+c8059073[     ]+csrw[         ]+cycleh,a1
+[      ]+[0-9a-f]+:[   ]+c8102573[     ]+csrr[         ]+a0,timeh
+[      ]+[0-9a-f]+:[   ]+c8159073[     ]+csrw[         ]+timeh,a1
+[      ]+[0-9a-f]+:[   ]+c8202573[     ]+csrr[         ]+a0,instreth
+[      ]+[0-9a-f]+:[   ]+c8259073[     ]+csrw[         ]+instreth,a1
+[      ]+[0-9a-f]+:[   ]+c8302573[     ]+csrr[         ]+a0,hpmcounter3h
+[      ]+[0-9a-f]+:[   ]+c8359073[     ]+csrw[         ]+hpmcounter3h,a1
+[      ]+[0-9a-f]+:[   ]+c8402573[     ]+csrr[         ]+a0,hpmcounter4h
+[      ]+[0-9a-f]+:[   ]+c8459073[     ]+csrw[         ]+hpmcounter4h,a1
+[      ]+[0-9a-f]+:[   ]+c8502573[     ]+csrr[         ]+a0,hpmcounter5h
+[      ]+[0-9a-f]+:[   ]+c8559073[     ]+csrw[         ]+hpmcounter5h,a1
+[      ]+[0-9a-f]+:[   ]+c8602573[     ]+csrr[         ]+a0,hpmcounter6h
+[      ]+[0-9a-f]+:[   ]+c8659073[     ]+csrw[         ]+hpmcounter6h,a1
+[      ]+[0-9a-f]+:[   ]+c8702573[     ]+csrr[         ]+a0,hpmcounter7h
+[      ]+[0-9a-f]+:[   ]+c8759073[     ]+csrw[         ]+hpmcounter7h,a1
+[      ]+[0-9a-f]+:[   ]+c8802573[     ]+csrr[         ]+a0,hpmcounter8h
+[      ]+[0-9a-f]+:[   ]+c8859073[     ]+csrw[         ]+hpmcounter8h,a1
+[      ]+[0-9a-f]+:[   ]+c8902573[     ]+csrr[         ]+a0,hpmcounter9h
+[      ]+[0-9a-f]+:[   ]+c8959073[     ]+csrw[         ]+hpmcounter9h,a1
+[      ]+[0-9a-f]+:[   ]+c8a02573[     ]+csrr[         ]+a0,hpmcounter10h
+[      ]+[0-9a-f]+:[   ]+c8a59073[     ]+csrw[         ]+hpmcounter10h,a1
+[      ]+[0-9a-f]+:[   ]+c8b02573[     ]+csrr[         ]+a0,hpmcounter11h
+[      ]+[0-9a-f]+:[   ]+c8b59073[     ]+csrw[         ]+hpmcounter11h,a1
+[      ]+[0-9a-f]+:[   ]+c8c02573[     ]+csrr[         ]+a0,hpmcounter12h
+[      ]+[0-9a-f]+:[   ]+c8c59073[     ]+csrw[         ]+hpmcounter12h,a1
+[      ]+[0-9a-f]+:[   ]+c8d02573[     ]+csrr[         ]+a0,hpmcounter13h
+[      ]+[0-9a-f]+:[   ]+c8d59073[     ]+csrw[         ]+hpmcounter13h,a1
+[      ]+[0-9a-f]+:[   ]+c8e02573[     ]+csrr[         ]+a0,hpmcounter14h
+[      ]+[0-9a-f]+:[   ]+c8e59073[     ]+csrw[         ]+hpmcounter14h,a1
+[      ]+[0-9a-f]+:[   ]+c8f02573[     ]+csrr[         ]+a0,hpmcounter15h
+[      ]+[0-9a-f]+:[   ]+c8f59073[     ]+csrw[         ]+hpmcounter15h,a1
+[      ]+[0-9a-f]+:[   ]+c9002573[     ]+csrr[         ]+a0,hpmcounter16h
+[      ]+[0-9a-f]+:[   ]+c9059073[     ]+csrw[         ]+hpmcounter16h,a1
+[      ]+[0-9a-f]+:[   ]+c9102573[     ]+csrr[         ]+a0,hpmcounter17h
+[      ]+[0-9a-f]+:[   ]+c9159073[     ]+csrw[         ]+hpmcounter17h,a1
+[      ]+[0-9a-f]+:[   ]+c9202573[     ]+csrr[         ]+a0,hpmcounter18h
+[      ]+[0-9a-f]+:[   ]+c9259073[     ]+csrw[         ]+hpmcounter18h,a1
+[      ]+[0-9a-f]+:[   ]+c9302573[     ]+csrr[         ]+a0,hpmcounter19h
+[      ]+[0-9a-f]+:[   ]+c9359073[     ]+csrw[         ]+hpmcounter19h,a1
+[      ]+[0-9a-f]+:[   ]+c9402573[     ]+csrr[         ]+a0,hpmcounter20h
+[      ]+[0-9a-f]+:[   ]+c9459073[     ]+csrw[         ]+hpmcounter20h,a1
+[      ]+[0-9a-f]+:[   ]+c9502573[     ]+csrr[         ]+a0,hpmcounter21h
+[      ]+[0-9a-f]+:[   ]+c9559073[     ]+csrw[         ]+hpmcounter21h,a1
+[      ]+[0-9a-f]+:[   ]+c9602573[     ]+csrr[         ]+a0,hpmcounter22h
+[      ]+[0-9a-f]+:[   ]+c9659073[     ]+csrw[         ]+hpmcounter22h,a1
+[      ]+[0-9a-f]+:[   ]+c9702573[     ]+csrr[         ]+a0,hpmcounter23h
+[      ]+[0-9a-f]+:[   ]+c9759073[     ]+csrw[         ]+hpmcounter23h,a1
+[      ]+[0-9a-f]+:[   ]+c9802573[     ]+csrr[         ]+a0,hpmcounter24h
+[      ]+[0-9a-f]+:[   ]+c9859073[     ]+csrw[         ]+hpmcounter24h,a1
+[      ]+[0-9a-f]+:[   ]+c9902573[     ]+csrr[         ]+a0,hpmcounter25h
+[      ]+[0-9a-f]+:[   ]+c9959073[     ]+csrw[         ]+hpmcounter25h,a1
+[      ]+[0-9a-f]+:[   ]+c9a02573[     ]+csrr[         ]+a0,hpmcounter26h
+[      ]+[0-9a-f]+:[   ]+c9a59073[     ]+csrw[         ]+hpmcounter26h,a1
+[      ]+[0-9a-f]+:[   ]+c9b02573[     ]+csrr[         ]+a0,hpmcounter27h
+[      ]+[0-9a-f]+:[   ]+c9b59073[     ]+csrw[         ]+hpmcounter27h,a1
+[      ]+[0-9a-f]+:[   ]+c9c02573[     ]+csrr[         ]+a0,hpmcounter28h
+[      ]+[0-9a-f]+:[   ]+c9c59073[     ]+csrw[         ]+hpmcounter28h,a1
+[      ]+[0-9a-f]+:[   ]+c9d02573[     ]+csrr[         ]+a0,hpmcounter29h
+[      ]+[0-9a-f]+:[   ]+c9d59073[     ]+csrw[         ]+hpmcounter29h,a1
+[      ]+[0-9a-f]+:[   ]+c9e02573[     ]+csrr[         ]+a0,hpmcounter30h
+[      ]+[0-9a-f]+:[   ]+c9e59073[     ]+csrw[         ]+hpmcounter30h,a1
+[      ]+[0-9a-f]+:[   ]+c9f02573[     ]+csrr[         ]+a0,hpmcounter31h
+[      ]+[0-9a-f]+:[   ]+c9f59073[     ]+csrw[         ]+hpmcounter31h,a1
+[      ]+[0-9a-f]+:[   ]+10002573[     ]+csrr[         ]+a0,sstatus
+[      ]+[0-9a-f]+:[   ]+10059073[     ]+csrw[         ]+sstatus,a1
+[      ]+[0-9a-f]+:[   ]+10402573[     ]+csrr[         ]+a0,sie
+[      ]+[0-9a-f]+:[   ]+10459073[     ]+csrw[         ]+sie,a1
+[      ]+[0-9a-f]+:[   ]+10502573[     ]+csrr[         ]+a0,stvec
+[      ]+[0-9a-f]+:[   ]+10559073[     ]+csrw[         ]+stvec,a1
+[      ]+[0-9a-f]+:[   ]+10602573[     ]+csrr[         ]+a0,scounteren
+[      ]+[0-9a-f]+:[   ]+10659073[     ]+csrw[         ]+scounteren,a1
+[      ]+[0-9a-f]+:[   ]+10a02573[     ]+csrr[         ]+a0,senvcfg
+[      ]+[0-9a-f]+:[   ]+10a59073[     ]+csrw[         ]+senvcfg,a1
+[      ]+[0-9a-f]+:[   ]+14002573[     ]+csrr[         ]+a0,sscratch
+[      ]+[0-9a-f]+:[   ]+14059073[     ]+csrw[         ]+sscratch,a1
+[      ]+[0-9a-f]+:[   ]+14102573[     ]+csrr[         ]+a0,sepc
+[      ]+[0-9a-f]+:[   ]+14159073[     ]+csrw[         ]+sepc,a1
+[      ]+[0-9a-f]+:[   ]+14202573[     ]+csrr[         ]+a0,scause
+[      ]+[0-9a-f]+:[   ]+14259073[     ]+csrw[         ]+scause,a1
+[      ]+[0-9a-f]+:[   ]+14302573[     ]+csrr[         ]+a0,stval
+[      ]+[0-9a-f]+:[   ]+14359073[     ]+csrw[         ]+stval,a1
+[      ]+[0-9a-f]+:[   ]+14402573[     ]+csrr[         ]+a0,sip
+[      ]+[0-9a-f]+:[   ]+14459073[     ]+csrw[         ]+sip,a1
+[      ]+[0-9a-f]+:[   ]+18002573[     ]+csrr[         ]+a0,satp
+[      ]+[0-9a-f]+:[   ]+18059073[     ]+csrw[         ]+satp,a1
+[      ]+[0-9a-f]+:[   ]+f1102573[     ]+csrr[         ]+a0,mvendorid
+[      ]+[0-9a-f]+:[   ]+f1159073[     ]+csrw[         ]+mvendorid,a1
+[      ]+[0-9a-f]+:[   ]+f1202573[     ]+csrr[         ]+a0,marchid
+[      ]+[0-9a-f]+:[   ]+f1259073[     ]+csrw[         ]+marchid,a1
+[      ]+[0-9a-f]+:[   ]+f1302573[     ]+csrr[         ]+a0,mimpid
+[      ]+[0-9a-f]+:[   ]+f1359073[     ]+csrw[         ]+mimpid,a1
+[      ]+[0-9a-f]+:[   ]+f1402573[     ]+csrr[         ]+a0,mhartid
+[      ]+[0-9a-f]+:[   ]+f1459073[     ]+csrw[         ]+mhartid,a1
+[      ]+[0-9a-f]+:[   ]+f1502573[     ]+csrr[         ]+a0,mconfigptr
+[      ]+[0-9a-f]+:[   ]+f1559073[     ]+csrw[         ]+mconfigptr,a1
+[      ]+[0-9a-f]+:[   ]+30002573[     ]+csrr[         ]+a0,mstatus
+[      ]+[0-9a-f]+:[   ]+30059073[     ]+csrw[         ]+mstatus,a1
+[      ]+[0-9a-f]+:[   ]+30102573[     ]+csrr[         ]+a0,misa
+[      ]+[0-9a-f]+:[   ]+30159073[     ]+csrw[         ]+misa,a1
+[      ]+[0-9a-f]+:[   ]+30202573[     ]+csrr[         ]+a0,medeleg
+[      ]+[0-9a-f]+:[   ]+30259073[     ]+csrw[         ]+medeleg,a1
+[      ]+[0-9a-f]+:[   ]+31202573[     ]+csrr[         ]+a0,medelegh
+[      ]+[0-9a-f]+:[   ]+31259073[     ]+csrw[         ]+medelegh,a1
+[      ]+[0-9a-f]+:[   ]+30302573[     ]+csrr[         ]+a0,mideleg
+[      ]+[0-9a-f]+:[   ]+30359073[     ]+csrw[         ]+mideleg,a1
+[      ]+[0-9a-f]+:[   ]+30402573[     ]+csrr[         ]+a0,mie
+[      ]+[0-9a-f]+:[   ]+30459073[     ]+csrw[         ]+mie,a1
+[      ]+[0-9a-f]+:[   ]+30502573[     ]+csrr[         ]+a0,mtvec
+[      ]+[0-9a-f]+:[   ]+30559073[     ]+csrw[         ]+mtvec,a1
+[      ]+[0-9a-f]+:[   ]+30602573[     ]+csrr[         ]+a0,mcounteren
+[      ]+[0-9a-f]+:[   ]+30659073[     ]+csrw[         ]+mcounteren,a1
+[      ]+[0-9a-f]+:[   ]+31002573[     ]+csrr[         ]+a0,mstatush
+[      ]+[0-9a-f]+:[   ]+31059073[     ]+csrw[         ]+mstatush,a1
+[      ]+[0-9a-f]+:[   ]+34002573[     ]+csrr[         ]+a0,mscratch
+[      ]+[0-9a-f]+:[   ]+34059073[     ]+csrw[         ]+mscratch,a1
+[      ]+[0-9a-f]+:[   ]+34102573[     ]+csrr[         ]+a0,mepc
+[      ]+[0-9a-f]+:[   ]+34159073[     ]+csrw[         ]+mepc,a1
+[      ]+[0-9a-f]+:[   ]+34202573[     ]+csrr[         ]+a0,mcause
+[      ]+[0-9a-f]+:[   ]+34259073[     ]+csrw[         ]+mcause,a1
+[      ]+[0-9a-f]+:[   ]+34302573[     ]+csrr[         ]+a0,mtval
+[      ]+[0-9a-f]+:[   ]+34359073[     ]+csrw[         ]+mtval,a1
+[      ]+[0-9a-f]+:[   ]+34402573[     ]+csrr[         ]+a0,mip
+[      ]+[0-9a-f]+:[   ]+34459073[     ]+csrw[         ]+mip,a1
+[      ]+[0-9a-f]+:[   ]+34a02573[     ]+csrr[         ]+a0,mtinst
+[      ]+[0-9a-f]+:[   ]+34a59073[     ]+csrw[         ]+mtinst,a1
+[      ]+[0-9a-f]+:[   ]+34b02573[     ]+csrr[         ]+a0,mtval2
+[      ]+[0-9a-f]+:[   ]+34b59073[     ]+csrw[         ]+mtval2,a1
+[      ]+[0-9a-f]+:[   ]+30a02573[     ]+csrr[         ]+a0,menvcfg
+[      ]+[0-9a-f]+:[   ]+30a59073[     ]+csrw[         ]+menvcfg,a1
+[      ]+[0-9a-f]+:[   ]+31a02573[     ]+csrr[         ]+a0,menvcfgh
+[      ]+[0-9a-f]+:[   ]+31a59073[     ]+csrw[         ]+menvcfgh,a1
+[      ]+[0-9a-f]+:[   ]+74702573[     ]+csrr[         ]+a0,mseccfg
+[      ]+[0-9a-f]+:[   ]+74759073[     ]+csrw[         ]+mseccfg,a1
+[      ]+[0-9a-f]+:[   ]+75702573[     ]+csrr[         ]+a0,mseccfgh
+[      ]+[0-9a-f]+:[   ]+75759073[     ]+csrw[         ]+mseccfgh,a1
+[      ]+[0-9a-f]+:[   ]+3a002573[     ]+csrr[         ]+a0,pmpcfg0
+[      ]+[0-9a-f]+:[   ]+3a059073[     ]+csrw[         ]+pmpcfg0,a1
+[      ]+[0-9a-f]+:[   ]+3a102573[     ]+csrr[         ]+a0,pmpcfg1
+[      ]+[0-9a-f]+:[   ]+3a159073[     ]+csrw[         ]+pmpcfg1,a1
+[      ]+[0-9a-f]+:[   ]+3a202573[     ]+csrr[         ]+a0,pmpcfg2
+[      ]+[0-9a-f]+:[   ]+3a259073[     ]+csrw[         ]+pmpcfg2,a1
+[      ]+[0-9a-f]+:[   ]+3a302573[     ]+csrr[         ]+a0,pmpcfg3
+[      ]+[0-9a-f]+:[   ]+3a359073[     ]+csrw[         ]+pmpcfg3,a1
+[      ]+[0-9a-f]+:[   ]+3a402573[     ]+csrr[         ]+a0,pmpcfg4
+[      ]+[0-9a-f]+:[   ]+3a459073[     ]+csrw[         ]+pmpcfg4,a1
+[      ]+[0-9a-f]+:[   ]+3a502573[     ]+csrr[         ]+a0,pmpcfg5
+[      ]+[0-9a-f]+:[   ]+3a559073[     ]+csrw[         ]+pmpcfg5,a1
+[      ]+[0-9a-f]+:[   ]+3a602573[     ]+csrr[         ]+a0,pmpcfg6
+[      ]+[0-9a-f]+:[   ]+3a659073[     ]+csrw[         ]+pmpcfg6,a1
+[      ]+[0-9a-f]+:[   ]+3a702573[     ]+csrr[         ]+a0,pmpcfg7
+[      ]+[0-9a-f]+:[   ]+3a759073[     ]+csrw[         ]+pmpcfg7,a1
+[      ]+[0-9a-f]+:[   ]+3a802573[     ]+csrr[         ]+a0,pmpcfg8
+[      ]+[0-9a-f]+:[   ]+3a859073[     ]+csrw[         ]+pmpcfg8,a1
+[      ]+[0-9a-f]+:[   ]+3a902573[     ]+csrr[         ]+a0,pmpcfg9
+[      ]+[0-9a-f]+:[   ]+3a959073[     ]+csrw[         ]+pmpcfg9,a1
+[      ]+[0-9a-f]+:[   ]+3aa02573[     ]+csrr[         ]+a0,pmpcfg10
+[      ]+[0-9a-f]+:[   ]+3aa59073[     ]+csrw[         ]+pmpcfg10,a1
+[      ]+[0-9a-f]+:[   ]+3ab02573[     ]+csrr[         ]+a0,pmpcfg11
+[      ]+[0-9a-f]+:[   ]+3ab59073[     ]+csrw[         ]+pmpcfg11,a1
+[      ]+[0-9a-f]+:[   ]+3ac02573[     ]+csrr[         ]+a0,pmpcfg12
+[      ]+[0-9a-f]+:[   ]+3ac59073[     ]+csrw[         ]+pmpcfg12,a1
+[      ]+[0-9a-f]+:[   ]+3ad02573[     ]+csrr[         ]+a0,pmpcfg13
+[      ]+[0-9a-f]+:[   ]+3ad59073[     ]+csrw[         ]+pmpcfg13,a1
+[      ]+[0-9a-f]+:[   ]+3ae02573[     ]+csrr[         ]+a0,pmpcfg14
+[      ]+[0-9a-f]+:[   ]+3ae59073[     ]+csrw[         ]+pmpcfg14,a1
+[      ]+[0-9a-f]+:[   ]+3af02573[     ]+csrr[         ]+a0,pmpcfg15
+[      ]+[0-9a-f]+:[   ]+3af59073[     ]+csrw[         ]+pmpcfg15,a1
+[      ]+[0-9a-f]+:[   ]+3b002573[     ]+csrr[         ]+a0,pmpaddr0
+[      ]+[0-9a-f]+:[   ]+3b059073[     ]+csrw[         ]+pmpaddr0,a1
+[      ]+[0-9a-f]+:[   ]+3b102573[     ]+csrr[         ]+a0,pmpaddr1
+[      ]+[0-9a-f]+:[   ]+3b159073[     ]+csrw[         ]+pmpaddr1,a1
+[      ]+[0-9a-f]+:[   ]+3b202573[     ]+csrr[         ]+a0,pmpaddr2
+[      ]+[0-9a-f]+:[   ]+3b259073[     ]+csrw[         ]+pmpaddr2,a1
+[      ]+[0-9a-f]+:[   ]+3b302573[     ]+csrr[         ]+a0,pmpaddr3
+[      ]+[0-9a-f]+:[   ]+3b359073[     ]+csrw[         ]+pmpaddr3,a1
+[      ]+[0-9a-f]+:[   ]+3b402573[     ]+csrr[         ]+a0,pmpaddr4
+[      ]+[0-9a-f]+:[   ]+3b459073[     ]+csrw[         ]+pmpaddr4,a1
+[      ]+[0-9a-f]+:[   ]+3b502573[     ]+csrr[         ]+a0,pmpaddr5
+[      ]+[0-9a-f]+:[   ]+3b559073[     ]+csrw[         ]+pmpaddr5,a1
+[      ]+[0-9a-f]+:[   ]+3b602573[     ]+csrr[         ]+a0,pmpaddr6
+[      ]+[0-9a-f]+:[   ]+3b659073[     ]+csrw[         ]+pmpaddr6,a1
+[      ]+[0-9a-f]+:[   ]+3b702573[     ]+csrr[         ]+a0,pmpaddr7
+[      ]+[0-9a-f]+:[   ]+3b759073[     ]+csrw[         ]+pmpaddr7,a1
+[      ]+[0-9a-f]+:[   ]+3b802573[     ]+csrr[         ]+a0,pmpaddr8
+[      ]+[0-9a-f]+:[   ]+3b859073[     ]+csrw[         ]+pmpaddr8,a1
+[      ]+[0-9a-f]+:[   ]+3b902573[     ]+csrr[         ]+a0,pmpaddr9
+[      ]+[0-9a-f]+:[   ]+3b959073[     ]+csrw[         ]+pmpaddr9,a1
+[      ]+[0-9a-f]+:[   ]+3ba02573[     ]+csrr[         ]+a0,pmpaddr10
+[      ]+[0-9a-f]+:[   ]+3ba59073[     ]+csrw[         ]+pmpaddr10,a1
+[      ]+[0-9a-f]+:[   ]+3bb02573[     ]+csrr[         ]+a0,pmpaddr11
+[      ]+[0-9a-f]+:[   ]+3bb59073[     ]+csrw[         ]+pmpaddr11,a1
+[      ]+[0-9a-f]+:[   ]+3bc02573[     ]+csrr[         ]+a0,pmpaddr12
+[      ]+[0-9a-f]+:[   ]+3bc59073[     ]+csrw[         ]+pmpaddr12,a1
+[      ]+[0-9a-f]+:[   ]+3bd02573[     ]+csrr[         ]+a0,pmpaddr13
+[      ]+[0-9a-f]+:[   ]+3bd59073[     ]+csrw[         ]+pmpaddr13,a1
+[      ]+[0-9a-f]+:[   ]+3be02573[     ]+csrr[         ]+a0,pmpaddr14
+[      ]+[0-9a-f]+:[   ]+3be59073[     ]+csrw[         ]+pmpaddr14,a1
+[      ]+[0-9a-f]+:[   ]+3bf02573[     ]+csrr[         ]+a0,pmpaddr15
+[      ]+[0-9a-f]+:[   ]+3bf59073[     ]+csrw[         ]+pmpaddr15,a1
+[      ]+[0-9a-f]+:[   ]+3c002573[     ]+csrr[         ]+a0,pmpaddr16
+[      ]+[0-9a-f]+:[   ]+3c059073[     ]+csrw[         ]+pmpaddr16,a1
+[      ]+[0-9a-f]+:[   ]+3c102573[     ]+csrr[         ]+a0,pmpaddr17
+[      ]+[0-9a-f]+:[   ]+3c159073[     ]+csrw[         ]+pmpaddr17,a1
+[      ]+[0-9a-f]+:[   ]+3c202573[     ]+csrr[         ]+a0,pmpaddr18
+[      ]+[0-9a-f]+:[   ]+3c259073[     ]+csrw[         ]+pmpaddr18,a1
+[      ]+[0-9a-f]+:[   ]+3c302573[     ]+csrr[         ]+a0,pmpaddr19
+[      ]+[0-9a-f]+:[   ]+3c359073[     ]+csrw[         ]+pmpaddr19,a1
+[      ]+[0-9a-f]+:[   ]+3c402573[     ]+csrr[         ]+a0,pmpaddr20
+[      ]+[0-9a-f]+:[   ]+3c459073[     ]+csrw[         ]+pmpaddr20,a1
+[      ]+[0-9a-f]+:[   ]+3c502573[     ]+csrr[         ]+a0,pmpaddr21
+[      ]+[0-9a-f]+:[   ]+3c559073[     ]+csrw[         ]+pmpaddr21,a1
+[      ]+[0-9a-f]+:[   ]+3c602573[     ]+csrr[         ]+a0,pmpaddr22
+[      ]+[0-9a-f]+:[   ]+3c659073[     ]+csrw[         ]+pmpaddr22,a1
+[      ]+[0-9a-f]+:[   ]+3c702573[     ]+csrr[         ]+a0,pmpaddr23
+[      ]+[0-9a-f]+:[   ]+3c759073[     ]+csrw[         ]+pmpaddr23,a1
+[      ]+[0-9a-f]+:[   ]+3c802573[     ]+csrr[         ]+a0,pmpaddr24
+[      ]+[0-9a-f]+:[   ]+3c859073[     ]+csrw[         ]+pmpaddr24,a1
+[      ]+[0-9a-f]+:[   ]+3c902573[     ]+csrr[         ]+a0,pmpaddr25
+[      ]+[0-9a-f]+:[   ]+3c959073[     ]+csrw[         ]+pmpaddr25,a1
+[      ]+[0-9a-f]+:[   ]+3ca02573[     ]+csrr[         ]+a0,pmpaddr26
+[      ]+[0-9a-f]+:[   ]+3ca59073[     ]+csrw[         ]+pmpaddr26,a1
+[      ]+[0-9a-f]+:[   ]+3cb02573[     ]+csrr[         ]+a0,pmpaddr27
+[      ]+[0-9a-f]+:[   ]+3cb59073[     ]+csrw[         ]+pmpaddr27,a1
+[      ]+[0-9a-f]+:[   ]+3cc02573[     ]+csrr[         ]+a0,pmpaddr28
+[      ]+[0-9a-f]+:[   ]+3cc59073[     ]+csrw[         ]+pmpaddr28,a1
+[      ]+[0-9a-f]+:[   ]+3cd02573[     ]+csrr[         ]+a0,pmpaddr29
+[      ]+[0-9a-f]+:[   ]+3cd59073[     ]+csrw[         ]+pmpaddr29,a1
+[      ]+[0-9a-f]+:[   ]+3ce02573[     ]+csrr[         ]+a0,pmpaddr30
+[      ]+[0-9a-f]+:[   ]+3ce59073[     ]+csrw[         ]+pmpaddr30,a1
+[      ]+[0-9a-f]+:[   ]+3cf02573[     ]+csrr[         ]+a0,pmpaddr31
+[      ]+[0-9a-f]+:[   ]+3cf59073[     ]+csrw[         ]+pmpaddr31,a1
+[      ]+[0-9a-f]+:[   ]+3d002573[     ]+csrr[         ]+a0,pmpaddr32
+[      ]+[0-9a-f]+:[   ]+3d059073[     ]+csrw[         ]+pmpaddr32,a1
+[      ]+[0-9a-f]+:[   ]+3d102573[     ]+csrr[         ]+a0,pmpaddr33
+[      ]+[0-9a-f]+:[   ]+3d159073[     ]+csrw[         ]+pmpaddr33,a1
+[      ]+[0-9a-f]+:[   ]+3d202573[     ]+csrr[         ]+a0,pmpaddr34
+[      ]+[0-9a-f]+:[   ]+3d259073[     ]+csrw[         ]+pmpaddr34,a1
+[      ]+[0-9a-f]+:[   ]+3d302573[     ]+csrr[         ]+a0,pmpaddr35
+[      ]+[0-9a-f]+:[   ]+3d359073[     ]+csrw[         ]+pmpaddr35,a1
+[      ]+[0-9a-f]+:[   ]+3d402573[     ]+csrr[         ]+a0,pmpaddr36
+[      ]+[0-9a-f]+:[   ]+3d459073[     ]+csrw[         ]+pmpaddr36,a1
+[      ]+[0-9a-f]+:[   ]+3d502573[     ]+csrr[         ]+a0,pmpaddr37
+[      ]+[0-9a-f]+:[   ]+3d559073[     ]+csrw[         ]+pmpaddr37,a1
+[      ]+[0-9a-f]+:[   ]+3d602573[     ]+csrr[         ]+a0,pmpaddr38
+[      ]+[0-9a-f]+:[   ]+3d659073[     ]+csrw[         ]+pmpaddr38,a1
+[      ]+[0-9a-f]+:[   ]+3d702573[     ]+csrr[         ]+a0,pmpaddr39
+[      ]+[0-9a-f]+:[   ]+3d759073[     ]+csrw[         ]+pmpaddr39,a1
+[      ]+[0-9a-f]+:[   ]+3d802573[     ]+csrr[         ]+a0,pmpaddr40
+[      ]+[0-9a-f]+:[   ]+3d859073[     ]+csrw[         ]+pmpaddr40,a1
+[      ]+[0-9a-f]+:[   ]+3d902573[     ]+csrr[         ]+a0,pmpaddr41
+[      ]+[0-9a-f]+:[   ]+3d959073[     ]+csrw[         ]+pmpaddr41,a1
+[      ]+[0-9a-f]+:[   ]+3da02573[     ]+csrr[         ]+a0,pmpaddr42
+[      ]+[0-9a-f]+:[   ]+3da59073[     ]+csrw[         ]+pmpaddr42,a1
+[      ]+[0-9a-f]+:[   ]+3db02573[     ]+csrr[         ]+a0,pmpaddr43
+[      ]+[0-9a-f]+:[   ]+3db59073[     ]+csrw[         ]+pmpaddr43,a1
+[      ]+[0-9a-f]+:[   ]+3dc02573[     ]+csrr[         ]+a0,pmpaddr44
+[      ]+[0-9a-f]+:[   ]+3dc59073[     ]+csrw[         ]+pmpaddr44,a1
+[      ]+[0-9a-f]+:[   ]+3dd02573[     ]+csrr[         ]+a0,pmpaddr45
+[      ]+[0-9a-f]+:[   ]+3dd59073[     ]+csrw[         ]+pmpaddr45,a1
+[      ]+[0-9a-f]+:[   ]+3de02573[     ]+csrr[         ]+a0,pmpaddr46
+[      ]+[0-9a-f]+:[   ]+3de59073[     ]+csrw[         ]+pmpaddr46,a1
+[      ]+[0-9a-f]+:[   ]+3df02573[     ]+csrr[         ]+a0,pmpaddr47
+[      ]+[0-9a-f]+:[   ]+3df59073[     ]+csrw[         ]+pmpaddr47,a1
+[      ]+[0-9a-f]+:[   ]+3e002573[     ]+csrr[         ]+a0,pmpaddr48
+[      ]+[0-9a-f]+:[   ]+3e059073[     ]+csrw[         ]+pmpaddr48,a1
+[      ]+[0-9a-f]+:[   ]+3e102573[     ]+csrr[         ]+a0,pmpaddr49
+[      ]+[0-9a-f]+:[   ]+3e159073[     ]+csrw[         ]+pmpaddr49,a1
+[      ]+[0-9a-f]+:[   ]+3e202573[     ]+csrr[         ]+a0,pmpaddr50
+[      ]+[0-9a-f]+:[   ]+3e259073[     ]+csrw[         ]+pmpaddr50,a1
+[      ]+[0-9a-f]+:[   ]+3e302573[     ]+csrr[         ]+a0,pmpaddr51
+[      ]+[0-9a-f]+:[   ]+3e359073[     ]+csrw[         ]+pmpaddr51,a1
+[      ]+[0-9a-f]+:[   ]+3e402573[     ]+csrr[         ]+a0,pmpaddr52
+[      ]+[0-9a-f]+:[   ]+3e459073[     ]+csrw[         ]+pmpaddr52,a1
+[      ]+[0-9a-f]+:[   ]+3e502573[     ]+csrr[         ]+a0,pmpaddr53
+[      ]+[0-9a-f]+:[   ]+3e559073[     ]+csrw[         ]+pmpaddr53,a1
+[      ]+[0-9a-f]+:[   ]+3e602573[     ]+csrr[         ]+a0,pmpaddr54
+[      ]+[0-9a-f]+:[   ]+3e659073[     ]+csrw[         ]+pmpaddr54,a1
+[      ]+[0-9a-f]+:[   ]+3e702573[     ]+csrr[         ]+a0,pmpaddr55
+[      ]+[0-9a-f]+:[   ]+3e759073[     ]+csrw[         ]+pmpaddr55,a1
+[      ]+[0-9a-f]+:[   ]+3e802573[     ]+csrr[         ]+a0,pmpaddr56
+[      ]+[0-9a-f]+:[   ]+3e859073[     ]+csrw[         ]+pmpaddr56,a1
+[      ]+[0-9a-f]+:[   ]+3e902573[     ]+csrr[         ]+a0,pmpaddr57
+[      ]+[0-9a-f]+:[   ]+3e959073[     ]+csrw[         ]+pmpaddr57,a1
+[      ]+[0-9a-f]+:[   ]+3ea02573[     ]+csrr[         ]+a0,pmpaddr58
+[      ]+[0-9a-f]+:[   ]+3ea59073[     ]+csrw[         ]+pmpaddr58,a1
+[      ]+[0-9a-f]+:[   ]+3eb02573[     ]+csrr[         ]+a0,pmpaddr59
+[      ]+[0-9a-f]+:[   ]+3eb59073[     ]+csrw[         ]+pmpaddr59,a1
+[      ]+[0-9a-f]+:[   ]+3ec02573[     ]+csrr[         ]+a0,pmpaddr60
+[      ]+[0-9a-f]+:[   ]+3ec59073[     ]+csrw[         ]+pmpaddr60,a1
+[      ]+[0-9a-f]+:[   ]+3ed02573[     ]+csrr[         ]+a0,pmpaddr61
+[      ]+[0-9a-f]+:[   ]+3ed59073[     ]+csrw[         ]+pmpaddr61,a1
+[      ]+[0-9a-f]+:[   ]+3ee02573[     ]+csrr[         ]+a0,pmpaddr62
+[      ]+[0-9a-f]+:[   ]+3ee59073[     ]+csrw[         ]+pmpaddr62,a1
+[      ]+[0-9a-f]+:[   ]+3ef02573[     ]+csrr[         ]+a0,pmpaddr63
+[      ]+[0-9a-f]+:[   ]+3ef59073[     ]+csrw[         ]+pmpaddr63,a1
+[      ]+[0-9a-f]+:[   ]+b0002573[     ]+csrr[         ]+a0,mcycle
+[      ]+[0-9a-f]+:[   ]+b0059073[     ]+csrw[         ]+mcycle,a1
+[      ]+[0-9a-f]+:[   ]+b0202573[     ]+csrr[         ]+a0,minstret
+[      ]+[0-9a-f]+:[   ]+b0259073[     ]+csrw[         ]+minstret,a1
+[      ]+[0-9a-f]+:[   ]+b0302573[     ]+csrr[         ]+a0,mhpmcounter3
+[      ]+[0-9a-f]+:[   ]+b0359073[     ]+csrw[         ]+mhpmcounter3,a1
+[      ]+[0-9a-f]+:[   ]+b0402573[     ]+csrr[         ]+a0,mhpmcounter4
+[      ]+[0-9a-f]+:[   ]+b0459073[     ]+csrw[         ]+mhpmcounter4,a1
+[      ]+[0-9a-f]+:[   ]+b0502573[     ]+csrr[         ]+a0,mhpmcounter5
+[      ]+[0-9a-f]+:[   ]+b0559073[     ]+csrw[         ]+mhpmcounter5,a1
+[      ]+[0-9a-f]+:[   ]+b0602573[     ]+csrr[         ]+a0,mhpmcounter6
+[      ]+[0-9a-f]+:[   ]+b0659073[     ]+csrw[         ]+mhpmcounter6,a1
+[      ]+[0-9a-f]+:[   ]+b0702573[     ]+csrr[         ]+a0,mhpmcounter7
+[      ]+[0-9a-f]+:[   ]+b0759073[     ]+csrw[         ]+mhpmcounter7,a1
+[      ]+[0-9a-f]+:[   ]+b0802573[     ]+csrr[         ]+a0,mhpmcounter8
+[      ]+[0-9a-f]+:[   ]+b0859073[     ]+csrw[         ]+mhpmcounter8,a1
+[      ]+[0-9a-f]+:[   ]+b0902573[     ]+csrr[         ]+a0,mhpmcounter9
+[      ]+[0-9a-f]+:[   ]+b0959073[     ]+csrw[         ]+mhpmcounter9,a1
+[      ]+[0-9a-f]+:[   ]+b0a02573[     ]+csrr[         ]+a0,mhpmcounter10
+[      ]+[0-9a-f]+:[   ]+b0a59073[     ]+csrw[         ]+mhpmcounter10,a1
+[      ]+[0-9a-f]+:[   ]+b0b02573[     ]+csrr[         ]+a0,mhpmcounter11
+[      ]+[0-9a-f]+:[   ]+b0b59073[     ]+csrw[         ]+mhpmcounter11,a1
+[      ]+[0-9a-f]+:[   ]+b0c02573[     ]+csrr[         ]+a0,mhpmcounter12
+[      ]+[0-9a-f]+:[   ]+b0c59073[     ]+csrw[         ]+mhpmcounter12,a1
+[      ]+[0-9a-f]+:[   ]+b0d02573[     ]+csrr[         ]+a0,mhpmcounter13
+[      ]+[0-9a-f]+:[   ]+b0d59073[     ]+csrw[         ]+mhpmcounter13,a1
+[      ]+[0-9a-f]+:[   ]+b0e02573[     ]+csrr[         ]+a0,mhpmcounter14
+[      ]+[0-9a-f]+:[   ]+b0e59073[     ]+csrw[         ]+mhpmcounter14,a1
+[      ]+[0-9a-f]+:[   ]+b0f02573[     ]+csrr[         ]+a0,mhpmcounter15
+[      ]+[0-9a-f]+:[   ]+b0f59073[     ]+csrw[         ]+mhpmcounter15,a1
+[      ]+[0-9a-f]+:[   ]+b1002573[     ]+csrr[         ]+a0,mhpmcounter16
+[      ]+[0-9a-f]+:[   ]+b1059073[     ]+csrw[         ]+mhpmcounter16,a1
+[      ]+[0-9a-f]+:[   ]+b1102573[     ]+csrr[         ]+a0,mhpmcounter17
+[      ]+[0-9a-f]+:[   ]+b1159073[     ]+csrw[         ]+mhpmcounter17,a1
+[      ]+[0-9a-f]+:[   ]+b1202573[     ]+csrr[         ]+a0,mhpmcounter18
+[      ]+[0-9a-f]+:[   ]+b1259073[     ]+csrw[         ]+mhpmcounter18,a1
+[      ]+[0-9a-f]+:[   ]+b1302573[     ]+csrr[         ]+a0,mhpmcounter19
+[      ]+[0-9a-f]+:[   ]+b1359073[     ]+csrw[         ]+mhpmcounter19,a1
+[      ]+[0-9a-f]+:[   ]+b1402573[     ]+csrr[         ]+a0,mhpmcounter20
+[      ]+[0-9a-f]+:[   ]+b1459073[     ]+csrw[         ]+mhpmcounter20,a1
+[      ]+[0-9a-f]+:[   ]+b1502573[     ]+csrr[         ]+a0,mhpmcounter21
+[      ]+[0-9a-f]+:[   ]+b1559073[     ]+csrw[         ]+mhpmcounter21,a1
+[      ]+[0-9a-f]+:[   ]+b1602573[     ]+csrr[         ]+a0,mhpmcounter22
+[      ]+[0-9a-f]+:[   ]+b1659073[     ]+csrw[         ]+mhpmcounter22,a1
+[      ]+[0-9a-f]+:[   ]+b1702573[     ]+csrr[         ]+a0,mhpmcounter23
+[      ]+[0-9a-f]+:[   ]+b1759073[     ]+csrw[         ]+mhpmcounter23,a1
+[      ]+[0-9a-f]+:[   ]+b1802573[     ]+csrr[         ]+a0,mhpmcounter24
+[      ]+[0-9a-f]+:[   ]+b1859073[     ]+csrw[         ]+mhpmcounter24,a1
+[      ]+[0-9a-f]+:[   ]+b1902573[     ]+csrr[         ]+a0,mhpmcounter25
+[      ]+[0-9a-f]+:[   ]+b1959073[     ]+csrw[         ]+mhpmcounter25,a1
+[      ]+[0-9a-f]+:[   ]+b1a02573[     ]+csrr[         ]+a0,mhpmcounter26
+[      ]+[0-9a-f]+:[   ]+b1a59073[     ]+csrw[         ]+mhpmcounter26,a1
+[      ]+[0-9a-f]+:[   ]+b1b02573[     ]+csrr[         ]+a0,mhpmcounter27
+[      ]+[0-9a-f]+:[   ]+b1b59073[     ]+csrw[         ]+mhpmcounter27,a1
+[      ]+[0-9a-f]+:[   ]+b1c02573[     ]+csrr[         ]+a0,mhpmcounter28
+[      ]+[0-9a-f]+:[   ]+b1c59073[     ]+csrw[         ]+mhpmcounter28,a1
+[      ]+[0-9a-f]+:[   ]+b1d02573[     ]+csrr[         ]+a0,mhpmcounter29
+[      ]+[0-9a-f]+:[   ]+b1d59073[     ]+csrw[         ]+mhpmcounter29,a1
+[      ]+[0-9a-f]+:[   ]+b1e02573[     ]+csrr[         ]+a0,mhpmcounter30
+[      ]+[0-9a-f]+:[   ]+b1e59073[     ]+csrw[         ]+mhpmcounter30,a1
+[      ]+[0-9a-f]+:[   ]+b1f02573[     ]+csrr[         ]+a0,mhpmcounter31
+[      ]+[0-9a-f]+:[   ]+b1f59073[     ]+csrw[         ]+mhpmcounter31,a1
+[      ]+[0-9a-f]+:[   ]+b8002573[     ]+csrr[         ]+a0,mcycleh
+[      ]+[0-9a-f]+:[   ]+b8059073[     ]+csrw[         ]+mcycleh,a1
+[      ]+[0-9a-f]+:[   ]+b8202573[     ]+csrr[         ]+a0,minstreth
+[      ]+[0-9a-f]+:[   ]+b8259073[     ]+csrw[         ]+minstreth,a1
+[      ]+[0-9a-f]+:[   ]+b8302573[     ]+csrr[         ]+a0,mhpmcounter3h
+[      ]+[0-9a-f]+:[   ]+b8359073[     ]+csrw[         ]+mhpmcounter3h,a1
+[      ]+[0-9a-f]+:[   ]+b8402573[     ]+csrr[         ]+a0,mhpmcounter4h
+[      ]+[0-9a-f]+:[   ]+b8459073[     ]+csrw[         ]+mhpmcounter4h,a1
+[      ]+[0-9a-f]+:[   ]+b8502573[     ]+csrr[         ]+a0,mhpmcounter5h
+[      ]+[0-9a-f]+:[   ]+b8559073[     ]+csrw[         ]+mhpmcounter5h,a1
+[      ]+[0-9a-f]+:[   ]+b8602573[     ]+csrr[         ]+a0,mhpmcounter6h
+[      ]+[0-9a-f]+:[   ]+b8659073[     ]+csrw[         ]+mhpmcounter6h,a1
+[      ]+[0-9a-f]+:[   ]+b8702573[     ]+csrr[         ]+a0,mhpmcounter7h
+[      ]+[0-9a-f]+:[   ]+b8759073[     ]+csrw[         ]+mhpmcounter7h,a1
+[      ]+[0-9a-f]+:[   ]+b8802573[     ]+csrr[         ]+a0,mhpmcounter8h
+[      ]+[0-9a-f]+:[   ]+b8859073[     ]+csrw[         ]+mhpmcounter8h,a1
+[      ]+[0-9a-f]+:[   ]+b8902573[     ]+csrr[         ]+a0,mhpmcounter9h
+[      ]+[0-9a-f]+:[   ]+b8959073[     ]+csrw[         ]+mhpmcounter9h,a1
+[      ]+[0-9a-f]+:[   ]+b8a02573[     ]+csrr[         ]+a0,mhpmcounter10h
+[      ]+[0-9a-f]+:[   ]+b8a59073[     ]+csrw[         ]+mhpmcounter10h,a1
+[      ]+[0-9a-f]+:[   ]+b8b02573[     ]+csrr[         ]+a0,mhpmcounter11h
+[      ]+[0-9a-f]+:[   ]+b8b59073[     ]+csrw[         ]+mhpmcounter11h,a1
+[      ]+[0-9a-f]+:[   ]+b8c02573[     ]+csrr[         ]+a0,mhpmcounter12h
+[      ]+[0-9a-f]+:[   ]+b8c59073[     ]+csrw[         ]+mhpmcounter12h,a1
+[      ]+[0-9a-f]+:[   ]+b8d02573[     ]+csrr[         ]+a0,mhpmcounter13h
+[      ]+[0-9a-f]+:[   ]+b8d59073[     ]+csrw[         ]+mhpmcounter13h,a1
+[      ]+[0-9a-f]+:[   ]+b8e02573[     ]+csrr[         ]+a0,mhpmcounter14h
+[      ]+[0-9a-f]+:[   ]+b8e59073[     ]+csrw[         ]+mhpmcounter14h,a1
+[      ]+[0-9a-f]+:[   ]+b8f02573[     ]+csrr[         ]+a0,mhpmcounter15h
+[      ]+[0-9a-f]+:[   ]+b8f59073[     ]+csrw[         ]+mhpmcounter15h,a1
+[      ]+[0-9a-f]+:[   ]+b9002573[     ]+csrr[         ]+a0,mhpmcounter16h
+[      ]+[0-9a-f]+:[   ]+b9059073[     ]+csrw[         ]+mhpmcounter16h,a1
+[      ]+[0-9a-f]+:[   ]+b9102573[     ]+csrr[         ]+a0,mhpmcounter17h
+[      ]+[0-9a-f]+:[   ]+b9159073[     ]+csrw[         ]+mhpmcounter17h,a1
+[      ]+[0-9a-f]+:[   ]+b9202573[     ]+csrr[         ]+a0,mhpmcounter18h
+[      ]+[0-9a-f]+:[   ]+b9259073[     ]+csrw[         ]+mhpmcounter18h,a1
+[      ]+[0-9a-f]+:[   ]+b9302573[     ]+csrr[         ]+a0,mhpmcounter19h
+[      ]+[0-9a-f]+:[   ]+b9359073[     ]+csrw[         ]+mhpmcounter19h,a1
+[      ]+[0-9a-f]+:[   ]+b9402573[     ]+csrr[         ]+a0,mhpmcounter20h
+[      ]+[0-9a-f]+:[   ]+b9459073[     ]+csrw[         ]+mhpmcounter20h,a1
+[      ]+[0-9a-f]+:[   ]+b9502573[     ]+csrr[         ]+a0,mhpmcounter21h
+[      ]+[0-9a-f]+:[   ]+b9559073[     ]+csrw[         ]+mhpmcounter21h,a1
+[      ]+[0-9a-f]+:[   ]+b9602573[     ]+csrr[         ]+a0,mhpmcounter22h
+[      ]+[0-9a-f]+:[   ]+b9659073[     ]+csrw[         ]+mhpmcounter22h,a1
+[      ]+[0-9a-f]+:[   ]+b9702573[     ]+csrr[         ]+a0,mhpmcounter23h
+[      ]+[0-9a-f]+:[   ]+b9759073[     ]+csrw[         ]+mhpmcounter23h,a1
+[      ]+[0-9a-f]+:[   ]+b9802573[     ]+csrr[         ]+a0,mhpmcounter24h
+[      ]+[0-9a-f]+:[   ]+b9859073[     ]+csrw[         ]+mhpmcounter24h,a1
+[      ]+[0-9a-f]+:[   ]+b9902573[     ]+csrr[         ]+a0,mhpmcounter25h
+[      ]+[0-9a-f]+:[   ]+b9959073[     ]+csrw[         ]+mhpmcounter25h,a1
+[      ]+[0-9a-f]+:[   ]+b9a02573[     ]+csrr[         ]+a0,mhpmcounter26h
+[      ]+[0-9a-f]+:[   ]+b9a59073[     ]+csrw[         ]+mhpmcounter26h,a1
+[      ]+[0-9a-f]+:[   ]+b9b02573[     ]+csrr[         ]+a0,mhpmcounter27h
+[      ]+[0-9a-f]+:[   ]+b9b59073[     ]+csrw[         ]+mhpmcounter27h,a1
+[      ]+[0-9a-f]+:[   ]+b9c02573[     ]+csrr[         ]+a0,mhpmcounter28h
+[      ]+[0-9a-f]+:[   ]+b9c59073[     ]+csrw[         ]+mhpmcounter28h,a1
+[      ]+[0-9a-f]+:[   ]+b9d02573[     ]+csrr[         ]+a0,mhpmcounter29h
+[      ]+[0-9a-f]+:[   ]+b9d59073[     ]+csrw[         ]+mhpmcounter29h,a1
+[      ]+[0-9a-f]+:[   ]+b9e02573[     ]+csrr[         ]+a0,mhpmcounter30h
+[      ]+[0-9a-f]+:[   ]+b9e59073[     ]+csrw[         ]+mhpmcounter30h,a1
+[      ]+[0-9a-f]+:[   ]+b9f02573[     ]+csrr[         ]+a0,mhpmcounter31h
+[      ]+[0-9a-f]+:[   ]+b9f59073[     ]+csrw[         ]+mhpmcounter31h,a1
+[      ]+[0-9a-f]+:[   ]+32002573[     ]+csrr[         ]+a0,mcountinhibit
+[      ]+[0-9a-f]+:[   ]+32059073[     ]+csrw[         ]+mcountinhibit,a1
+[      ]+[0-9a-f]+:[   ]+32302573[     ]+csrr[         ]+a0,mhpmevent3
+[      ]+[0-9a-f]+:[   ]+32359073[     ]+csrw[         ]+mhpmevent3,a1
+[      ]+[0-9a-f]+:[   ]+32402573[     ]+csrr[         ]+a0,mhpmevent4
+[      ]+[0-9a-f]+:[   ]+32459073[     ]+csrw[         ]+mhpmevent4,a1
+[      ]+[0-9a-f]+:[   ]+32502573[     ]+csrr[         ]+a0,mhpmevent5
+[      ]+[0-9a-f]+:[   ]+32559073[     ]+csrw[         ]+mhpmevent5,a1
+[      ]+[0-9a-f]+:[   ]+32602573[     ]+csrr[         ]+a0,mhpmevent6
+[      ]+[0-9a-f]+:[   ]+32659073[     ]+csrw[         ]+mhpmevent6,a1
+[      ]+[0-9a-f]+:[   ]+32702573[     ]+csrr[         ]+a0,mhpmevent7
+[      ]+[0-9a-f]+:[   ]+32759073[     ]+csrw[         ]+mhpmevent7,a1
+[      ]+[0-9a-f]+:[   ]+32802573[     ]+csrr[         ]+a0,mhpmevent8
+[      ]+[0-9a-f]+:[   ]+32859073[     ]+csrw[         ]+mhpmevent8,a1
+[      ]+[0-9a-f]+:[   ]+32902573[     ]+csrr[         ]+a0,mhpmevent9
+[      ]+[0-9a-f]+:[   ]+32959073[     ]+csrw[         ]+mhpmevent9,a1
+[      ]+[0-9a-f]+:[   ]+32a02573[     ]+csrr[         ]+a0,mhpmevent10
+[      ]+[0-9a-f]+:[   ]+32a59073[     ]+csrw[         ]+mhpmevent10,a1
+[      ]+[0-9a-f]+:[   ]+32b02573[     ]+csrr[         ]+a0,mhpmevent11
+[      ]+[0-9a-f]+:[   ]+32b59073[     ]+csrw[         ]+mhpmevent11,a1
+[      ]+[0-9a-f]+:[   ]+32c02573[     ]+csrr[         ]+a0,mhpmevent12
+[      ]+[0-9a-f]+:[   ]+32c59073[     ]+csrw[         ]+mhpmevent12,a1
+[      ]+[0-9a-f]+:[   ]+32d02573[     ]+csrr[         ]+a0,mhpmevent13
+[      ]+[0-9a-f]+:[   ]+32d59073[     ]+csrw[         ]+mhpmevent13,a1
+[      ]+[0-9a-f]+:[   ]+32e02573[     ]+csrr[         ]+a0,mhpmevent14
+[      ]+[0-9a-f]+:[   ]+32e59073[     ]+csrw[         ]+mhpmevent14,a1
+[      ]+[0-9a-f]+:[   ]+32f02573[     ]+csrr[         ]+a0,mhpmevent15
+[      ]+[0-9a-f]+:[   ]+32f59073[     ]+csrw[         ]+mhpmevent15,a1
+[      ]+[0-9a-f]+:[   ]+33002573[     ]+csrr[         ]+a0,mhpmevent16
+[      ]+[0-9a-f]+:[   ]+33059073[     ]+csrw[         ]+mhpmevent16,a1
+[      ]+[0-9a-f]+:[   ]+33102573[     ]+csrr[         ]+a0,mhpmevent17
+[      ]+[0-9a-f]+:[   ]+33159073[     ]+csrw[         ]+mhpmevent17,a1
+[      ]+[0-9a-f]+:[   ]+33202573[     ]+csrr[         ]+a0,mhpmevent18
+[      ]+[0-9a-f]+:[   ]+33259073[     ]+csrw[         ]+mhpmevent18,a1
+[      ]+[0-9a-f]+:[   ]+33302573[     ]+csrr[         ]+a0,mhpmevent19
+[      ]+[0-9a-f]+:[   ]+33359073[     ]+csrw[         ]+mhpmevent19,a1
+[      ]+[0-9a-f]+:[   ]+33402573[     ]+csrr[         ]+a0,mhpmevent20
+[      ]+[0-9a-f]+:[   ]+33459073[     ]+csrw[         ]+mhpmevent20,a1
+[      ]+[0-9a-f]+:[   ]+33502573[     ]+csrr[         ]+a0,mhpmevent21
+[      ]+[0-9a-f]+:[   ]+33559073[     ]+csrw[         ]+mhpmevent21,a1
+[      ]+[0-9a-f]+:[   ]+33602573[     ]+csrr[         ]+a0,mhpmevent22
+[      ]+[0-9a-f]+:[   ]+33659073[     ]+csrw[         ]+mhpmevent22,a1
+[      ]+[0-9a-f]+:[   ]+33702573[     ]+csrr[         ]+a0,mhpmevent23
+[      ]+[0-9a-f]+:[   ]+33759073[     ]+csrw[         ]+mhpmevent23,a1
+[      ]+[0-9a-f]+:[   ]+33802573[     ]+csrr[         ]+a0,mhpmevent24
+[      ]+[0-9a-f]+:[   ]+33859073[     ]+csrw[         ]+mhpmevent24,a1
+[      ]+[0-9a-f]+:[   ]+33902573[     ]+csrr[         ]+a0,mhpmevent25
+[      ]+[0-9a-f]+:[   ]+33959073[     ]+csrw[         ]+mhpmevent25,a1
+[      ]+[0-9a-f]+:[   ]+33a02573[     ]+csrr[         ]+a0,mhpmevent26
+[      ]+[0-9a-f]+:[   ]+33a59073[     ]+csrw[         ]+mhpmevent26,a1
+[      ]+[0-9a-f]+:[   ]+33b02573[     ]+csrr[         ]+a0,mhpmevent27
+[      ]+[0-9a-f]+:[   ]+33b59073[     ]+csrw[         ]+mhpmevent27,a1
+[      ]+[0-9a-f]+:[   ]+33c02573[     ]+csrr[         ]+a0,mhpmevent28
+[      ]+[0-9a-f]+:[   ]+33c59073[     ]+csrw[         ]+mhpmevent28,a1
+[      ]+[0-9a-f]+:[   ]+33d02573[     ]+csrr[         ]+a0,mhpmevent29
+[      ]+[0-9a-f]+:[   ]+33d59073[     ]+csrw[         ]+mhpmevent29,a1
+[      ]+[0-9a-f]+:[   ]+33e02573[     ]+csrr[         ]+a0,mhpmevent30
+[      ]+[0-9a-f]+:[   ]+33e59073[     ]+csrw[         ]+mhpmevent30,a1
+[      ]+[0-9a-f]+:[   ]+33f02573[     ]+csrr[         ]+a0,mhpmevent31
+[      ]+[0-9a-f]+:[   ]+33f59073[     ]+csrw[         ]+mhpmevent31,a1
+[      ]+[0-9a-f]+:[   ]+60002573[     ]+csrr[         ]+a0,hstatus
+[      ]+[0-9a-f]+:[   ]+60059073[     ]+csrw[         ]+hstatus,a1
+[      ]+[0-9a-f]+:[   ]+60202573[     ]+csrr[         ]+a0,hedeleg
+[      ]+[0-9a-f]+:[   ]+60259073[     ]+csrw[         ]+hedeleg,a1
+[      ]+[0-9a-f]+:[   ]+61202573[     ]+csrr[         ]+a0,hedelegh
+[      ]+[0-9a-f]+:[   ]+61259073[     ]+csrw[         ]+hedelegh,a1
+[      ]+[0-9a-f]+:[   ]+60302573[     ]+csrr[         ]+a0,hideleg
+[      ]+[0-9a-f]+:[   ]+60359073[     ]+csrw[         ]+hideleg,a1
+[      ]+[0-9a-f]+:[   ]+60402573[     ]+csrr[         ]+a0,hie
+[      ]+[0-9a-f]+:[   ]+60459073[     ]+csrw[         ]+hie,a1
+[      ]+[0-9a-f]+:[   ]+60602573[     ]+csrr[         ]+a0,hcounteren
+[      ]+[0-9a-f]+:[   ]+60659073[     ]+csrw[         ]+hcounteren,a1
+[      ]+[0-9a-f]+:[   ]+60702573[     ]+csrr[         ]+a0,hgeie
+[      ]+[0-9a-f]+:[   ]+60759073[     ]+csrw[         ]+hgeie,a1
+[      ]+[0-9a-f]+:[   ]+64302573[     ]+csrr[         ]+a0,htval
+[      ]+[0-9a-f]+:[   ]+64359073[     ]+csrw[         ]+htval,a1
+[      ]+[0-9a-f]+:[   ]+64402573[     ]+csrr[         ]+a0,hip
+[      ]+[0-9a-f]+:[   ]+64459073[     ]+csrw[         ]+hip,a1
+[      ]+[0-9a-f]+:[   ]+64502573[     ]+csrr[         ]+a0,hvip
+[      ]+[0-9a-f]+:[   ]+64559073[     ]+csrw[         ]+hvip,a1
+[      ]+[0-9a-f]+:[   ]+64a02573[     ]+csrr[         ]+a0,htinst
+[      ]+[0-9a-f]+:[   ]+64a59073[     ]+csrw[         ]+htinst,a1
+[      ]+[0-9a-f]+:[   ]+e1202573[     ]+csrr[         ]+a0,hgeip
+[      ]+[0-9a-f]+:[   ]+e1259073[     ]+csrw[         ]+hgeip,a1
+[      ]+[0-9a-f]+:[   ]+60a02573[     ]+csrr[         ]+a0,henvcfg
+[      ]+[0-9a-f]+:[   ]+60a59073[     ]+csrw[         ]+henvcfg,a1
+[      ]+[0-9a-f]+:[   ]+61a02573[     ]+csrr[         ]+a0,henvcfgh
+[      ]+[0-9a-f]+:[   ]+61a59073[     ]+csrw[         ]+henvcfgh,a1
+[      ]+[0-9a-f]+:[   ]+68002573[     ]+csrr[         ]+a0,hgatp
+[      ]+[0-9a-f]+:[   ]+68059073[     ]+csrw[         ]+hgatp,a1
+[      ]+[0-9a-f]+:[   ]+60502573[     ]+csrr[         ]+a0,htimedelta
+[      ]+[0-9a-f]+:[   ]+60559073[     ]+csrw[         ]+htimedelta,a1
+[      ]+[0-9a-f]+:[   ]+61502573[     ]+csrr[         ]+a0,htimedeltah
+[      ]+[0-9a-f]+:[   ]+61559073[     ]+csrw[         ]+htimedeltah,a1
+[      ]+[0-9a-f]+:[   ]+20002573[     ]+csrr[         ]+a0,vsstatus
+[      ]+[0-9a-f]+:[   ]+20059073[     ]+csrw[         ]+vsstatus,a1
+[      ]+[0-9a-f]+:[   ]+20402573[     ]+csrr[         ]+a0,vsie
+[      ]+[0-9a-f]+:[   ]+20459073[     ]+csrw[         ]+vsie,a1
+[      ]+[0-9a-f]+:[   ]+20502573[     ]+csrr[         ]+a0,vstvec
+[      ]+[0-9a-f]+:[   ]+20559073[     ]+csrw[         ]+vstvec,a1
+[      ]+[0-9a-f]+:[   ]+24002573[     ]+csrr[         ]+a0,vsscratch
+[      ]+[0-9a-f]+:[   ]+24059073[     ]+csrw[         ]+vsscratch,a1
+[      ]+[0-9a-f]+:[   ]+24102573[     ]+csrr[         ]+a0,vsepc
+[      ]+[0-9a-f]+:[   ]+24159073[     ]+csrw[         ]+vsepc,a1
+[      ]+[0-9a-f]+:[   ]+24202573[     ]+csrr[         ]+a0,vscause
+[      ]+[0-9a-f]+:[   ]+24259073[     ]+csrw[         ]+vscause,a1
+[      ]+[0-9a-f]+:[   ]+24302573[     ]+csrr[         ]+a0,vstval
+[      ]+[0-9a-f]+:[   ]+24359073[     ]+csrw[         ]+vstval,a1
+[      ]+[0-9a-f]+:[   ]+24402573[     ]+csrr[         ]+a0,vsip
+[      ]+[0-9a-f]+:[   ]+24459073[     ]+csrw[         ]+vsip,a1
+[      ]+[0-9a-f]+:[   ]+28002573[     ]+csrr[         ]+a0,vsatp
+[      ]+[0-9a-f]+:[   ]+28059073[     ]+csrw[         ]+vsatp,a1
+[      ]+[0-9a-f]+:[   ]+35002573[     ]+csrr[         ]+a0,miselect
+[      ]+[0-9a-f]+:[   ]+35059073[     ]+csrw[         ]+miselect,a1
+[      ]+[0-9a-f]+:[   ]+35102573[     ]+csrr[         ]+a0,mireg
+[      ]+[0-9a-f]+:[   ]+35159073[     ]+csrw[         ]+mireg,a1
+[      ]+[0-9a-f]+:[   ]+35c02573[     ]+csrr[         ]+a0,mtopei
+[      ]+[0-9a-f]+:[   ]+35c59073[     ]+csrw[         ]+mtopei,a1
+[      ]+[0-9a-f]+:[   ]+fb002573[     ]+csrr[         ]+a0,mtopi
+[      ]+[0-9a-f]+:[   ]+fb059073[     ]+csrw[         ]+mtopi,a1
+[      ]+[0-9a-f]+:[   ]+30802573[     ]+csrr[         ]+a0,mvien
+[      ]+[0-9a-f]+:[   ]+30859073[     ]+csrw[         ]+mvien,a1
+[      ]+[0-9a-f]+:[   ]+30902573[     ]+csrr[         ]+a0,mvip
+[      ]+[0-9a-f]+:[   ]+30959073[     ]+csrw[         ]+mvip,a1
+[      ]+[0-9a-f]+:[   ]+31302573[     ]+csrr[         ]+a0,midelegh
+[      ]+[0-9a-f]+:[   ]+31359073[     ]+csrw[         ]+midelegh,a1
+[      ]+[0-9a-f]+:[   ]+31402573[     ]+csrr[         ]+a0,mieh
+[      ]+[0-9a-f]+:[   ]+31459073[     ]+csrw[         ]+mieh,a1
+[      ]+[0-9a-f]+:[   ]+31802573[     ]+csrr[         ]+a0,mvienh
+[      ]+[0-9a-f]+:[   ]+31859073[     ]+csrw[         ]+mvienh,a1
+[      ]+[0-9a-f]+:[   ]+31902573[     ]+csrr[         ]+a0,mviph
+[      ]+[0-9a-f]+:[   ]+31959073[     ]+csrw[         ]+mviph,a1
+[      ]+[0-9a-f]+:[   ]+35402573[     ]+csrr[         ]+a0,miph
+[      ]+[0-9a-f]+:[   ]+35459073[     ]+csrw[         ]+miph,a1
+[      ]+[0-9a-f]+:[   ]+35002573[     ]+csrr[         ]+a0,miselect
+[      ]+[0-9a-f]+:[   ]+35059073[     ]+csrw[         ]+miselect,a1
+[      ]+[0-9a-f]+:[   ]+35102573[     ]+csrr[         ]+a0,mireg
+[      ]+[0-9a-f]+:[   ]+35159073[     ]+csrw[         ]+mireg,a1
+[      ]+[0-9a-f]+:[   ]+35202573[     ]+csrr[         ]+a0,mireg2
+[      ]+[0-9a-f]+:[   ]+35259073[     ]+csrw[         ]+mireg2,a1
+[      ]+[0-9a-f]+:[   ]+35302573[     ]+csrr[         ]+a0,mireg3
+[      ]+[0-9a-f]+:[   ]+35359073[     ]+csrw[         ]+mireg3,a1
+[      ]+[0-9a-f]+:[   ]+35502573[     ]+csrr[         ]+a0,mireg4
+[      ]+[0-9a-f]+:[   ]+35559073[     ]+csrw[         ]+mireg4,a1
+[      ]+[0-9a-f]+:[   ]+35602573[     ]+csrr[         ]+a0,mireg5
+[      ]+[0-9a-f]+:[   ]+35659073[     ]+csrw[         ]+mireg5,a1
+[      ]+[0-9a-f]+:[   ]+35702573[     ]+csrr[         ]+a0,mireg6
+[      ]+[0-9a-f]+:[   ]+35759073[     ]+csrw[         ]+mireg6,a1
+[      ]+[0-9a-f]+:[   ]+32102573[     ]+csrr[         ]+a0,mcyclecfg
+[      ]+[0-9a-f]+:[   ]+32159073[     ]+csrw[         ]+mcyclecfg,a1
+[      ]+[0-9a-f]+:[   ]+32202573[     ]+csrr[         ]+a0,minstretcfg
+[      ]+[0-9a-f]+:[   ]+32259073[     ]+csrw[         ]+minstretcfg,a1
+[      ]+[0-9a-f]+:[   ]+72102573[     ]+csrr[         ]+a0,mcyclecfgh
+[      ]+[0-9a-f]+:[   ]+72159073[     ]+csrw[         ]+mcyclecfgh,a1
+[      ]+[0-9a-f]+:[   ]+72202573[     ]+csrr[         ]+a0,minstretcfgh
+[      ]+[0-9a-f]+:[   ]+72259073[     ]+csrw[         ]+minstretcfgh,a1
+[      ]+[0-9a-f]+:[   ]+74102573[     ]+csrr[         ]+a0,mnepc
+[      ]+[0-9a-f]+:[   ]+74159073[     ]+csrw[         ]+mnepc,a1
+[      ]+[0-9a-f]+:[   ]+74202573[     ]+csrr[         ]+a0,mncause
+[      ]+[0-9a-f]+:[   ]+74259073[     ]+csrw[         ]+mncause,a1
+[      ]+[0-9a-f]+:[   ]+74002573[     ]+csrr[         ]+a0,mnscratch
+[      ]+[0-9a-f]+:[   ]+74059073[     ]+csrw[         ]+mnscratch,a1
+[      ]+[0-9a-f]+:[   ]+74402573[     ]+csrr[         ]+a0,mnstatus
+[      ]+[0-9a-f]+:[   ]+74459073[     ]+csrw[         ]+mnstatus,a1
+[      ]+[0-9a-f]+:[   ]+30c02573[     ]+csrr[         ]+a0,mstateen0
+[      ]+[0-9a-f]+:[   ]+30c59073[     ]+csrw[         ]+mstateen0,a1
+[      ]+[0-9a-f]+:[   ]+30d02573[     ]+csrr[         ]+a0,mstateen1
+[      ]+[0-9a-f]+:[   ]+30d59073[     ]+csrw[         ]+mstateen1,a1
+[      ]+[0-9a-f]+:[   ]+30e02573[     ]+csrr[         ]+a0,mstateen2
+[      ]+[0-9a-f]+:[   ]+30e59073[     ]+csrw[         ]+mstateen2,a1
+[      ]+[0-9a-f]+:[   ]+30f02573[     ]+csrr[         ]+a0,mstateen3
+[      ]+[0-9a-f]+:[   ]+30f59073[     ]+csrw[         ]+mstateen3,a1
+[      ]+[0-9a-f]+:[   ]+10c02573[     ]+csrr[         ]+a0,sstateen0
+[      ]+[0-9a-f]+:[   ]+10c59073[     ]+csrw[         ]+sstateen0,a1
+[      ]+[0-9a-f]+:[   ]+10d02573[     ]+csrr[         ]+a0,sstateen1
+[      ]+[0-9a-f]+:[   ]+10d59073[     ]+csrw[         ]+sstateen1,a1
+[      ]+[0-9a-f]+:[   ]+10e02573[     ]+csrr[         ]+a0,sstateen2
+[      ]+[0-9a-f]+:[   ]+10e59073[     ]+csrw[         ]+sstateen2,a1
+[      ]+[0-9a-f]+:[   ]+10f02573[     ]+csrr[         ]+a0,sstateen3
+[      ]+[0-9a-f]+:[   ]+10f59073[     ]+csrw[         ]+sstateen3,a1
+[      ]+[0-9a-f]+:[   ]+60c02573[     ]+csrr[         ]+a0,hstateen0
+[      ]+[0-9a-f]+:[   ]+60c59073[     ]+csrw[         ]+hstateen0,a1
+[      ]+[0-9a-f]+:[   ]+60d02573[     ]+csrr[         ]+a0,hstateen1
+[      ]+[0-9a-f]+:[   ]+60d59073[     ]+csrw[         ]+hstateen1,a1
+[      ]+[0-9a-f]+:[   ]+60e02573[     ]+csrr[         ]+a0,hstateen2
+[      ]+[0-9a-f]+:[   ]+60e59073[     ]+csrw[         ]+hstateen2,a1
+[      ]+[0-9a-f]+:[   ]+60f02573[     ]+csrr[         ]+a0,hstateen3
+[      ]+[0-9a-f]+:[   ]+60f59073[     ]+csrw[         ]+hstateen3,a1
+[      ]+[0-9a-f]+:[   ]+31c02573[     ]+csrr[         ]+a0,mstateen0h
+[      ]+[0-9a-f]+:[   ]+31c59073[     ]+csrw[         ]+mstateen0h,a1
+[      ]+[0-9a-f]+:[   ]+31d02573[     ]+csrr[         ]+a0,mstateen1h
+[      ]+[0-9a-f]+:[   ]+31d59073[     ]+csrw[         ]+mstateen1h,a1
+[      ]+[0-9a-f]+:[   ]+31e02573[     ]+csrr[         ]+a0,mstateen2h
+[      ]+[0-9a-f]+:[   ]+31e59073[     ]+csrw[         ]+mstateen2h,a1
+[      ]+[0-9a-f]+:[   ]+31f02573[     ]+csrr[         ]+a0,mstateen3h
+[      ]+[0-9a-f]+:[   ]+31f59073[     ]+csrw[         ]+mstateen3h,a1
+[      ]+[0-9a-f]+:[   ]+61c02573[     ]+csrr[         ]+a0,hstateen0h
+[      ]+[0-9a-f]+:[   ]+61c59073[     ]+csrw[         ]+hstateen0h,a1
+[      ]+[0-9a-f]+:[   ]+61d02573[     ]+csrr[         ]+a0,hstateen1h
+[      ]+[0-9a-f]+:[   ]+61d59073[     ]+csrw[         ]+hstateen1h,a1
+[      ]+[0-9a-f]+:[   ]+61e02573[     ]+csrr[         ]+a0,hstateen2h
+[      ]+[0-9a-f]+:[   ]+61e59073[     ]+csrw[         ]+hstateen2h,a1
+[      ]+[0-9a-f]+:[   ]+61f02573[     ]+csrr[         ]+a0,hstateen3h
+[      ]+[0-9a-f]+:[   ]+61f59073[     ]+csrw[         ]+hstateen3h,a1
+[      ]+[0-9a-f]+:[   ]+15002573[     ]+csrr[         ]+a0,siselect
+[      ]+[0-9a-f]+:[   ]+15059073[     ]+csrw[         ]+siselect,a1
+[      ]+[0-9a-f]+:[   ]+15102573[     ]+csrr[         ]+a0,sireg
+[      ]+[0-9a-f]+:[   ]+15159073[     ]+csrw[         ]+sireg,a1
+[      ]+[0-9a-f]+:[   ]+15c02573[     ]+csrr[         ]+a0,stopei
+[      ]+[0-9a-f]+:[   ]+15c59073[     ]+csrw[         ]+stopei,a1
+[      ]+[0-9a-f]+:[   ]+db002573[     ]+csrr[         ]+a0,stopi
+[      ]+[0-9a-f]+:[   ]+db059073[     ]+csrw[         ]+stopi,a1
+[      ]+[0-9a-f]+:[   ]+11402573[     ]+csrr[         ]+a0,sieh
+[      ]+[0-9a-f]+:[   ]+11459073[     ]+csrw[         ]+sieh,a1
+[      ]+[0-9a-f]+:[   ]+15402573[     ]+csrr[         ]+a0,siph
+[      ]+[0-9a-f]+:[   ]+15459073[     ]+csrw[         ]+siph,a1
+[      ]+[0-9a-f]+:[   ]+60802573[     ]+csrr[         ]+a0,hvien
+[      ]+[0-9a-f]+:[   ]+60859073[     ]+csrw[         ]+hvien,a1
+[      ]+[0-9a-f]+:[   ]+60902573[     ]+csrr[         ]+a0,hvictl
+[      ]+[0-9a-f]+:[   ]+60959073[     ]+csrw[         ]+hvictl,a1
+[      ]+[0-9a-f]+:[   ]+64602573[     ]+csrr[         ]+a0,hviprio1
+[      ]+[0-9a-f]+:[   ]+64659073[     ]+csrw[         ]+hviprio1,a1
+[      ]+[0-9a-f]+:[   ]+64702573[     ]+csrr[         ]+a0,hviprio2
+[      ]+[0-9a-f]+:[   ]+64759073[     ]+csrw[         ]+hviprio2,a1
+[      ]+[0-9a-f]+:[   ]+25002573[     ]+csrr[         ]+a0,vsiselect
+[      ]+[0-9a-f]+:[   ]+25059073[     ]+csrw[         ]+vsiselect,a1
+[      ]+[0-9a-f]+:[   ]+25102573[     ]+csrr[         ]+a0,vsireg
+[      ]+[0-9a-f]+:[   ]+25159073[     ]+csrw[         ]+vsireg,a1
+[      ]+[0-9a-f]+:[   ]+25c02573[     ]+csrr[         ]+a0,vstopei
+[      ]+[0-9a-f]+:[   ]+25c59073[     ]+csrw[         ]+vstopei,a1
+[      ]+[0-9a-f]+:[   ]+eb002573[     ]+csrr[         ]+a0,vstopi
+[      ]+[0-9a-f]+:[   ]+eb059073[     ]+csrw[         ]+vstopi,a1
+[      ]+[0-9a-f]+:[   ]+61302573[     ]+csrr[         ]+a0,hidelegh
+[      ]+[0-9a-f]+:[   ]+61359073[     ]+csrw[         ]+hidelegh,a1
+[      ]+[0-9a-f]+:[   ]+61802573[     ]+csrr[         ]+a0,hvienh
+[      ]+[0-9a-f]+:[   ]+61859073[     ]+csrw[         ]+hvienh,a1
+[      ]+[0-9a-f]+:[   ]+65502573[     ]+csrr[         ]+a0,hviph
+[      ]+[0-9a-f]+:[   ]+65559073[     ]+csrw[         ]+hviph,a1
+[      ]+[0-9a-f]+:[   ]+65602573[     ]+csrr[         ]+a0,hviprio1h
+[      ]+[0-9a-f]+:[   ]+65659073[     ]+csrw[         ]+hviprio1h,a1
+[      ]+[0-9a-f]+:[   ]+65702573[     ]+csrr[         ]+a0,hviprio2h
+[      ]+[0-9a-f]+:[   ]+65759073[     ]+csrw[         ]+hviprio2h,a1
+[      ]+[0-9a-f]+:[   ]+21402573[     ]+csrr[         ]+a0,vsieh
+[      ]+[0-9a-f]+:[   ]+21459073[     ]+csrw[         ]+vsieh,a1
+[      ]+[0-9a-f]+:[   ]+25402573[     ]+csrr[         ]+a0,vsiph
+[      ]+[0-9a-f]+:[   ]+25459073[     ]+csrw[         ]+vsiph,a1
+[      ]+[0-9a-f]+:[   ]+01102573[     ]+csrr[         ]+a0,ssp
+[      ]+[0-9a-f]+:[   ]+01159073[     ]+csrw[         ]+ssp,a1
+[      ]+[0-9a-f]+:[   ]+15002573[     ]+csrr[         ]+a0,siselect
+[      ]+[0-9a-f]+:[   ]+15059073[     ]+csrw[         ]+siselect,a1
+[      ]+[0-9a-f]+:[   ]+15102573[     ]+csrr[         ]+a0,sireg
+[      ]+[0-9a-f]+:[   ]+15159073[     ]+csrw[         ]+sireg,a1
+[      ]+[0-9a-f]+:[   ]+15202573[     ]+csrr[         ]+a0,sireg2
+[      ]+[0-9a-f]+:[   ]+15259073[     ]+csrw[         ]+sireg2,a1
+[      ]+[0-9a-f]+:[   ]+15302573[     ]+csrr[         ]+a0,sireg3
+[      ]+[0-9a-f]+:[   ]+15359073[     ]+csrw[         ]+sireg3,a1
+[      ]+[0-9a-f]+:[   ]+15502573[     ]+csrr[         ]+a0,sireg4
+[      ]+[0-9a-f]+:[   ]+15559073[     ]+csrw[         ]+sireg4,a1
+[      ]+[0-9a-f]+:[   ]+15602573[     ]+csrr[         ]+a0,sireg5
+[      ]+[0-9a-f]+:[   ]+15659073[     ]+csrw[         ]+sireg5,a1
+[      ]+[0-9a-f]+:[   ]+15702573[     ]+csrr[         ]+a0,sireg6
+[      ]+[0-9a-f]+:[   ]+15759073[     ]+csrw[         ]+sireg6,a1
+[      ]+[0-9a-f]+:[   ]+25002573[     ]+csrr[         ]+a0,vsiselect
+[      ]+[0-9a-f]+:[   ]+25059073[     ]+csrw[         ]+vsiselect,a1
+[      ]+[0-9a-f]+:[   ]+25102573[     ]+csrr[         ]+a0,vsireg
+[      ]+[0-9a-f]+:[   ]+25159073[     ]+csrw[         ]+vsireg,a1
+[      ]+[0-9a-f]+:[   ]+25202573[     ]+csrr[         ]+a0,vsireg2
+[      ]+[0-9a-f]+:[   ]+25259073[     ]+csrw[         ]+vsireg2,a1
+[      ]+[0-9a-f]+:[   ]+25302573[     ]+csrr[         ]+a0,vsireg3
+[      ]+[0-9a-f]+:[   ]+25359073[     ]+csrw[         ]+vsireg3,a1
+[      ]+[0-9a-f]+:[   ]+25502573[     ]+csrr[         ]+a0,vsireg4
+[      ]+[0-9a-f]+:[   ]+25559073[     ]+csrw[         ]+vsireg4,a1
+[      ]+[0-9a-f]+:[   ]+25602573[     ]+csrr[         ]+a0,vsireg5
+[      ]+[0-9a-f]+:[   ]+25659073[     ]+csrw[         ]+vsireg5,a1
+[      ]+[0-9a-f]+:[   ]+25702573[     ]+csrr[         ]+a0,vsireg6
+[      ]+[0-9a-f]+:[   ]+25759073[     ]+csrw[         ]+vsireg6,a1
+[      ]+[0-9a-f]+:[   ]+da002573[     ]+csrr[         ]+a0,scountovf
+[      ]+[0-9a-f]+:[   ]+da059073[     ]+csrw[         ]+scountovf,a1
+[      ]+[0-9a-f]+:[   ]+72302573[     ]+csrr[         ]+a0,mhpmevent3h
+[      ]+[0-9a-f]+:[   ]+72359073[     ]+csrw[         ]+mhpmevent3h,a1
+[      ]+[0-9a-f]+:[   ]+72402573[     ]+csrr[         ]+a0,mhpmevent4h
+[      ]+[0-9a-f]+:[   ]+72459073[     ]+csrw[         ]+mhpmevent4h,a1
+[      ]+[0-9a-f]+:[   ]+72502573[     ]+csrr[         ]+a0,mhpmevent5h
+[      ]+[0-9a-f]+:[   ]+72559073[     ]+csrw[         ]+mhpmevent5h,a1
+[      ]+[0-9a-f]+:[   ]+72602573[     ]+csrr[         ]+a0,mhpmevent6h
+[      ]+[0-9a-f]+:[   ]+72659073[     ]+csrw[         ]+mhpmevent6h,a1
+[      ]+[0-9a-f]+:[   ]+72702573[     ]+csrr[         ]+a0,mhpmevent7h
+[      ]+[0-9a-f]+:[   ]+72759073[     ]+csrw[         ]+mhpmevent7h,a1
+[      ]+[0-9a-f]+:[   ]+72802573[     ]+csrr[         ]+a0,mhpmevent8h
+[      ]+[0-9a-f]+:[   ]+72859073[     ]+csrw[         ]+mhpmevent8h,a1
+[      ]+[0-9a-f]+:[   ]+72902573[     ]+csrr[         ]+a0,mhpmevent9h
+[      ]+[0-9a-f]+:[   ]+72959073[     ]+csrw[         ]+mhpmevent9h,a1
+[      ]+[0-9a-f]+:[   ]+72a02573[     ]+csrr[         ]+a0,mhpmevent10h
+[      ]+[0-9a-f]+:[   ]+72a59073[     ]+csrw[         ]+mhpmevent10h,a1
+[      ]+[0-9a-f]+:[   ]+72b02573[     ]+csrr[         ]+a0,mhpmevent11h
+[      ]+[0-9a-f]+:[   ]+72b59073[     ]+csrw[         ]+mhpmevent11h,a1
+[      ]+[0-9a-f]+:[   ]+72c02573[     ]+csrr[         ]+a0,mhpmevent12h
+[      ]+[0-9a-f]+:[   ]+72c59073[     ]+csrw[         ]+mhpmevent12h,a1
+[      ]+[0-9a-f]+:[   ]+72d02573[     ]+csrr[         ]+a0,mhpmevent13h
+[      ]+[0-9a-f]+:[   ]+72d59073[     ]+csrw[         ]+mhpmevent13h,a1
+[      ]+[0-9a-f]+:[   ]+72e02573[     ]+csrr[         ]+a0,mhpmevent14h
+[      ]+[0-9a-f]+:[   ]+72e59073[     ]+csrw[         ]+mhpmevent14h,a1
+[      ]+[0-9a-f]+:[   ]+72f02573[     ]+csrr[         ]+a0,mhpmevent15h
+[      ]+[0-9a-f]+:[   ]+72f59073[     ]+csrw[         ]+mhpmevent15h,a1
+[      ]+[0-9a-f]+:[   ]+73002573[     ]+csrr[         ]+a0,mhpmevent16h
+[      ]+[0-9a-f]+:[   ]+73059073[     ]+csrw[         ]+mhpmevent16h,a1
+[      ]+[0-9a-f]+:[   ]+73102573[     ]+csrr[         ]+a0,mhpmevent17h
+[      ]+[0-9a-f]+:[   ]+73159073[     ]+csrw[         ]+mhpmevent17h,a1
+[      ]+[0-9a-f]+:[   ]+73202573[     ]+csrr[         ]+a0,mhpmevent18h
+[      ]+[0-9a-f]+:[   ]+73259073[     ]+csrw[         ]+mhpmevent18h,a1
+[      ]+[0-9a-f]+:[   ]+73302573[     ]+csrr[         ]+a0,mhpmevent19h
+[      ]+[0-9a-f]+:[   ]+73359073[     ]+csrw[         ]+mhpmevent19h,a1
+[      ]+[0-9a-f]+:[   ]+73402573[     ]+csrr[         ]+a0,mhpmevent20h
+[      ]+[0-9a-f]+:[   ]+73459073[     ]+csrw[         ]+mhpmevent20h,a1
+[      ]+[0-9a-f]+:[   ]+73502573[     ]+csrr[         ]+a0,mhpmevent21h
+[      ]+[0-9a-f]+:[   ]+73559073[     ]+csrw[         ]+mhpmevent21h,a1
+[      ]+[0-9a-f]+:[   ]+73602573[     ]+csrr[         ]+a0,mhpmevent22h
+[      ]+[0-9a-f]+:[   ]+73659073[     ]+csrw[         ]+mhpmevent22h,a1
+[      ]+[0-9a-f]+:[   ]+73702573[     ]+csrr[         ]+a0,mhpmevent23h
+[      ]+[0-9a-f]+:[   ]+73759073[     ]+csrw[         ]+mhpmevent23h,a1
+[      ]+[0-9a-f]+:[   ]+73802573[     ]+csrr[         ]+a0,mhpmevent24h
+[      ]+[0-9a-f]+:[   ]+73859073[     ]+csrw[         ]+mhpmevent24h,a1
+[      ]+[0-9a-f]+:[   ]+73902573[     ]+csrr[         ]+a0,mhpmevent25h
+[      ]+[0-9a-f]+:[   ]+73959073[     ]+csrw[         ]+mhpmevent25h,a1
+[      ]+[0-9a-f]+:[   ]+73a02573[     ]+csrr[         ]+a0,mhpmevent26h
+[      ]+[0-9a-f]+:[   ]+73a59073[     ]+csrw[         ]+mhpmevent26h,a1
+[      ]+[0-9a-f]+:[   ]+73b02573[     ]+csrr[         ]+a0,mhpmevent27h
+[      ]+[0-9a-f]+:[   ]+73b59073[     ]+csrw[         ]+mhpmevent27h,a1
+[      ]+[0-9a-f]+:[   ]+73c02573[     ]+csrr[         ]+a0,mhpmevent28h
+[      ]+[0-9a-f]+:[   ]+73c59073[     ]+csrw[         ]+mhpmevent28h,a1
+[      ]+[0-9a-f]+:[   ]+73d02573[     ]+csrr[         ]+a0,mhpmevent29h
+[      ]+[0-9a-f]+:[   ]+73d59073[     ]+csrw[         ]+mhpmevent29h,a1
+[      ]+[0-9a-f]+:[   ]+73e02573[     ]+csrr[         ]+a0,mhpmevent30h
+[      ]+[0-9a-f]+:[   ]+73e59073[     ]+csrw[         ]+mhpmevent30h,a1
+[      ]+[0-9a-f]+:[   ]+73f02573[     ]+csrr[         ]+a0,mhpmevent31h
+[      ]+[0-9a-f]+:[   ]+73f59073[     ]+csrw[         ]+mhpmevent31h,a1
+[      ]+[0-9a-f]+:[   ]+14d02573[     ]+csrr[         ]+a0,stimecmp
+[      ]+[0-9a-f]+:[   ]+14d59073[     ]+csrw[         ]+stimecmp,a1
+[      ]+[0-9a-f]+:[   ]+15d02573[     ]+csrr[         ]+a0,stimecmph
+[      ]+[0-9a-f]+:[   ]+15d59073[     ]+csrw[         ]+stimecmph,a1
+[      ]+[0-9a-f]+:[   ]+24d02573[     ]+csrr[         ]+a0,vstimecmp
+[      ]+[0-9a-f]+:[   ]+24d59073[     ]+csrw[         ]+vstimecmp,a1
+[      ]+[0-9a-f]+:[   ]+25d02573[     ]+csrr[         ]+a0,vstimecmph
+[      ]+[0-9a-f]+:[   ]+25d59073[     ]+csrw[         ]+vstimecmph,a1
+[      ]+[0-9a-f]+:[   ]+14e02573[     ]+csrr[         ]+a0,sctrctl
+[      ]+[0-9a-f]+:[   ]+14e59073[     ]+csrw[         ]+sctrctl,a1
+[      ]+[0-9a-f]+:[   ]+14f02573[     ]+csrr[         ]+a0,sctrstatus
+[      ]+[0-9a-f]+:[   ]+14f59073[     ]+csrw[         ]+sctrstatus,a1
+[      ]+[0-9a-f]+:[   ]+15f02573[     ]+csrr[         ]+a0,sctrdepth
+[      ]+[0-9a-f]+:[   ]+15f59073[     ]+csrw[         ]+sctrdepth,a1
+[      ]+[0-9a-f]+:[   ]+24e02573[     ]+csrr[         ]+a0,vsctrctl
+[      ]+[0-9a-f]+:[   ]+24e59073[     ]+csrw[         ]+vsctrctl,a1
+[      ]+[0-9a-f]+:[   ]+34e02573[     ]+csrr[         ]+a0,mctrctl
+[      ]+[0-9a-f]+:[   ]+34e59073[     ]+csrw[         ]+mctrctl,a1
+[      ]+[0-9a-f]+:[   ]+00002573[     ]+csrr[         ]+a0,0x0
+[      ]+[0-9a-f]+:[   ]+00059073[     ]+csrw[         ]+0x0,a1
+[      ]+[0-9a-f]+:[   ]+00402573[     ]+csrr[         ]+a0,0x4
+[      ]+[0-9a-f]+:[   ]+00459073[     ]+csrw[         ]+0x4,a1
+[      ]+[0-9a-f]+:[   ]+00502573[     ]+csrr[         ]+a0,0x5
+[      ]+[0-9a-f]+:[   ]+00559073[     ]+csrw[         ]+0x5,a1
+[      ]+[0-9a-f]+:[   ]+04002573[     ]+csrr[         ]+a0,0x40
+[      ]+[0-9a-f]+:[   ]+04059073[     ]+csrw[         ]+0x40,a1
+[      ]+[0-9a-f]+:[   ]+04102573[     ]+csrr[         ]+a0,0x41
+[      ]+[0-9a-f]+:[   ]+04159073[     ]+csrw[         ]+0x41,a1
+[      ]+[0-9a-f]+:[   ]+04202573[     ]+csrr[         ]+a0,0x42
+[      ]+[0-9a-f]+:[   ]+04259073[     ]+csrw[         ]+0x42,a1
+[      ]+[0-9a-f]+:[   ]+04302573[     ]+csrr[         ]+a0,0x43
+[      ]+[0-9a-f]+:[   ]+04359073[     ]+csrw[         ]+0x43,a1
+[      ]+[0-9a-f]+:[   ]+04402573[     ]+csrr[         ]+a0,0x44
+[      ]+[0-9a-f]+:[   ]+04459073[     ]+csrw[         ]+0x44,a1
+[      ]+[0-9a-f]+:[   ]+10202573[     ]+csrr[         ]+a0,0x102
+[      ]+[0-9a-f]+:[   ]+10259073[     ]+csrw[         ]+0x102,a1
+[      ]+[0-9a-f]+:[   ]+10302573[     ]+csrr[         ]+a0,0x103
+[      ]+[0-9a-f]+:[   ]+10359073[     ]+csrw[         ]+0x103,a1
+[      ]+[0-9a-f]+:[   ]+00102573[     ]+csrr[         ]+a0,fflags
+[      ]+[0-9a-f]+:[   ]+00159073[     ]+csrw[         ]+fflags,a1
+[      ]+[0-9a-f]+:[   ]+00202573[     ]+csrr[         ]+a0,frm
+[      ]+[0-9a-f]+:[   ]+00259073[     ]+csrw[         ]+frm,a1
+[      ]+[0-9a-f]+:[   ]+00302573[     ]+csrr[         ]+a0,fcsr
+[      ]+[0-9a-f]+:[   ]+00359073[     ]+csrw[         ]+fcsr,a1
+[      ]+[0-9a-f]+:[   ]+7b002573[     ]+csrr[         ]+a0,dcsr
+[      ]+[0-9a-f]+:[   ]+7b059073[     ]+csrw[         ]+dcsr,a1
+[      ]+[0-9a-f]+:[   ]+7b102573[     ]+csrr[         ]+a0,dpc
+[      ]+[0-9a-f]+:[   ]+7b159073[     ]+csrw[         ]+dpc,a1
+[      ]+[0-9a-f]+:[   ]+7b202573[     ]+csrr[         ]+a0,dscratch0
+[      ]+[0-9a-f]+:[   ]+7b259073[     ]+csrw[         ]+dscratch0,a1
+[      ]+[0-9a-f]+:[   ]+7b302573[     ]+csrr[         ]+a0,dscratch1
+[      ]+[0-9a-f]+:[   ]+7b359073[     ]+csrw[         ]+dscratch1,a1
+[      ]+[0-9a-f]+:[   ]+7b202573[     ]+csrr[         ]+a0,dscratch0
+[      ]+[0-9a-f]+:[   ]+7b259073[     ]+csrw[         ]+dscratch0,a1
+[      ]+[0-9a-f]+:[   ]+7a002573[     ]+csrr[         ]+a0,tselect
+[      ]+[0-9a-f]+:[   ]+7a059073[     ]+csrw[         ]+tselect,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a202573[     ]+csrr[         ]+a0,tdata2
+[      ]+[0-9a-f]+:[   ]+7a259073[     ]+csrw[         ]+tdata2,a1
+[      ]+[0-9a-f]+:[   ]+7a302573[     ]+csrr[         ]+a0,tdata3
+[      ]+[0-9a-f]+:[   ]+7a359073[     ]+csrw[         ]+tdata3,a1
+[      ]+[0-9a-f]+:[   ]+7a402573[     ]+csrr[         ]+a0,tinfo
+[      ]+[0-9a-f]+:[   ]+7a459073[     ]+csrw[         ]+tinfo,a1
+[      ]+[0-9a-f]+:[   ]+7a502573[     ]+csrr[         ]+a0,tcontrol
+[      ]+[0-9a-f]+:[   ]+7a559073[     ]+csrw[         ]+tcontrol,a1
+[      ]+[0-9a-f]+:[   ]+6a802573[     ]+csrr[         ]+a0,hcontext
+[      ]+[0-9a-f]+:[   ]+6a859073[     ]+csrw[         ]+hcontext,a1
+[      ]+[0-9a-f]+:[   ]+5a802573[     ]+csrr[         ]+a0,scontext
+[      ]+[0-9a-f]+:[   ]+5a859073[     ]+csrw[         ]+scontext,a1
+[      ]+[0-9a-f]+:[   ]+7a802573[     ]+csrr[         ]+a0,mcontext
+[      ]+[0-9a-f]+:[   ]+7a859073[     ]+csrw[         ]+mcontext,a1
+[      ]+[0-9a-f]+:[   ]+7aa02573[     ]+csrr[         ]+a0,mscontext
+[      ]+[0-9a-f]+:[   ]+7aa59073[     ]+csrw[         ]+mscontext,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a102573[     ]+csrr[         ]+a0,tdata1
+[      ]+[0-9a-f]+:[   ]+7a159073[     ]+csrw[         ]+tdata1,a1
+[      ]+[0-9a-f]+:[   ]+7a302573[     ]+csrr[         ]+a0,tdata3
+[      ]+[0-9a-f]+:[   ]+7a359073[     ]+csrw[         ]+tdata3,a1
+[      ]+[0-9a-f]+:[   ]+7a302573[     ]+csrr[         ]+a0,tdata3
+[      ]+[0-9a-f]+:[   ]+7a359073[     ]+csrw[         ]+tdata3,a1
+[      ]+[0-9a-f]+:[   ]+01502573[     ]+csrr[         ]+a0,seed
+[      ]+[0-9a-f]+:[   ]+01559073[     ]+csrw[         ]+seed,a1
+[      ]+[0-9a-f]+:[   ]+00802573[     ]+csrr[         ]+a0,vstart
+[      ]+[0-9a-f]+:[   ]+00859073[     ]+csrw[         ]+vstart,a1
+[      ]+[0-9a-f]+:[   ]+00902573[     ]+csrr[         ]+a0,vxsat
+[      ]+[0-9a-f]+:[   ]+00959073[     ]+csrw[         ]+vxsat,a1
+[      ]+[0-9a-f]+:[   ]+00a02573[     ]+csrr[         ]+a0,vxrm
+[      ]+[0-9a-f]+:[   ]+00a59073[     ]+csrw[         ]+vxrm,a1
+[      ]+[0-9a-f]+:[   ]+00f02573[     ]+csrr[         ]+a0,vcsr
+[      ]+[0-9a-f]+:[   ]+00f59073[     ]+csrw[         ]+vcsr,a1
+[      ]+[0-9a-f]+:[   ]+c2002573[     ]+csrr[         ]+a0,vl
+[      ]+[0-9a-f]+:[   ]+c2059073[     ]+csrw[         ]+vl,a1
+[      ]+[0-9a-f]+:[   ]+c2102573[     ]+csrr[         ]+a0,vtype
+[      ]+[0-9a-f]+:[   ]+c2159073[     ]+csrw[         ]+vtype,a1
+[      ]+[0-9a-f]+:[   ]+c2202573[     ]+csrr[         ]+a0,vlenb
+[      ]+[0-9a-f]+:[   ]+c2259073[     ]+csrw[         ]+vlenb,a1
+[      ]+[0-9a-f]+:[   ]+01702573[     ]+csrr[         ]+a0,jvt
+[      ]+[0-9a-f]+:[   ]+01759073[     ]+csrw[         ]+jvt,a1
+[      ]+[0-9a-f]+:[   ]+18102573[     ]+csrr[         ]+a0,srmcfg
+[      ]+[0-9a-f]+:[   ]+18159073[     ]+csrw[         ]+srmcfg,a1
diff --git a/gas/testsuite/gas/riscv/csr-version-1p13.l b/gas/testsuite/gas/riscv/csr-version-1p13.l
new file mode 100644 (file)
index 0000000..42c8523
--- /dev/null
@@ -0,0 +1,1495 @@
+.*Assembler messages:
+.*Warning: read-only CSR is written `csrw cycle,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw time,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw instret,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter3,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter4,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter5,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter6,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter7,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter8,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter9,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter10,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter11,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter12,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter13,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter14,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter15,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter16,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter17,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter18,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter19,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter20,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter21,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter22,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter23,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter24,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter25,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter26,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter27,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter28,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter29,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter30,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter31,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw cycleh,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw timeh,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw instreth,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter3h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter4h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter5h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter6h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter7h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter8h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter9h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter10h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter11h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter12h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter13h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter14h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter15h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter16h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter17h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter18h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter19h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter20h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter21h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter22h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter23h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter24h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter25h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter26h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter27h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter28h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter29h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter30h,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hpmcounter31h,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw mvendorid,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw marchid,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw mimpid,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw mhartid,a1'
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw mconfigptr,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `medelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstatush', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstatush', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstatus', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstatus', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedeleg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedeleg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hedelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hideleg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hideleg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hcounteren', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hcounteren', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgeie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgeie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htval', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htval', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htinst', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htinst', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgeip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgeip', needs `h' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw hgeip,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfgh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `henvcfgh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgatp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hgatp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedelta', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedelta', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedeltah', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `htimedeltah', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsstatus', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsstatus', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsie', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstvec', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstvec', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsscratch', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsscratch', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsepc', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsepc', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vscause', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vscause', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstval', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstval', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsip', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsatp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsatp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mtopei', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mtopei', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mtopi', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mtopi', needs `smaia' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw mtopi,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `mvien', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvien', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvip', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvip', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `midelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `midelegh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `midelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `midelegh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mieh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mieh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvienh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvienh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvienh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mvienh', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mviph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mviph', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mviph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mviph', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `miph', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `miph', needs `smaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg2', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg2', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg3', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg3', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg4', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg4', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg5', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg5', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg6', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mireg6', needs `smcsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfg', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfg', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfg', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfg', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfgh', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mcyclecfgh', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfgh', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfgh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `minstretcfgh', needs `smcntrpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnepc', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnepc', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mncause', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mncause', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnscratch', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnscratch', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnstatus', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mnstatus', needs `smrnmi' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen0', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen0', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen1', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen1', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen2', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen2', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen3', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sstateen3', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen0h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen1h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen2h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mstateen3h', needs `smstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen0h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen1h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen2h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hstateen3h', needs `ssstateen' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stopei', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stopei', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stopi', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stopi', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw stopi,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `sieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `sieh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `sieh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `siph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `siph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvien', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvien', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvien', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvien', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvictl', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvictl', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvictl', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvictl', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopei', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopei', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopei', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopei', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopi', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopi', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopi', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstopi', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw vstopi,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hidelegh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hvienh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio1h', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `hviprio2h', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsieh', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiph', needs `ssaia' extension
+.*Info: macro .*
+.*Warning: invalid CSR `ssp', needs `zicfiss' extension
+.*Info: macro .*
+.*Warning: invalid CSR `ssp', needs `zicfiss' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg2', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg2', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg3', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg3', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg4', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg4', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg5', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg5', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg6', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sireg6', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg2', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg2', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg2', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg3', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg3', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg3', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg3', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg4', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg4', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg4', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg4', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg5', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg5', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg5', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg5', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg6', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg6', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg6', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsireg6', needs `sscsrind' extension
+.*Info: macro .*
+.*Warning: invalid CSR `scountovf', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `scountovf', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw scountovf,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent3h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent3h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent3h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent4h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent4h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent4h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent5h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent5h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent5h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent6h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent6h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent6h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent7h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent7h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent7h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent8h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent8h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent8h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent9h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent9h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent9h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent10h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent10h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent10h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent11h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent11h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent11h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent12h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent12h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent12h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent13h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent13h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent13h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent14h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent14h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent14h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent15h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent15h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent15h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent16h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent16h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent16h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent17h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent17h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent17h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent18h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent18h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent18h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent19h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent19h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent19h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent20h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent20h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent20h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent21h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent21h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent21h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent22h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent22h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent22h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent23h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent23h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent23h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent24h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent24h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent24h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent25h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent25h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent25h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent26h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent26h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent26h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent27h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent27h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent27h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent28h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent28h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent28h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent29h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent29h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent29h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent30h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent30h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent30h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent31h', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmp', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmp', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmph', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `stimecmph', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmp', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmp', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmp', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs rv32i extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs `h' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstimecmph', needs `sstc' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrctl', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrctl', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrstatus', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrstatus', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrdepth', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `sctrdepth', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsctrctl', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vsctrctl', needs `ssctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mctrctl', needs `smctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `mctrctl', needs `smctr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `ustatus' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `ustatus' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uie' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uie' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `utvec' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `utvec' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uscratch' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uscratch' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uepc' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uepc' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `ucause' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `ucause' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `utval' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `utval' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uip' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `uip' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `sedeleg' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `sedeleg' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `sideleg' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `sideleg' for the privileged spec `1.13'
+.*Info: macro .*
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Info: macro .*
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstart', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vstart', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vxsat', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vxsat', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vxrm', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vxrm', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vcsr', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vcsr', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vl', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vl', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw vl,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `vtype', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vtype', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw vtype,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `vlenb', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: invalid CSR `vlenb', needs `zve32x' extension
+.*Info: macro .*
+.*Warning: read-only CSR is written `csrw vlenb,a1'
+.*Info: macro .*
+.*Warning: invalid CSR `jvt', needs `zcmt' extension
+.*Info: macro .*
+.*Warning: invalid CSR `jvt', needs `zcmt' extension
+.*Info: macro .*
+.*Warning: invalid CSR `srmcfg', needs `ssqosid' extension
+.*Info: macro .*
+.*Warning: invalid CSR `srmcfg', needs `ssqosid' extension
+.*Info: macro .*
index 6244bd73481dffc0fb895a71383d1afdfcffbf1f..f4c215dd5599670af4d83fbd9179f7d3ce6adfd6 100644 (file)
@@ -3,7 +3,7 @@
        csrw \val, a1
        .endm
 
-       # Supported privileged specs, 1.10, 1.11 and 1.12.
+       # Supported privileged specs, 1.10, 1.11, 1.12 and 1.13.
 
        # User Counter/Timers
        csr cycle
        csr mstatus
        csr misa
        csr medeleg
+       csr medelegh            # Added in 1.13
        csr mideleg
        csr mie
        csr mtvec
        # Hypervisor Trap Setup
        csr hstatus
        csr hedeleg
+       csr hedelegh            # Added in 1.13
        csr hideleg
        csr hie
        csr hcounteren
index ab378ae069388f5593877d6be79fb52cde25bd68..c20cb20c5c1c9d35f0b77dd531f2ab56a93e6981 100644 (file)
 #define CSR_MTVEC 0x305
 #define CSR_MCOUNTEREN 0x306
 #define CSR_MSTATUSH 0x310
+#define CSR_MEDELEGH 0x312
 #define CSR_MSCRATCH 0x340
 #define CSR_MEPC 0x341
 #define CSR_MCAUSE 0x342
 #define CSR_HIE 0x604
 #define CSR_HCOUNTEREN 0x606
 #define CSR_HGEIE 0x607
+#define CSR_HEDELEGH 0x612
 #define CSR_HTVAL 0x643
 #define CSR_HIP 0x644
 #define CSR_HVIP 0x645
@@ -5062,6 +5064,7 @@ DECLARE_CSR(mconfigptr, CSR_MCONFIGPTR, CSR_CLASS_I, PRIV_SPEC_CLASS_1P12, PRIV_
 DECLARE_CSR(mstatus, CSR_MSTATUS, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(misa, CSR_MISA, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(medeleg, CSR_MEDELEG, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
+DECLARE_CSR(medelegh, CSR_MEDELEGH, CSR_CLASS_I_32, PRIV_SPEC_CLASS_1P13, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(mideleg, CSR_MIDELEG, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(mie, CSR_MIE, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(mtvec, CSR_MTVEC, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRIV_SPEC_CLASS_DRAFT)
@@ -5253,6 +5256,7 @@ DECLARE_CSR(mhpmevent31, CSR_MHPMEVENT31, CSR_CLASS_I, PRIV_SPEC_CLASS_1P10, PRI
 /* Privileged Hypervisor CSRs.  */
 DECLARE_CSR(hstatus, CSR_HSTATUS, CSR_CLASS_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
 DECLARE_CSR(hedeleg, CSR_HEDELEG, CSR_CLASS_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
+DECLARE_CSR(hedelegh, CSR_HEDELEGH, CSR_CLASS_H_32, PRIV_SPEC_CLASS_1P13, PRIV_SPEC_CLASS_DRAFT)
 DECLARE_CSR(hideleg, CSR_HIDELEG, CSR_CLASS_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
 DECLARE_CSR(hie, CSR_HIE, CSR_CLASS_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)
 DECLARE_CSR(hcounteren, CSR_HCOUNTEREN, CSR_CLASS_H, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE)