RISC-V: PR28733, add missing extension info to 'invalid CSR' error
authorPatrick O'Neill <patrick@rivosinc.com>
Fri, 21 Jan 2022 17:22:00 +0000 (09:22 -0800)
committerNelson Chu <nelson.chu@sifive.com>
Wed, 23 Feb 2022 11:08:19 +0000 (19:08 +0800)
Currently we report errors as "invalid CSR 'fscr' for the current ISA"
when the instruction isn't valid.

This patch expands that error message to include the missing extension
information. For example, now the error message would be "invalid CSR
'fscr' for the current ISA, CSR 'fscr' needs 'f' extension".

Signed-off-by: Patrick O'Neill <patrick@rivosinc.com>
gas/
pr 28733
* config/tc-riscv.c (riscv_csr_address): Report more details
when the CSR is invalid.
* testsuite/gas/riscv/csr-version-1p10.l: Updated detailed errors.
* testsuite/gas/riscv/csr-version-1p11.l: Likewise.
* testsuite/gas/riscv/csr-version-1p12.l: Likewise.
* testsuite/gas/riscv/csr-version-1p9p1.l: Likewise.

gas/config/tc-riscv.c
gas/testsuite/gas/riscv/csr-version-1p10.l
gas/testsuite/gas/riscv/csr-version-1p11.l
gas/testsuite/gas/riscv/csr-version-1p12.l
gas/testsuite/gas/riscv/csr-version-1p9p1.l

index 25908597436d935309ab935f1f34c772e4b18267..55799b1f70854593d2f6da68c53e838fd3b3001a 100644 (file)
@@ -882,38 +882,44 @@ riscv_csr_address (const char *csr_name,
 {
   struct riscv_csr_extra *saved_entry = entry;
   enum riscv_csr_class csr_class = entry->csr_class;
-  bool need_check_version = true;
-  bool result = true;
+  bool need_check_version = false;
+  bool rv32_only = true;
+  const char* extension = NULL;
 
   switch (csr_class)
     {
-    case CSR_CLASS_I:
-      result = riscv_subset_supports (&riscv_rps_as, "i");
-      break;
     case CSR_CLASS_I_32:
-      result = (xlen == 32 && riscv_subset_supports (&riscv_rps_as, "i"));
+      rv32_only = (xlen == 32);
+      /* Fall through.  */
+    case CSR_CLASS_I:
+      need_check_version = true;
+      extension = "i";
       break;
     case CSR_CLASS_F:
-      result = riscv_subset_supports (&riscv_rps_as, "f");
-      need_check_version = false;
+      extension = "f";
       break;
     case CSR_CLASS_ZKR:
-      result = riscv_subset_supports (&riscv_rps_as, "zkr");
-      need_check_version = false;
+      extension = "zkr";
       break;
     case CSR_CLASS_V:
-      result = riscv_subset_supports (&riscv_rps_as, "v");
-      need_check_version = false;
+      extension = "v";
       break;
     case CSR_CLASS_DEBUG:
-      need_check_version = false;
       break;
     default:
       as_bad (_("internal: bad RISC-V CSR class (0x%x)"), csr_class);
     }
 
-  if (riscv_opts.csr_check && !result)
-    as_warn (_("invalid CSR `%s' for the current ISA"), csr_name);
+  if (riscv_opts.csr_check)
+    {
+      if (!rv32_only)
+       as_warn (_("invalid CSR `%s', needs rv32i extension"), csr_name);
+
+      if (extension != NULL
+         && !riscv_subset_supports (&riscv_rps_as, extension))
+       as_warn (_("invalid CSR `%s', needs `%s' extension"),
+                csr_name, extension);
+    }
 
   while (entry != NULL)
     {
index 4623ef5677a783b73a8d4a5ef1dcede658972b39..2511feeafc86b554df860246e221091289325055 100644 (file)
 .*Warning: read-only CSR is written `csrw hpmcounter29,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter30,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter31,a1'
-.*Warning: invalid CSR `cycleh' for the current ISA
-.*Warning: invalid CSR `cycleh' for the current ISA
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Warning: invalid CSR `cycleh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw cycleh,a1'
-.*Warning: invalid CSR `timeh' for the current ISA
-.*Warning: invalid CSR `timeh' for the current ISA
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Warning: invalid CSR `timeh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw timeh,a1'
-.*Warning: invalid CSR `instreth' for the current ISA
-.*Warning: invalid CSR `instreth' for the current ISA
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Warning: invalid CSR `instreth', needs rv32i extension
 .*Warning: read-only CSR is written `csrw instreth,a1'
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter3h,a1'
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter4h,a1'
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter5h,a1'
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter6h,a1'
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter7h,a1'
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter8h,a1'
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter9h,a1'
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter10h,a1'
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter11h,a1'
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter12h,a1'
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter13h,a1'
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter14h,a1'
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter15h,a1'
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter16h,a1'
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter17h,a1'
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter18h,a1'
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter19h,a1'
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter20h,a1'
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter21h,a1'
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter22h,a1'
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter23h,a1'
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter24h,a1'
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter25h,a1'
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter26h,a1'
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter27h,a1'
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter28h,a1'
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter29h,a1'
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter30h,a1'
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter31h,a1'
 .*Warning: invalid CSR `senvcfg' for the privileged spec `1.10'
 .*Warning: invalid CSR `senvcfg' for the privileged spec `1.10'
 .*Warning: invalid CSR `mconfigptr' for the privileged spec `1.10'
 .*Warning: invalid CSR `mconfigptr' for the privileged spec `1.10'
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.10'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.10'
 .*Warning: invalid CSR `mtinst' for the privileged spec `1.10'
 .*Warning: invalid CSR `mtinst' for the privileged spec `1.10'
 .*Warning: invalid CSR `mtval2' for the privileged spec `1.10'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.10'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.10'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.10'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.10'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.10'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.10'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.10'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.10'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpaddr16' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpaddr16' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpaddr62' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.10'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.10'
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
 .*Warning: invalid CSR `mcountinhibit' for the privileged spec `1.10'
 .*Warning: invalid CSR `mcountinhibit' for the privileged spec `1.10'
 .*Warning: invalid CSR `hstatus' for the privileged spec `1.10'
 .*Warning: read-only CSR is written `csrw hgeip,a1'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.10'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.10'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.10'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.10'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.10'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.10'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.10'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.10'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.10'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.10'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.10'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.10'
 .*Warning: invalid CSR `mscounteren' for the privileged spec `1.10'
 .*Warning: invalid CSR `mhcounteren' for the privileged spec `1.10'
 .*Warning: invalid CSR `mhcounteren' for the privileged spec `1.10'
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
 .*Warning: read-only CSR is written `csrw vl,a1'
-.*Warning: invalid CSR `vtype' for the current ISA
-.*Warning: invalid CSR `vtype' for the current ISA
+.*Warning: invalid CSR `vtype', needs `v' extension
+.*Warning: invalid CSR `vtype', needs `v' extension
 .*Warning: read-only CSR is written `csrw vtype,a1'
-.*Warning: invalid CSR `vlenb' for the current ISA
-.*Warning: invalid CSR `vlenb' for the current ISA
+.*Warning: invalid CSR `vlenb', needs `v' extension
+.*Warning: invalid CSR `vlenb', needs `v' extension
 .*Warning: read-only CSR is written `csrw vlenb,a1'
index 928fd17590bc4cd6f7b2f5580016d1a282bbba55..570efe25cb7efc586dd33a3651f7705816689b73 100644 (file)
 .*Warning: read-only CSR is written `csrw hpmcounter29,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter30,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter31,a1'
-.*Warning: invalid CSR `cycleh' for the current ISA
-.*Warning: invalid CSR `cycleh' for the current ISA
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Warning: invalid CSR `cycleh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw cycleh,a1'
-.*Warning: invalid CSR `timeh' for the current ISA
-.*Warning: invalid CSR `timeh' for the current ISA
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Warning: invalid CSR `timeh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw timeh,a1'
-.*Warning: invalid CSR `instreth' for the current ISA
-.*Warning: invalid CSR `instreth' for the current ISA
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Warning: invalid CSR `instreth', needs rv32i extension
 .*Warning: read-only CSR is written `csrw instreth,a1'
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter3h,a1'
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter4h,a1'
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter5h,a1'
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter6h,a1'
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter7h,a1'
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter8h,a1'
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter9h,a1'
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter10h,a1'
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter11h,a1'
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter12h,a1'
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter13h,a1'
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter14h,a1'
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter15h,a1'
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter16h,a1'
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter17h,a1'
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter18h,a1'
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter19h,a1'
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter20h,a1'
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter21h,a1'
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter22h,a1'
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter23h,a1'
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter24h,a1'
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter25h,a1'
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter26h,a1'
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter27h,a1'
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter28h,a1'
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter29h,a1'
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter30h,a1'
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter31h,a1'
 .*Warning: invalid CSR `senvcfg' for the privileged spec `1.11'
 .*Warning: invalid CSR `senvcfg' for the privileged spec `1.11'
 .*Warning: invalid CSR `mconfigptr' for the privileged spec `1.11'
 .*Warning: invalid CSR `mconfigptr' for the privileged spec `1.11'
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.11'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.11'
 .*Warning: invalid CSR `mtinst' for the privileged spec `1.11'
 .*Warning: invalid CSR `mtinst' for the privileged spec `1.11'
 .*Warning: invalid CSR `mtval2' for the privileged spec `1.11'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.11'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.11'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.11'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.11'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.11'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.11'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.11'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.11'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpaddr16' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpaddr16' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpaddr62' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.11'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.11'
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
 .*Warning: invalid CSR `hstatus' for the privileged spec `1.11'
 .*Warning: invalid CSR `hstatus' for the privileged spec `1.11'
 .*Warning: invalid CSR `hedeleg' for the privileged spec `1.11'
 .*Warning: read-only CSR is written `csrw hgeip,a1'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.11'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.11'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.11'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.11'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.11'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.11'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.11'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.11'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.11'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.11'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.11'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.11'
 .*Warning: invalid CSR `mscounteren' for the privileged spec `1.11'
 .*Warning: invalid CSR `mhcounteren' for the privileged spec `1.11'
 .*Warning: invalid CSR `mhcounteren' for the privileged spec `1.11'
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
 .*Warning: read-only CSR is written `csrw vl,a1'
-.*Warning: invalid CSR `vtype' for the current ISA
-.*Warning: invalid CSR `vtype' for the current ISA
+.*Warning: invalid CSR `vtype', needs `v' extension
+.*Warning: invalid CSR `vtype', needs `v' extension
 .*Warning: read-only CSR is written `csrw vtype,a1'
-.*Warning: invalid CSR `vlenb' for the current ISA
-.*Warning: invalid CSR `vlenb' for the current ISA
+.*Warning: invalid CSR `vlenb', needs `v' extension
+.*Warning: invalid CSR `vlenb', needs `v' extension
 .*Warning: read-only CSR is written `csrw vlenb,a1'
index 8f173e7662ac8d6a1d5ccd39362b79659e4ff770..03d193cd50e91c4b2b269654fdb2c3acf44280d3 100644 (file)
 .*Warning: read-only CSR is written `csrw hpmcounter29,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter30,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter31,a1'
-.*Warning: invalid CSR `cycleh' for the current ISA
-.*Warning: invalid CSR `cycleh' for the current ISA
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Warning: invalid CSR `cycleh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw cycleh,a1'
-.*Warning: invalid CSR `timeh' for the current ISA
-.*Warning: invalid CSR `timeh' for the current ISA
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Warning: invalid CSR `timeh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw timeh,a1'
-.*Warning: invalid CSR `instreth' for the current ISA
-.*Warning: invalid CSR `instreth' for the current ISA
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Warning: invalid CSR `instreth', needs rv32i extension
 .*Warning: read-only CSR is written `csrw instreth,a1'
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter3h,a1'
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter4h,a1'
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter5h,a1'
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter6h,a1'
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter7h,a1'
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter8h,a1'
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter9h,a1'
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter10h,a1'
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter11h,a1'
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter12h,a1'
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter13h,a1'
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter14h,a1'
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter15h,a1'
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter16h,a1'
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter17h,a1'
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter18h,a1'
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter19h,a1'
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter20h,a1'
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter21h,a1'
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter22h,a1'
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter23h,a1'
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter24h,a1'
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter25h,a1'
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter26h,a1'
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter27h,a1'
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter28h,a1'
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter29h,a1'
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter30h,a1'
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter31h,a1'
 .*Warning: read-only CSR is written `csrw mvendorid,a1'
 .*Warning: read-only CSR is written `csrw marchid,a1'
 .*Warning: read-only CSR is written `csrw mimpid,a1'
 .*Warning: read-only CSR is written `csrw mhartid,a1'
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
-.*Warning: invalid CSR `mstatush' for the current ISA
-.*Warning: invalid CSR `mstatush' for the current ISA
-.*Warning: invalid CSR `menvcfgh' for the current ISA
-.*Warning: invalid CSR `menvcfgh' for the current ISA
-.*Warning: invalid CSR `mseccfgh' for the current ISA
-.*Warning: invalid CSR `mseccfgh' for the current ISA
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
+.*Warning: invalid CSR `mstatush', needs rv32i extension
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hgeip,a1'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
-.*Warning: invalid CSR `henvcfgh' for the current ISA
-.*Warning: invalid CSR `htimedeltah' for the current ISA
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `ubadaddr' for the privileged spec `1.12'
 .*Warning: invalid CSR `ubadaddr' for the privileged spec `1.12'
 .*Warning: invalid CSR `sbadaddr' for the privileged spec `1.12'
 .*Warning: invalid CSR `sedeleg' for the privileged spec `1.12'
 .*Warning: invalid CSR `sideleg' for the privileged spec `1.12'
 .*Warning: invalid CSR `sideleg' for the privileged spec `1.12'
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
 .*Warning: read-only CSR is written `csrw vl,a1'
-.*Warning: invalid CSR `vtype' for the current ISA
-.*Warning: invalid CSR `vtype' for the current ISA
+.*Warning: invalid CSR `vtype', needs `v' extension
+.*Warning: invalid CSR `vtype', needs `v' extension
 .*Warning: read-only CSR is written `csrw vtype,a1'
-.*Warning: invalid CSR `vlenb' for the current ISA
-.*Warning: invalid CSR `vlenb' for the current ISA
+.*Warning: invalid CSR `vlenb', needs `v' extension
+.*Warning: invalid CSR `vlenb', needs `v' extension
 .*Warning: read-only CSR is written `csrw vlenb,a1'
index 5fe87a18161576a1ecedb9aa683643357e68f88c..340216e5ca7cf1fb0be84912b815b7156a84b33b 100644 (file)
 .*Warning: read-only CSR is written `csrw hpmcounter29,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter30,a1'
 .*Warning: read-only CSR is written `csrw hpmcounter31,a1'
-.*Warning: invalid CSR `cycleh' for the current ISA
-.*Warning: invalid CSR `cycleh' for the current ISA
+.*Warning: invalid CSR `cycleh', needs rv32i extension
+.*Warning: invalid CSR `cycleh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw cycleh,a1'
-.*Warning: invalid CSR `timeh' for the current ISA
-.*Warning: invalid CSR `timeh' for the current ISA
+.*Warning: invalid CSR `timeh', needs rv32i extension
+.*Warning: invalid CSR `timeh', needs rv32i extension
 .*Warning: read-only CSR is written `csrw timeh,a1'
-.*Warning: invalid CSR `instreth' for the current ISA
-.*Warning: invalid CSR `instreth' for the current ISA
+.*Warning: invalid CSR `instreth', needs rv32i extension
+.*Warning: invalid CSR `instreth', needs rv32i extension
 .*Warning: read-only CSR is written `csrw instreth,a1'
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
-.*Warning: invalid CSR `hpmcounter3h' for the current ISA
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter3h,a1'
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
-.*Warning: invalid CSR `hpmcounter4h' for the current ISA
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter4h,a1'
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
-.*Warning: invalid CSR `hpmcounter5h' for the current ISA
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter5h,a1'
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
-.*Warning: invalid CSR `hpmcounter6h' for the current ISA
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter6h,a1'
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
-.*Warning: invalid CSR `hpmcounter7h' for the current ISA
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter7h,a1'
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
-.*Warning: invalid CSR `hpmcounter8h' for the current ISA
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter8h,a1'
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
-.*Warning: invalid CSR `hpmcounter9h' for the current ISA
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter9h,a1'
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
-.*Warning: invalid CSR `hpmcounter10h' for the current ISA
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter10h,a1'
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
-.*Warning: invalid CSR `hpmcounter11h' for the current ISA
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter11h,a1'
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
-.*Warning: invalid CSR `hpmcounter12h' for the current ISA
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter12h,a1'
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
-.*Warning: invalid CSR `hpmcounter13h' for the current ISA
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter13h,a1'
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
-.*Warning: invalid CSR `hpmcounter14h' for the current ISA
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter14h,a1'
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
-.*Warning: invalid CSR `hpmcounter15h' for the current ISA
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter15h,a1'
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
-.*Warning: invalid CSR `hpmcounter16h' for the current ISA
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter16h,a1'
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
-.*Warning: invalid CSR `hpmcounter17h' for the current ISA
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter17h,a1'
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
-.*Warning: invalid CSR `hpmcounter18h' for the current ISA
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter18h,a1'
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
-.*Warning: invalid CSR `hpmcounter19h' for the current ISA
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter19h,a1'
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
-.*Warning: invalid CSR `hpmcounter20h' for the current ISA
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter20h,a1'
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
-.*Warning: invalid CSR `hpmcounter21h' for the current ISA
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter21h,a1'
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
-.*Warning: invalid CSR `hpmcounter22h' for the current ISA
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter22h,a1'
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
-.*Warning: invalid CSR `hpmcounter23h' for the current ISA
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter23h,a1'
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
-.*Warning: invalid CSR `hpmcounter24h' for the current ISA
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter24h,a1'
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
-.*Warning: invalid CSR `hpmcounter25h' for the current ISA
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter25h,a1'
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
-.*Warning: invalid CSR `hpmcounter26h' for the current ISA
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter26h,a1'
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
-.*Warning: invalid CSR `hpmcounter27h' for the current ISA
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter27h,a1'
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
-.*Warning: invalid CSR `hpmcounter28h' for the current ISA
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter28h,a1'
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
-.*Warning: invalid CSR `hpmcounter29h' for the current ISA
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter29h,a1'
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
-.*Warning: invalid CSR `hpmcounter30h' for the current ISA
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter30h,a1'
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
-.*Warning: invalid CSR `hpmcounter31h' for the current ISA
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension
 .*Warning: read-only CSR is written `csrw hpmcounter31h,a1'
 .*Warning: invalid CSR `scounteren' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `scounteren' for the privileged spec `1.9.1'
 .*Warning: read-only CSR is written `csrw mconfigptr,a1'
 .*Warning: invalid CSR `mcounteren' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mcounteren' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `mstatush' for the current ISA
+.*Warning: invalid CSR `mstatush', needs rv32i extension
 .*Warning: invalid CSR `mstatush' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mtval' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mtval' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mtval2' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `menvcfg' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `menvcfgh' for the current ISA
+.*Warning: invalid CSR `menvcfgh', needs rv32i extension
 .*Warning: invalid CSR `menvcfgh' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mseccfg' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `mseccfgh' for the current ISA
+.*Warning: invalid CSR `mseccfgh', needs rv32i extension
 .*Warning: invalid CSR `mseccfgh' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg0' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg0' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg1' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg1' for the current ISA
+.*Warning: invalid CSR `pmpcfg1', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg1' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg2' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg2' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg3' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg3' for the current ISA
+.*Warning: invalid CSR `pmpcfg3', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg3' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg4' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg5' for the current ISA
+.*Warning: invalid CSR `pmpcfg5', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg5' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg6' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg7' for the current ISA
+.*Warning: invalid CSR `pmpcfg7', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg7' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg8' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg9' for the current ISA
+.*Warning: invalid CSR `pmpcfg9', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg9' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg10' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg11' for the current ISA
+.*Warning: invalid CSR `pmpcfg11', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg11' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg12' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg13' for the current ISA
+.*Warning: invalid CSR `pmpcfg13', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg13' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpcfg14' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `pmpcfg15' for the current ISA
+.*Warning: invalid CSR `pmpcfg15', needs rv32i extension
 .*Warning: invalid CSR `pmpcfg15' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpaddr0' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpaddr0' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpaddr62' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `pmpaddr63' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `mcycleh' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `minstreth' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter3h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter4h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter5h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter6h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter7h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter8h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter9h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter10h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter11h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter12h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter13h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter14h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter15h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter16h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter17h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter18h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter19h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter20h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter21h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter22h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter23h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter24h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter25h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter26h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter27h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter28h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter29h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter30h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
-.*Warning: invalid CSR `mhpmcounter31h' for the current ISA
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `mcycleh', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `minstreth', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
+.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension
 .*Warning: invalid CSR `mcountinhibit' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `mcountinhibit' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `hstatus' for the privileged spec `1.9.1'
 .*Warning: read-only CSR is written `csrw hgeip,a1'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `henvcfg' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `henvcfgh' for the current ISA
+.*Warning: invalid CSR `henvcfgh', needs rv32i extension
 .*Warning: invalid CSR `henvcfgh' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `hgatp' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `htimedelta' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `htimedeltah' for the current ISA
+.*Warning: invalid CSR `htimedeltah', needs rv32i extension
 .*Warning: invalid CSR `htimedeltah' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `vsstatus' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `vsatp' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `utval' for the privileged spec `1.9.1'
 .*Warning: invalid CSR `utval' for the privileged spec `1.9.1'
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `fflags' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `frm' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `fcsr' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `seed' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vstart' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxsat' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vxrm' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vcsr' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
-.*Warning: invalid CSR `vl' for the current ISA
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `fflags', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `frm', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `fcsr', needs `f' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `seed', needs `zkr' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vstart', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxsat', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vxrm', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vcsr', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
+.*Warning: invalid CSR `vl', needs `v' extension
 .*Warning: read-only CSR is written `csrw vl,a1'
-.*Warning: invalid CSR `vtype' for the current ISA
-.*Warning: invalid CSR `vtype' for the current ISA
+.*Warning: invalid CSR `vtype', needs `v' extension
+.*Warning: invalid CSR `vtype', needs `v' extension
 .*Warning: read-only CSR is written `csrw vtype,a1'
-.*Warning: invalid CSR `vlenb' for the current ISA
-.*Warning: invalid CSR `vlenb' for the current ISA
+.*Warning: invalid CSR `vlenb', needs `v' extension
+.*Warning: invalid CSR `vlenb', needs `v' extension
 .*Warning: read-only CSR is written `csrw vlenb,a1'