diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c index c070394a366..c50f9c9895e 100644 --- a/bfd/elfxx-riscv.c +++ b/bfd/elfxx-riscv.c @@ -1188,6 +1188,7 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] = {"smepmp", "zicsr", check_implicit_always}, {"ssaia", "zicsr", check_implicit_always}, {"sscofpmf", "zicsr", check_implicit_always}, + {"sspmp", "zicsr", check_implicit_always}, {"ssstateen", "zicsr", check_implicit_always}, {"sstc", "zicsr", check_implicit_always}, {"svadu", "zicsr", check_implicit_always}, @@ -1335,6 +1336,7 @@ static struct riscv_supported_ext riscv_supported_std_s_ext[] = {"smstateen", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, {"ssaia", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, {"sscofpmf", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, + {"sspmp", ISA_SPEC_CLASS_DRAFT, 0, 8, 0 }, {"ssstateen", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, {"sstc", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, {"svadu", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c index 5759d3a5fc4..5c12f91eca4 100644 --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -82,6 +82,8 @@ enum riscv_csr_class CSR_CLASS_SSAIA_AND_H, /* Ssaia with H */ CSR_CLASS_SSAIA_32, /* Ssaia, rv32 only */ CSR_CLASS_SSAIA_AND_H_32, /* Ssaia with H, rv32 only */ + CSR_CLASS_SSPMP, /* Sspmp only */ + CSR_CLASS_SSPMP_32, /* Sspmp RV32 only */ CSR_CLASS_SSSTATEEN, /* S[ms]stateen only */ CSR_CLASS_SSSTATEEN_AND_H, /* S[ms]stateen only (with H) */ CSR_CLASS_SSSTATEEN_AND_H_32, /* S[ms]stateen RV32 only (with H) */ @@ -1077,6 +1079,12 @@ riscv_csr_address (const char *csr_name, || csr_class == CSR_CLASS_SSAIA_AND_H_32); extension = "ssaia"; break; + case CSR_CLASS_SSPMP_32: + is_rv32_only = true; + /* Fall through. */ + case CSR_CLASS_SSPMP: + extension = "sspmp"; + break; case CSR_CLASS_SSSTATEEN_AND_H_32: is_rv32_only = true; /* Fall through. */ diff --git a/gas/testsuite/gas/riscv/csr-dw-regnums.d b/gas/testsuite/gas/riscv/csr-dw-regnums.d index cabb7c71918..d40d7cca728 100644 --- a/gas/testsuite/gas/riscv/csr-dw-regnums.d +++ b/gas/testsuite/gas/riscv/csr-dw-regnums.d @@ -399,6 +399,88 @@ Contents of the .* section: DW_CFA_offset_extended_sf: r5949 \(mhpmevent29h\) at cfa\+7412 DW_CFA_offset_extended_sf: r5950 \(mhpmevent30h\) at cfa\+7416 DW_CFA_offset_extended_sf: r5951 \(mhpmevent31h\) at cfa\+7420 + DW_CFA_offset_extended_sf: r5568 \(spmpcfg0\) at cfa\+5888 + DW_CFA_offset_extended_sf: r5569 \(spmpcfg1\) at cfa\+5892 + DW_CFA_offset_extended_sf: r5570 \(spmpcfg2\) at cfa\+5896 + DW_CFA_offset_extended_sf: r5571 \(spmpcfg3\) at cfa\+5900 + DW_CFA_offset_extended_sf: r5572 \(spmpcfg4\) at cfa\+5904 + DW_CFA_offset_extended_sf: r5573 \(spmpcfg5\) at cfa\+5908 + DW_CFA_offset_extended_sf: r5574 \(spmpcfg6\) at cfa\+5912 + DW_CFA_offset_extended_sf: r5575 \(spmpcfg7\) at cfa\+5916 + DW_CFA_offset_extended_sf: r5576 \(spmpcfg8\) at cfa\+5920 + DW_CFA_offset_extended_sf: r5577 \(spmpcfg9\) at cfa\+5924 + DW_CFA_offset_extended_sf: r5578 \(spmpcfg10\) at cfa\+5928 + DW_CFA_offset_extended_sf: r5579 \(spmpcfg11\) at cfa\+5932 + DW_CFA_offset_extended_sf: r5580 \(spmpcfg12\) at cfa\+5936 + DW_CFA_offset_extended_sf: r5581 \(spmpcfg13\) at cfa\+5940 + DW_CFA_offset_extended_sf: r5582 \(spmpcfg14\) at cfa\+5944 + DW_CFA_offset_extended_sf: r5583 \(spmpcfg15\) at cfa\+5948 + DW_CFA_offset_extended_sf: r5584 \(spmpswitch0\) at cfa\+5952 + DW_CFA_offset_extended_sf: r5585 \(spmpswitch1\) at cfa\+5956 + DW_CFA_offset_extended_sf: r6592 \(spmpaddr0\) at cfa\+9984 + DW_CFA_offset_extended_sf: r6593 \(spmpaddr1\) at cfa\+9988 + DW_CFA_offset_extended_sf: r6594 \(spmpaddr2\) at cfa\+9992 + DW_CFA_offset_extended_sf: r6595 \(spmpaddr3\) at cfa\+9996 + DW_CFA_offset_extended_sf: r6596 \(spmpaddr4\) at cfa\+10000 + DW_CFA_offset_extended_sf: r6597 \(spmpaddr5\) at cfa\+10004 + DW_CFA_offset_extended_sf: r6598 \(spmpaddr6\) at cfa\+10008 + DW_CFA_offset_extended_sf: r6599 \(spmpaddr7\) at cfa\+10012 + DW_CFA_offset_extended_sf: r6600 \(spmpaddr8\) at cfa\+10016 + DW_CFA_offset_extended_sf: r6601 \(spmpaddr9\) at cfa\+10020 + DW_CFA_offset_extended_sf: r6602 \(spmpaddr10\) at cfa\+10024 + DW_CFA_offset_extended_sf: r6603 \(spmpaddr11\) at cfa\+10028 + DW_CFA_offset_extended_sf: r6604 \(spmpaddr12\) at cfa\+10032 + DW_CFA_offset_extended_sf: r6605 \(spmpaddr13\) at cfa\+10036 + DW_CFA_offset_extended_sf: r6606 \(spmpaddr14\) at cfa\+10040 + DW_CFA_offset_extended_sf: r6607 \(spmpaddr15\) at cfa\+10044 + DW_CFA_offset_extended_sf: r6608 \(spmpaddr16\) at cfa\+10048 + DW_CFA_offset_extended_sf: r6609 \(spmpaddr17\) at cfa\+10052 + DW_CFA_offset_extended_sf: r6610 \(spmpaddr18\) at cfa\+10056 + DW_CFA_offset_extended_sf: r6611 \(spmpaddr19\) at cfa\+10060 + DW_CFA_offset_extended_sf: r6612 \(spmpaddr20\) at cfa\+10064 + DW_CFA_offset_extended_sf: r6613 \(spmpaddr21\) at cfa\+10068 + DW_CFA_offset_extended_sf: r6614 \(spmpaddr22\) at cfa\+10072 + DW_CFA_offset_extended_sf: r6615 \(spmpaddr23\) at cfa\+10076 + DW_CFA_offset_extended_sf: r6616 \(spmpaddr24\) at cfa\+10080 + DW_CFA_offset_extended_sf: r6617 \(spmpaddr25\) at cfa\+10084 + DW_CFA_offset_extended_sf: r6618 \(spmpaddr26\) at cfa\+10088 + DW_CFA_offset_extended_sf: r6619 \(spmpaddr27\) at cfa\+10092 + DW_CFA_offset_extended_sf: r6620 \(spmpaddr28\) at cfa\+10096 + DW_CFA_offset_extended_sf: r6621 \(spmpaddr29\) at cfa\+10100 + DW_CFA_offset_extended_sf: r6622 \(spmpaddr30\) at cfa\+10104 + DW_CFA_offset_extended_sf: r6623 \(spmpaddr31\) at cfa\+10108 + DW_CFA_offset_extended_sf: r6624 \(spmpaddr32\) at cfa\+10112 + DW_CFA_offset_extended_sf: r6625 \(spmpaddr33\) at cfa\+10116 + DW_CFA_offset_extended_sf: r6626 \(spmpaddr34\) at cfa\+10120 + DW_CFA_offset_extended_sf: r6627 \(spmpaddr35\) at cfa\+10124 + DW_CFA_offset_extended_sf: r6628 \(spmpaddr36\) at cfa\+10128 + DW_CFA_offset_extended_sf: r6629 \(spmpaddr37\) at cfa\+10132 + DW_CFA_offset_extended_sf: r6630 \(spmpaddr38\) at cfa\+10136 + DW_CFA_offset_extended_sf: r6631 \(spmpaddr39\) at cfa\+10140 + DW_CFA_offset_extended_sf: r6632 \(spmpaddr40\) at cfa\+10144 + DW_CFA_offset_extended_sf: r6633 \(spmpaddr41\) at cfa\+10148 + DW_CFA_offset_extended_sf: r6634 \(spmpaddr42\) at cfa\+10152 + DW_CFA_offset_extended_sf: r6635 \(spmpaddr43\) at cfa\+10156 + DW_CFA_offset_extended_sf: r6636 \(spmpaddr44\) at cfa\+10160 + DW_CFA_offset_extended_sf: r6637 \(spmpaddr45\) at cfa\+10164 + DW_CFA_offset_extended_sf: r6638 \(spmpaddr46\) at cfa\+10168 + DW_CFA_offset_extended_sf: r6639 \(spmpaddr47\) at cfa\+10172 + DW_CFA_offset_extended_sf: r6640 \(spmpaddr48\) at cfa\+10176 + DW_CFA_offset_extended_sf: r6641 \(spmpaddr49\) at cfa\+10180 + DW_CFA_offset_extended_sf: r6642 \(spmpaddr50\) at cfa\+10184 + DW_CFA_offset_extended_sf: r6643 \(spmpaddr51\) at cfa\+10188 + DW_CFA_offset_extended_sf: r6644 \(spmpaddr52\) at cfa\+10192 + DW_CFA_offset_extended_sf: r6645 \(spmpaddr53\) at cfa\+10196 + DW_CFA_offset_extended_sf: r6646 \(spmpaddr54\) at cfa\+10200 + DW_CFA_offset_extended_sf: r6647 \(spmpaddr55\) at cfa\+10204 + DW_CFA_offset_extended_sf: r6648 \(spmpaddr56\) at cfa\+10208 + DW_CFA_offset_extended_sf: r6649 \(spmpaddr57\) at cfa\+10212 + DW_CFA_offset_extended_sf: r6650 \(spmpaddr58\) at cfa\+10216 + DW_CFA_offset_extended_sf: r6651 \(spmpaddr59\) at cfa\+10220 + DW_CFA_offset_extended_sf: r6652 \(spmpaddr60\) at cfa\+10224 + DW_CFA_offset_extended_sf: r6653 \(spmpaddr61\) at cfa\+10228 + DW_CFA_offset_extended_sf: r6654 \(spmpaddr62\) at cfa\+10232 + DW_CFA_offset_extended_sf: r6655 \(spmpaddr63\) at cfa\+10236 DW_CFA_offset_extended_sf: r4429 \(stimecmp\) at cfa\+1332 DW_CFA_offset_extended_sf: r4445 \(stimecmph\) at cfa\+1396 DW_CFA_offset_extended_sf: r4685 \(vstimecmp\) at cfa\+2356 diff --git a/gas/testsuite/gas/riscv/csr-dw-regnums.s b/gas/testsuite/gas/riscv/csr-dw-regnums.s index 428d0770779..c7693928988 100644 --- a/gas/testsuite/gas/riscv/csr-dw-regnums.s +++ b/gas/testsuite/gas/riscv/csr-dw-regnums.s @@ -400,6 +400,89 @@ _start: .cfi_offset mhpmevent29h, 7412 .cfi_offset mhpmevent30h, 7416 .cfi_offset mhpmevent31h, 7420 + # Sspmp extension + .cfi_offset spmpcfg0, 5888 + .cfi_offset spmpcfg1, 5892 + .cfi_offset spmpcfg2, 5896 + .cfi_offset spmpcfg3, 5900 + .cfi_offset spmpcfg4, 5904 + .cfi_offset spmpcfg5, 5908 + .cfi_offset spmpcfg6, 5912 + .cfi_offset spmpcfg7, 5916 + .cfi_offset spmpcfg8, 5920 + .cfi_offset spmpcfg9, 5924 + .cfi_offset spmpcfg10, 5928 + .cfi_offset spmpcfg11, 5932 + .cfi_offset spmpcfg12, 5936 + .cfi_offset spmpcfg13, 5940 + .cfi_offset spmpcfg14, 5944 + .cfi_offset spmpcfg15, 5948 + .cfi_offset spmpswitch0, 5952 + .cfi_offset spmpswitch1, 5956 + .cfi_offset spmpaddr0, 9984 + .cfi_offset spmpaddr1, 9988 + .cfi_offset spmpaddr2, 9992 + .cfi_offset spmpaddr3, 9996 + .cfi_offset spmpaddr4, 10000 + .cfi_offset spmpaddr5, 10004 + .cfi_offset spmpaddr6, 10008 + .cfi_offset spmpaddr7, 10012 + .cfi_offset spmpaddr8, 10016 + .cfi_offset spmpaddr9, 10020 + .cfi_offset spmpaddr10, 10024 + .cfi_offset spmpaddr11, 10028 + .cfi_offset spmpaddr12, 10032 + .cfi_offset spmpaddr13, 10036 + .cfi_offset spmpaddr14, 10040 + .cfi_offset spmpaddr15, 10044 + .cfi_offset spmpaddr16, 10048 + .cfi_offset spmpaddr17, 10052 + .cfi_offset spmpaddr18, 10056 + .cfi_offset spmpaddr19, 10060 + .cfi_offset spmpaddr20, 10064 + .cfi_offset spmpaddr21, 10068 + .cfi_offset spmpaddr22, 10072 + .cfi_offset spmpaddr23, 10076 + .cfi_offset spmpaddr24, 10080 + .cfi_offset spmpaddr25, 10084 + .cfi_offset spmpaddr26, 10088 + .cfi_offset spmpaddr27, 10092 + .cfi_offset spmpaddr28, 10096 + .cfi_offset spmpaddr29, 10100 + .cfi_offset spmpaddr30, 10104 + .cfi_offset spmpaddr31, 10108 + .cfi_offset spmpaddr32, 10112 + .cfi_offset spmpaddr33, 10116 + .cfi_offset spmpaddr34, 10120 + .cfi_offset spmpaddr35, 10124 + .cfi_offset spmpaddr36, 10128 + .cfi_offset spmpaddr37, 10132 + .cfi_offset spmpaddr38, 10136 + .cfi_offset spmpaddr39, 10140 + .cfi_offset spmpaddr40, 10144 + .cfi_offset spmpaddr41, 10148 + .cfi_offset spmpaddr42, 10152 + .cfi_offset spmpaddr43, 10156 + .cfi_offset spmpaddr44, 10160 + .cfi_offset spmpaddr45, 10164 + .cfi_offset spmpaddr46, 10168 + .cfi_offset spmpaddr47, 10172 + .cfi_offset spmpaddr48, 10176 + .cfi_offset spmpaddr49, 10180 + .cfi_offset spmpaddr50, 10184 + .cfi_offset spmpaddr51, 10188 + .cfi_offset spmpaddr52, 10192 + .cfi_offset spmpaddr53, 10196 + .cfi_offset spmpaddr54, 10200 + .cfi_offset spmpaddr55, 10204 + .cfi_offset spmpaddr56, 10208 + .cfi_offset spmpaddr57, 10212 + .cfi_offset spmpaddr58, 10216 + .cfi_offset spmpaddr59, 10220 + .cfi_offset spmpaddr60, 10224 + .cfi_offset spmpaddr61, 10228 + .cfi_offset spmpaddr62, 10232 + .cfi_offset spmpaddr63, 10236 # Sstc extension .cfi_offset stimecmp, 1332 .cfi_offset stimecmph, 1396 diff --git a/gas/testsuite/gas/riscv/csr-version-1p10.d b/gas/testsuite/gas/riscv/csr-version-1p10.d index dbdc077adac..bfdbf1cf3b1 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.d +++ b/gas/testsuite/gas/riscv/csr-version-1p10.d @@ -773,6 +773,170 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+73e59073[ ]+csrw[ ]+mhpmevent30h,a1 [ ]+[0-9a-f]+:[ ]+73f02573[ ]+csrr[ ]+a0,mhpmevent31h [ ]+[0-9a-f]+:[ ]+73f59073[ ]+csrw[ ]+mhpmevent31h,a1 +[ ]+[0-9a-f]+:[ ]+5c002573[ ]+csrr[ ]+a0,spmpcfg0 +[ ]+[0-9a-f]+:[ ]+5c059073[ ]+csrw[ ]+spmpcfg0,a1 +[ ]+[0-9a-f]+:[ ]+5c102573[ ]+csrr[ ]+a0,spmpcfg1 +[ ]+[0-9a-f]+:[ ]+5c159073[ ]+csrw[ ]+spmpcfg1,a1 +[ ]+[0-9a-f]+:[ ]+5c202573[ ]+csrr[ ]+a0,spmpcfg2 +[ ]+[0-9a-f]+:[ ]+5c259073[ ]+csrw[ ]+spmpcfg2,a1 +[ ]+[0-9a-f]+:[ ]+5c302573[ ]+csrr[ ]+a0,spmpcfg3 +[ ]+[0-9a-f]+:[ ]+5c359073[ ]+csrw[ ]+spmpcfg3,a1 +[ ]+[0-9a-f]+:[ ]+5c402573[ ]+csrr[ ]+a0,spmpcfg4 +[ ]+[0-9a-f]+:[ ]+5c459073[ ]+csrw[ ]+spmpcfg4,a1 +[ ]+[0-9a-f]+:[ ]+5c502573[ ]+csrr[ ]+a0,spmpcfg5 +[ ]+[0-9a-f]+:[ ]+5c559073[ ]+csrw[ ]+spmpcfg5,a1 +[ ]+[0-9a-f]+:[ ]+5c602573[ ]+csrr[ ]+a0,spmpcfg6 +[ ]+[0-9a-f]+:[ ]+5c659073[ ]+csrw[ ]+spmpcfg6,a1 +[ ]+[0-9a-f]+:[ ]+5c702573[ ]+csrr[ ]+a0,spmpcfg7 +[ ]+[0-9a-f]+:[ ]+5c759073[ ]+csrw[ ]+spmpcfg7,a1 +[ ]+[0-9a-f]+:[ ]+5c802573[ ]+csrr[ ]+a0,spmpcfg8 +[ ]+[0-9a-f]+:[ ]+5c859073[ ]+csrw[ ]+spmpcfg8,a1 +[ ]+[0-9a-f]+:[ ]+5c902573[ ]+csrr[ ]+a0,spmpcfg9 +[ ]+[0-9a-f]+:[ ]+5c959073[ ]+csrw[ ]+spmpcfg9,a1 +[ ]+[0-9a-f]+:[ ]+5ca02573[ ]+csrr[ ]+a0,spmpcfg10 +[ ]+[0-9a-f]+:[ ]+5ca59073[ ]+csrw[ ]+spmpcfg10,a1 +[ ]+[0-9a-f]+:[ ]+5cb02573[ ]+csrr[ ]+a0,spmpcfg11 +[ ]+[0-9a-f]+:[ ]+5cb59073[ ]+csrw[ ]+spmpcfg11,a1 +[ ]+[0-9a-f]+:[ ]+5cc02573[ ]+csrr[ ]+a0,spmpcfg12 +[ ]+[0-9a-f]+:[ ]+5cc59073[ ]+csrw[ ]+spmpcfg12,a1 +[ ]+[0-9a-f]+:[ ]+5cd02573[ ]+csrr[ ]+a0,spmpcfg13 +[ ]+[0-9a-f]+:[ ]+5cd59073[ ]+csrw[ ]+spmpcfg13,a1 +[ ]+[0-9a-f]+:[ ]+5ce02573[ ]+csrr[ ]+a0,spmpcfg14 +[ ]+[0-9a-f]+:[ ]+5ce59073[ ]+csrw[ ]+spmpcfg14,a1 +[ ]+[0-9a-f]+:[ ]+5cf02573[ ]+csrr[ ]+a0,spmpcfg15 +[ ]+[0-9a-f]+:[ ]+5cf59073[ ]+csrw[ ]+spmpcfg15,a1 +[ ]+[0-9a-f]+:[ ]+5d002573[ ]+csrr[ ]+a0,spmpswitch0 +[ ]+[0-9a-f]+:[ ]+5d059073[ ]+csrw[ ]+spmpswitch0,a1 +[ ]+[0-9a-f]+:[ ]+5d102573[ ]+csrr[ ]+a0,spmpswitch1 +[ ]+[0-9a-f]+:[ ]+5d159073[ ]+csrw[ ]+spmpswitch1,a1 +[ ]+[0-9a-f]+:[ ]+9c002573[ ]+csrr[ ]+a0,spmpaddr0 +[ ]+[0-9a-f]+:[ ]+9c059073[ ]+csrw[ ]+spmpaddr0,a1 +[ ]+[0-9a-f]+:[ ]+9c102573[ ]+csrr[ ]+a0,spmpaddr1 +[ ]+[0-9a-f]+:[ ]+9c159073[ ]+csrw[ ]+spmpaddr1,a1 +[ ]+[0-9a-f]+:[ ]+9c202573[ ]+csrr[ ]+a0,spmpaddr2 +[ ]+[0-9a-f]+:[ ]+9c259073[ ]+csrw[ ]+spmpaddr2,a1 +[ ]+[0-9a-f]+:[ ]+9c302573[ ]+csrr[ ]+a0,spmpaddr3 +[ ]+[0-9a-f]+:[ ]+9c359073[ ]+csrw[ ]+spmpaddr3,a1 +[ ]+[0-9a-f]+:[ ]+9c402573[ ]+csrr[ ]+a0,spmpaddr4 +[ ]+[0-9a-f]+:[ ]+9c459073[ ]+csrw[ ]+spmpaddr4,a1 +[ ]+[0-9a-f]+:[ ]+9c502573[ ]+csrr[ ]+a0,spmpaddr5 +[ ]+[0-9a-f]+:[ ]+9c559073[ ]+csrw[ ]+spmpaddr5,a1 +[ ]+[0-9a-f]+:[ ]+9c602573[ ]+csrr[ ]+a0,spmpaddr6 +[ ]+[0-9a-f]+:[ ]+9c659073[ ]+csrw[ ]+spmpaddr6,a1 +[ ]+[0-9a-f]+:[ ]+9c702573[ ]+csrr[ ]+a0,spmpaddr7 +[ ]+[0-9a-f]+:[ ]+9c759073[ ]+csrw[ ]+spmpaddr7,a1 +[ ]+[0-9a-f]+:[ ]+9c802573[ ]+csrr[ ]+a0,spmpaddr8 +[ ]+[0-9a-f]+:[ ]+9c859073[ ]+csrw[ ]+spmpaddr8,a1 +[ ]+[0-9a-f]+:[ ]+9c902573[ ]+csrr[ ]+a0,spmpaddr9 +[ ]+[0-9a-f]+:[ ]+9c959073[ ]+csrw[ ]+spmpaddr9,a1 +[ ]+[0-9a-f]+:[ ]+9ca02573[ ]+csrr[ ]+a0,spmpaddr10 +[ ]+[0-9a-f]+:[ ]+9ca59073[ ]+csrw[ ]+spmpaddr10,a1 +[ ]+[0-9a-f]+:[ ]+9cb02573[ ]+csrr[ ]+a0,spmpaddr11 +[ ]+[0-9a-f]+:[ ]+9cb59073[ ]+csrw[ ]+spmpaddr11,a1 +[ ]+[0-9a-f]+:[ ]+9cc02573[ ]+csrr[ ]+a0,spmpaddr12 +[ ]+[0-9a-f]+:[ ]+9cc59073[ ]+csrw[ ]+spmpaddr12,a1 +[ ]+[0-9a-f]+:[ ]+9cd02573[ ]+csrr[ ]+a0,spmpaddr13 +[ ]+[0-9a-f]+:[ ]+9cd59073[ ]+csrw[ ]+spmpaddr13,a1 +[ ]+[0-9a-f]+:[ ]+9ce02573[ ]+csrr[ ]+a0,spmpaddr14 +[ ]+[0-9a-f]+:[ ]+9ce59073[ ]+csrw[ ]+spmpaddr14,a1 +[ ]+[0-9a-f]+:[ ]+9cf02573[ ]+csrr[ ]+a0,spmpaddr15 +[ ]+[0-9a-f]+:[ ]+9cf59073[ ]+csrw[ ]+spmpaddr15,a1 +[ ]+[0-9a-f]+:[ ]+9d002573[ ]+csrr[ ]+a0,spmpaddr16 +[ ]+[0-9a-f]+:[ ]+9d059073[ ]+csrw[ ]+spmpaddr16,a1 +[ ]+[0-9a-f]+:[ ]+9d102573[ ]+csrr[ ]+a0,spmpaddr17 +[ ]+[0-9a-f]+:[ ]+9d159073[ ]+csrw[ ]+spmpaddr17,a1 +[ ]+[0-9a-f]+:[ ]+9d202573[ ]+csrr[ ]+a0,spmpaddr18 +[ ]+[0-9a-f]+:[ ]+9d259073[ ]+csrw[ ]+spmpaddr18,a1 +[ ]+[0-9a-f]+:[ ]+9d302573[ ]+csrr[ ]+a0,spmpaddr19 +[ ]+[0-9a-f]+:[ ]+9d359073[ ]+csrw[ ]+spmpaddr19,a1 +[ ]+[0-9a-f]+:[ ]+9d402573[ ]+csrr[ ]+a0,spmpaddr20 +[ ]+[0-9a-f]+:[ ]+9d459073[ ]+csrw[ ]+spmpaddr20,a1 +[ ]+[0-9a-f]+:[ ]+9d502573[ ]+csrr[ ]+a0,spmpaddr21 +[ ]+[0-9a-f]+:[ ]+9d559073[ ]+csrw[ ]+spmpaddr21,a1 +[ ]+[0-9a-f]+:[ ]+9d602573[ ]+csrr[ ]+a0,spmpaddr22 +[ ]+[0-9a-f]+:[ ]+9d659073[ ]+csrw[ ]+spmpaddr22,a1 +[ ]+[0-9a-f]+:[ ]+9d702573[ ]+csrr[ ]+a0,spmpaddr23 +[ ]+[0-9a-f]+:[ ]+9d759073[ ]+csrw[ ]+spmpaddr23,a1 +[ ]+[0-9a-f]+:[ ]+9d802573[ ]+csrr[ ]+a0,spmpaddr24 +[ ]+[0-9a-f]+:[ ]+9d859073[ ]+csrw[ ]+spmpaddr24,a1 +[ ]+[0-9a-f]+:[ ]+9d902573[ ]+csrr[ ]+a0,spmpaddr25 +[ ]+[0-9a-f]+:[ ]+9d959073[ ]+csrw[ ]+spmpaddr25,a1 +[ ]+[0-9a-f]+:[ ]+9da02573[ ]+csrr[ ]+a0,spmpaddr26 +[ ]+[0-9a-f]+:[ ]+9da59073[ ]+csrw[ ]+spmpaddr26,a1 +[ ]+[0-9a-f]+:[ ]+9db02573[ ]+csrr[ ]+a0,spmpaddr27 +[ ]+[0-9a-f]+:[ ]+9db59073[ ]+csrw[ ]+spmpaddr27,a1 +[ ]+[0-9a-f]+:[ ]+9dc02573[ ]+csrr[ ]+a0,spmpaddr28 +[ ]+[0-9a-f]+:[ ]+9dc59073[ ]+csrw[ ]+spmpaddr28,a1 +[ ]+[0-9a-f]+:[ ]+9dd02573[ ]+csrr[ ]+a0,spmpaddr29 +[ ]+[0-9a-f]+:[ ]+9dd59073[ ]+csrw[ ]+spmpaddr29,a1 +[ ]+[0-9a-f]+:[ ]+9de02573[ ]+csrr[ ]+a0,spmpaddr30 +[ ]+[0-9a-f]+:[ ]+9de59073[ ]+csrw[ ]+spmpaddr30,a1 +[ ]+[0-9a-f]+:[ ]+9df02573[ ]+csrr[ ]+a0,spmpaddr31 +[ ]+[0-9a-f]+:[ ]+9df59073[ ]+csrw[ ]+spmpaddr31,a1 +[ ]+[0-9a-f]+:[ ]+9e002573[ ]+csrr[ ]+a0,spmpaddr32 +[ ]+[0-9a-f]+:[ ]+9e059073[ ]+csrw[ ]+spmpaddr32,a1 +[ ]+[0-9a-f]+:[ ]+9e102573[ ]+csrr[ ]+a0,spmpaddr33 +[ ]+[0-9a-f]+:[ ]+9e159073[ ]+csrw[ ]+spmpaddr33,a1 +[ ]+[0-9a-f]+:[ ]+9e202573[ ]+csrr[ ]+a0,spmpaddr34 +[ ]+[0-9a-f]+:[ ]+9e259073[ ]+csrw[ ]+spmpaddr34,a1 +[ ]+[0-9a-f]+:[ ]+9e302573[ ]+csrr[ ]+a0,spmpaddr35 +[ ]+[0-9a-f]+:[ ]+9e359073[ ]+csrw[ ]+spmpaddr35,a1 +[ ]+[0-9a-f]+:[ ]+9e402573[ ]+csrr[ ]+a0,spmpaddr36 +[ ]+[0-9a-f]+:[ ]+9e459073[ ]+csrw[ ]+spmpaddr36,a1 +[ ]+[0-9a-f]+:[ ]+9e502573[ ]+csrr[ ]+a0,spmpaddr37 +[ ]+[0-9a-f]+:[ ]+9e559073[ ]+csrw[ ]+spmpaddr37,a1 +[ ]+[0-9a-f]+:[ ]+9e602573[ ]+csrr[ ]+a0,spmpaddr38 +[ ]+[0-9a-f]+:[ ]+9e659073[ ]+csrw[ ]+spmpaddr38,a1 +[ ]+[0-9a-f]+:[ ]+9e702573[ ]+csrr[ ]+a0,spmpaddr39 +[ ]+[0-9a-f]+:[ ]+9e759073[ ]+csrw[ ]+spmpaddr39,a1 +[ ]+[0-9a-f]+:[ ]+9e802573[ ]+csrr[ ]+a0,spmpaddr40 +[ ]+[0-9a-f]+:[ ]+9e859073[ ]+csrw[ ]+spmpaddr40,a1 +[ ]+[0-9a-f]+:[ ]+9e902573[ ]+csrr[ ]+a0,spmpaddr41 +[ ]+[0-9a-f]+:[ ]+9e959073[ ]+csrw[ ]+spmpaddr41,a1 +[ ]+[0-9a-f]+:[ ]+9ea02573[ ]+csrr[ ]+a0,spmpaddr42 +[ ]+[0-9a-f]+:[ ]+9ea59073[ ]+csrw[ ]+spmpaddr42,a1 +[ ]+[0-9a-f]+:[ ]+9eb02573[ ]+csrr[ ]+a0,spmpaddr43 +[ ]+[0-9a-f]+:[ ]+9eb59073[ ]+csrw[ ]+spmpaddr43,a1 +[ ]+[0-9a-f]+:[ ]+9ec02573[ ]+csrr[ ]+a0,spmpaddr44 +[ ]+[0-9a-f]+:[ ]+9ec59073[ ]+csrw[ ]+spmpaddr44,a1 +[ ]+[0-9a-f]+:[ ]+9ed02573[ ]+csrr[ ]+a0,spmpaddr45 +[ ]+[0-9a-f]+:[ ]+9ed59073[ ]+csrw[ ]+spmpaddr45,a1 +[ ]+[0-9a-f]+:[ ]+9ee02573[ ]+csrr[ ]+a0,spmpaddr46 +[ ]+[0-9a-f]+:[ ]+9ee59073[ ]+csrw[ ]+spmpaddr46,a1 +[ ]+[0-9a-f]+:[ ]+9ef02573[ ]+csrr[ ]+a0,spmpaddr47 +[ ]+[0-9a-f]+:[ ]+9ef59073[ ]+csrw[ ]+spmpaddr47,a1 +[ ]+[0-9a-f]+:[ ]+9f002573[ ]+csrr[ ]+a0,spmpaddr48 +[ ]+[0-9a-f]+:[ ]+9f059073[ ]+csrw[ ]+spmpaddr48,a1 +[ ]+[0-9a-f]+:[ ]+9f102573[ ]+csrr[ ]+a0,spmpaddr49 +[ ]+[0-9a-f]+:[ ]+9f159073[ ]+csrw[ ]+spmpaddr49,a1 +[ ]+[0-9a-f]+:[ ]+9f202573[ ]+csrr[ ]+a0,spmpaddr50 +[ ]+[0-9a-f]+:[ ]+9f259073[ ]+csrw[ ]+spmpaddr50,a1 +[ ]+[0-9a-f]+:[ ]+9f302573[ ]+csrr[ ]+a0,spmpaddr51 +[ ]+[0-9a-f]+:[ ]+9f359073[ ]+csrw[ ]+spmpaddr51,a1 +[ ]+[0-9a-f]+:[ ]+9f402573[ ]+csrr[ ]+a0,spmpaddr52 +[ ]+[0-9a-f]+:[ ]+9f459073[ ]+csrw[ ]+spmpaddr52,a1 +[ ]+[0-9a-f]+:[ ]+9f502573[ ]+csrr[ ]+a0,spmpaddr53 +[ ]+[0-9a-f]+:[ ]+9f559073[ ]+csrw[ ]+spmpaddr53,a1 +[ ]+[0-9a-f]+:[ ]+9f602573[ ]+csrr[ ]+a0,spmpaddr54 +[ ]+[0-9a-f]+:[ ]+9f659073[ ]+csrw[ ]+spmpaddr54,a1 +[ ]+[0-9a-f]+:[ ]+9f702573[ ]+csrr[ ]+a0,spmpaddr55 +[ ]+[0-9a-f]+:[ ]+9f759073[ ]+csrw[ ]+spmpaddr55,a1 +[ ]+[0-9a-f]+:[ ]+9f802573[ ]+csrr[ ]+a0,spmpaddr56 +[ ]+[0-9a-f]+:[ ]+9f859073[ ]+csrw[ ]+spmpaddr56,a1 +[ ]+[0-9a-f]+:[ ]+9f902573[ ]+csrr[ ]+a0,spmpaddr57 +[ ]+[0-9a-f]+:[ ]+9f959073[ ]+csrw[ ]+spmpaddr57,a1 +[ ]+[0-9a-f]+:[ ]+9fa02573[ ]+csrr[ ]+a0,spmpaddr58 +[ ]+[0-9a-f]+:[ ]+9fa59073[ ]+csrw[ ]+spmpaddr58,a1 +[ ]+[0-9a-f]+:[ ]+9fb02573[ ]+csrr[ ]+a0,spmpaddr59 +[ ]+[0-9a-f]+:[ ]+9fb59073[ ]+csrw[ ]+spmpaddr59,a1 +[ ]+[0-9a-f]+:[ ]+9fc02573[ ]+csrr[ ]+a0,spmpaddr60 +[ ]+[0-9a-f]+:[ ]+9fc59073[ ]+csrw[ ]+spmpaddr60,a1 +[ ]+[0-9a-f]+:[ ]+9fd02573[ ]+csrr[ ]+a0,spmpaddr61 +[ ]+[0-9a-f]+:[ ]+9fd59073[ ]+csrw[ ]+spmpaddr61,a1 +[ ]+[0-9a-f]+:[ ]+9fe02573[ ]+csrr[ ]+a0,spmpaddr62 +[ ]+[0-9a-f]+:[ ]+9fe59073[ ]+csrw[ ]+spmpaddr62,a1 +[ ]+[0-9a-f]+:[ ]+9ff02573[ ]+csrr[ ]+a0,spmpaddr63 +[ ]+[0-9a-f]+:[ ]+9ff59073[ ]+csrw[ ]+spmpaddr63,a1 [ ]+[0-9a-f]+:[ ]+14d02573[ ]+csrr[ ]+a0,stimecmp [ ]+[0-9a-f]+:[ ]+14d59073[ ]+csrw[ ]+stimecmp,a1 [ ]+[0-9a-f]+:[ ]+15d02573[ ]+csrr[ ]+a0,stimecmph diff --git a/gas/testsuite/gas/riscv/csr-version-1p10.l b/gas/testsuite/gas/riscv/csr-version-1p10.l index 054179a416d..917edd4bbcf 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.l +++ b/gas/testsuite/gas/riscv/csr-version-1p10.l @@ -1479,6 +1479,370 @@ .*Info: macro .* .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p11.d b/gas/testsuite/gas/riscv/csr-version-1p11.d index 7ba88b6d1d5..a099a6b34c5 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.d +++ b/gas/testsuite/gas/riscv/csr-version-1p11.d @@ -773,6 +773,170 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+73e59073[ ]+csrw[ ]+mhpmevent30h,a1 [ ]+[0-9a-f]+:[ ]+73f02573[ ]+csrr[ ]+a0,mhpmevent31h [ ]+[0-9a-f]+:[ ]+73f59073[ ]+csrw[ ]+mhpmevent31h,a1 +[ ]+[0-9a-f]+:[ ]+5c002573[ ]+csrr[ ]+a0,spmpcfg0 +[ ]+[0-9a-f]+:[ ]+5c059073[ ]+csrw[ ]+spmpcfg0,a1 +[ ]+[0-9a-f]+:[ ]+5c102573[ ]+csrr[ ]+a0,spmpcfg1 +[ ]+[0-9a-f]+:[ ]+5c159073[ ]+csrw[ ]+spmpcfg1,a1 +[ ]+[0-9a-f]+:[ ]+5c202573[ ]+csrr[ ]+a0,spmpcfg2 +[ ]+[0-9a-f]+:[ ]+5c259073[ ]+csrw[ ]+spmpcfg2,a1 +[ ]+[0-9a-f]+:[ ]+5c302573[ ]+csrr[ ]+a0,spmpcfg3 +[ ]+[0-9a-f]+:[ ]+5c359073[ ]+csrw[ ]+spmpcfg3,a1 +[ ]+[0-9a-f]+:[ ]+5c402573[ ]+csrr[ ]+a0,spmpcfg4 +[ ]+[0-9a-f]+:[ ]+5c459073[ ]+csrw[ ]+spmpcfg4,a1 +[ ]+[0-9a-f]+:[ ]+5c502573[ ]+csrr[ ]+a0,spmpcfg5 +[ ]+[0-9a-f]+:[ ]+5c559073[ ]+csrw[ ]+spmpcfg5,a1 +[ ]+[0-9a-f]+:[ ]+5c602573[ ]+csrr[ ]+a0,spmpcfg6 +[ ]+[0-9a-f]+:[ ]+5c659073[ ]+csrw[ ]+spmpcfg6,a1 +[ ]+[0-9a-f]+:[ ]+5c702573[ ]+csrr[ ]+a0,spmpcfg7 +[ ]+[0-9a-f]+:[ ]+5c759073[ ]+csrw[ ]+spmpcfg7,a1 +[ ]+[0-9a-f]+:[ ]+5c802573[ ]+csrr[ ]+a0,spmpcfg8 +[ ]+[0-9a-f]+:[ ]+5c859073[ ]+csrw[ ]+spmpcfg8,a1 +[ ]+[0-9a-f]+:[ ]+5c902573[ ]+csrr[ ]+a0,spmpcfg9 +[ ]+[0-9a-f]+:[ ]+5c959073[ ]+csrw[ ]+spmpcfg9,a1 +[ ]+[0-9a-f]+:[ ]+5ca02573[ ]+csrr[ ]+a0,spmpcfg10 +[ ]+[0-9a-f]+:[ ]+5ca59073[ ]+csrw[ ]+spmpcfg10,a1 +[ ]+[0-9a-f]+:[ ]+5cb02573[ ]+csrr[ ]+a0,spmpcfg11 +[ ]+[0-9a-f]+:[ ]+5cb59073[ ]+csrw[ ]+spmpcfg11,a1 +[ ]+[0-9a-f]+:[ ]+5cc02573[ ]+csrr[ ]+a0,spmpcfg12 +[ ]+[0-9a-f]+:[ ]+5cc59073[ ]+csrw[ ]+spmpcfg12,a1 +[ ]+[0-9a-f]+:[ ]+5cd02573[ ]+csrr[ ]+a0,spmpcfg13 +[ ]+[0-9a-f]+:[ ]+5cd59073[ ]+csrw[ ]+spmpcfg13,a1 +[ ]+[0-9a-f]+:[ ]+5ce02573[ ]+csrr[ ]+a0,spmpcfg14 +[ ]+[0-9a-f]+:[ ]+5ce59073[ ]+csrw[ ]+spmpcfg14,a1 +[ ]+[0-9a-f]+:[ ]+5cf02573[ ]+csrr[ ]+a0,spmpcfg15 +[ ]+[0-9a-f]+:[ ]+5cf59073[ ]+csrw[ ]+spmpcfg15,a1 +[ ]+[0-9a-f]+:[ ]+5d002573[ ]+csrr[ ]+a0,spmpswitch0 +[ ]+[0-9a-f]+:[ ]+5d059073[ ]+csrw[ ]+spmpswitch0,a1 +[ ]+[0-9a-f]+:[ ]+5d102573[ ]+csrr[ ]+a0,spmpswitch1 +[ ]+[0-9a-f]+:[ ]+5d159073[ ]+csrw[ ]+spmpswitch1,a1 +[ ]+[0-9a-f]+:[ ]+9c002573[ ]+csrr[ ]+a0,spmpaddr0 +[ ]+[0-9a-f]+:[ ]+9c059073[ ]+csrw[ ]+spmpaddr0,a1 +[ ]+[0-9a-f]+:[ ]+9c102573[ ]+csrr[ ]+a0,spmpaddr1 +[ ]+[0-9a-f]+:[ ]+9c159073[ ]+csrw[ ]+spmpaddr1,a1 +[ ]+[0-9a-f]+:[ ]+9c202573[ ]+csrr[ ]+a0,spmpaddr2 +[ ]+[0-9a-f]+:[ ]+9c259073[ ]+csrw[ ]+spmpaddr2,a1 +[ ]+[0-9a-f]+:[ ]+9c302573[ ]+csrr[ ]+a0,spmpaddr3 +[ ]+[0-9a-f]+:[ ]+9c359073[ ]+csrw[ ]+spmpaddr3,a1 +[ ]+[0-9a-f]+:[ ]+9c402573[ ]+csrr[ ]+a0,spmpaddr4 +[ ]+[0-9a-f]+:[ ]+9c459073[ ]+csrw[ ]+spmpaddr4,a1 +[ ]+[0-9a-f]+:[ ]+9c502573[ ]+csrr[ ]+a0,spmpaddr5 +[ ]+[0-9a-f]+:[ ]+9c559073[ ]+csrw[ ]+spmpaddr5,a1 +[ ]+[0-9a-f]+:[ ]+9c602573[ ]+csrr[ ]+a0,spmpaddr6 +[ ]+[0-9a-f]+:[ ]+9c659073[ ]+csrw[ ]+spmpaddr6,a1 +[ ]+[0-9a-f]+:[ ]+9c702573[ ]+csrr[ ]+a0,spmpaddr7 +[ ]+[0-9a-f]+:[ ]+9c759073[ ]+csrw[ ]+spmpaddr7,a1 +[ ]+[0-9a-f]+:[ ]+9c802573[ ]+csrr[ ]+a0,spmpaddr8 +[ ]+[0-9a-f]+:[ ]+9c859073[ ]+csrw[ ]+spmpaddr8,a1 +[ ]+[0-9a-f]+:[ ]+9c902573[ ]+csrr[ ]+a0,spmpaddr9 +[ ]+[0-9a-f]+:[ ]+9c959073[ ]+csrw[ ]+spmpaddr9,a1 +[ ]+[0-9a-f]+:[ ]+9ca02573[ ]+csrr[ ]+a0,spmpaddr10 +[ ]+[0-9a-f]+:[ ]+9ca59073[ ]+csrw[ ]+spmpaddr10,a1 +[ ]+[0-9a-f]+:[ ]+9cb02573[ ]+csrr[ ]+a0,spmpaddr11 +[ ]+[0-9a-f]+:[ ]+9cb59073[ ]+csrw[ ]+spmpaddr11,a1 +[ ]+[0-9a-f]+:[ ]+9cc02573[ ]+csrr[ ]+a0,spmpaddr12 +[ ]+[0-9a-f]+:[ ]+9cc59073[ ]+csrw[ ]+spmpaddr12,a1 +[ ]+[0-9a-f]+:[ ]+9cd02573[ ]+csrr[ ]+a0,spmpaddr13 +[ ]+[0-9a-f]+:[ ]+9cd59073[ ]+csrw[ ]+spmpaddr13,a1 +[ ]+[0-9a-f]+:[ ]+9ce02573[ ]+csrr[ ]+a0,spmpaddr14 +[ ]+[0-9a-f]+:[ ]+9ce59073[ ]+csrw[ ]+spmpaddr14,a1 +[ ]+[0-9a-f]+:[ ]+9cf02573[ ]+csrr[ ]+a0,spmpaddr15 +[ ]+[0-9a-f]+:[ ]+9cf59073[ ]+csrw[ ]+spmpaddr15,a1 +[ ]+[0-9a-f]+:[ ]+9d002573[ ]+csrr[ ]+a0,spmpaddr16 +[ ]+[0-9a-f]+:[ ]+9d059073[ ]+csrw[ ]+spmpaddr16,a1 +[ ]+[0-9a-f]+:[ ]+9d102573[ ]+csrr[ ]+a0,spmpaddr17 +[ ]+[0-9a-f]+:[ ]+9d159073[ ]+csrw[ ]+spmpaddr17,a1 +[ ]+[0-9a-f]+:[ ]+9d202573[ ]+csrr[ ]+a0,spmpaddr18 +[ ]+[0-9a-f]+:[ ]+9d259073[ ]+csrw[ ]+spmpaddr18,a1 +[ ]+[0-9a-f]+:[ ]+9d302573[ ]+csrr[ ]+a0,spmpaddr19 +[ ]+[0-9a-f]+:[ ]+9d359073[ ]+csrw[ ]+spmpaddr19,a1 +[ ]+[0-9a-f]+:[ ]+9d402573[ ]+csrr[ ]+a0,spmpaddr20 +[ ]+[0-9a-f]+:[ ]+9d459073[ ]+csrw[ ]+spmpaddr20,a1 +[ ]+[0-9a-f]+:[ ]+9d502573[ ]+csrr[ ]+a0,spmpaddr21 +[ ]+[0-9a-f]+:[ ]+9d559073[ ]+csrw[ ]+spmpaddr21,a1 +[ ]+[0-9a-f]+:[ ]+9d602573[ ]+csrr[ ]+a0,spmpaddr22 +[ ]+[0-9a-f]+:[ ]+9d659073[ ]+csrw[ ]+spmpaddr22,a1 +[ ]+[0-9a-f]+:[ ]+9d702573[ ]+csrr[ ]+a0,spmpaddr23 +[ ]+[0-9a-f]+:[ ]+9d759073[ ]+csrw[ ]+spmpaddr23,a1 +[ ]+[0-9a-f]+:[ ]+9d802573[ ]+csrr[ ]+a0,spmpaddr24 +[ ]+[0-9a-f]+:[ ]+9d859073[ ]+csrw[ ]+spmpaddr24,a1 +[ ]+[0-9a-f]+:[ ]+9d902573[ ]+csrr[ ]+a0,spmpaddr25 +[ ]+[0-9a-f]+:[ ]+9d959073[ ]+csrw[ ]+spmpaddr25,a1 +[ ]+[0-9a-f]+:[ ]+9da02573[ ]+csrr[ ]+a0,spmpaddr26 +[ ]+[0-9a-f]+:[ ]+9da59073[ ]+csrw[ ]+spmpaddr26,a1 +[ ]+[0-9a-f]+:[ ]+9db02573[ ]+csrr[ ]+a0,spmpaddr27 +[ ]+[0-9a-f]+:[ ]+9db59073[ ]+csrw[ ]+spmpaddr27,a1 +[ ]+[0-9a-f]+:[ ]+9dc02573[ ]+csrr[ ]+a0,spmpaddr28 +[ ]+[0-9a-f]+:[ ]+9dc59073[ ]+csrw[ ]+spmpaddr28,a1 +[ ]+[0-9a-f]+:[ ]+9dd02573[ ]+csrr[ ]+a0,spmpaddr29 +[ ]+[0-9a-f]+:[ ]+9dd59073[ ]+csrw[ ]+spmpaddr29,a1 +[ ]+[0-9a-f]+:[ ]+9de02573[ ]+csrr[ ]+a0,spmpaddr30 +[ ]+[0-9a-f]+:[ ]+9de59073[ ]+csrw[ ]+spmpaddr30,a1 +[ ]+[0-9a-f]+:[ ]+9df02573[ ]+csrr[ ]+a0,spmpaddr31 +[ ]+[0-9a-f]+:[ ]+9df59073[ ]+csrw[ ]+spmpaddr31,a1 +[ ]+[0-9a-f]+:[ ]+9e002573[ ]+csrr[ ]+a0,spmpaddr32 +[ ]+[0-9a-f]+:[ ]+9e059073[ ]+csrw[ ]+spmpaddr32,a1 +[ ]+[0-9a-f]+:[ ]+9e102573[ ]+csrr[ ]+a0,spmpaddr33 +[ ]+[0-9a-f]+:[ ]+9e159073[ ]+csrw[ ]+spmpaddr33,a1 +[ ]+[0-9a-f]+:[ ]+9e202573[ ]+csrr[ ]+a0,spmpaddr34 +[ ]+[0-9a-f]+:[ ]+9e259073[ ]+csrw[ ]+spmpaddr34,a1 +[ ]+[0-9a-f]+:[ ]+9e302573[ ]+csrr[ ]+a0,spmpaddr35 +[ ]+[0-9a-f]+:[ ]+9e359073[ ]+csrw[ ]+spmpaddr35,a1 +[ ]+[0-9a-f]+:[ ]+9e402573[ ]+csrr[ ]+a0,spmpaddr36 +[ ]+[0-9a-f]+:[ ]+9e459073[ ]+csrw[ ]+spmpaddr36,a1 +[ ]+[0-9a-f]+:[ ]+9e502573[ ]+csrr[ ]+a0,spmpaddr37 +[ ]+[0-9a-f]+:[ ]+9e559073[ ]+csrw[ ]+spmpaddr37,a1 +[ ]+[0-9a-f]+:[ ]+9e602573[ ]+csrr[ ]+a0,spmpaddr38 +[ ]+[0-9a-f]+:[ ]+9e659073[ ]+csrw[ ]+spmpaddr38,a1 +[ ]+[0-9a-f]+:[ ]+9e702573[ ]+csrr[ ]+a0,spmpaddr39 +[ ]+[0-9a-f]+:[ ]+9e759073[ ]+csrw[ ]+spmpaddr39,a1 +[ ]+[0-9a-f]+:[ ]+9e802573[ ]+csrr[ ]+a0,spmpaddr40 +[ ]+[0-9a-f]+:[ ]+9e859073[ ]+csrw[ ]+spmpaddr40,a1 +[ ]+[0-9a-f]+:[ ]+9e902573[ ]+csrr[ ]+a0,spmpaddr41 +[ ]+[0-9a-f]+:[ ]+9e959073[ ]+csrw[ ]+spmpaddr41,a1 +[ ]+[0-9a-f]+:[ ]+9ea02573[ ]+csrr[ ]+a0,spmpaddr42 +[ ]+[0-9a-f]+:[ ]+9ea59073[ ]+csrw[ ]+spmpaddr42,a1 +[ ]+[0-9a-f]+:[ ]+9eb02573[ ]+csrr[ ]+a0,spmpaddr43 +[ ]+[0-9a-f]+:[ ]+9eb59073[ ]+csrw[ ]+spmpaddr43,a1 +[ ]+[0-9a-f]+:[ ]+9ec02573[ ]+csrr[ ]+a0,spmpaddr44 +[ ]+[0-9a-f]+:[ ]+9ec59073[ ]+csrw[ ]+spmpaddr44,a1 +[ ]+[0-9a-f]+:[ ]+9ed02573[ ]+csrr[ ]+a0,spmpaddr45 +[ ]+[0-9a-f]+:[ ]+9ed59073[ ]+csrw[ ]+spmpaddr45,a1 +[ ]+[0-9a-f]+:[ ]+9ee02573[ ]+csrr[ ]+a0,spmpaddr46 +[ ]+[0-9a-f]+:[ ]+9ee59073[ ]+csrw[ ]+spmpaddr46,a1 +[ ]+[0-9a-f]+:[ ]+9ef02573[ ]+csrr[ ]+a0,spmpaddr47 +[ ]+[0-9a-f]+:[ ]+9ef59073[ ]+csrw[ ]+spmpaddr47,a1 +[ ]+[0-9a-f]+:[ ]+9f002573[ ]+csrr[ ]+a0,spmpaddr48 +[ ]+[0-9a-f]+:[ ]+9f059073[ ]+csrw[ ]+spmpaddr48,a1 +[ ]+[0-9a-f]+:[ ]+9f102573[ ]+csrr[ ]+a0,spmpaddr49 +[ ]+[0-9a-f]+:[ ]+9f159073[ ]+csrw[ ]+spmpaddr49,a1 +[ ]+[0-9a-f]+:[ ]+9f202573[ ]+csrr[ ]+a0,spmpaddr50 +[ ]+[0-9a-f]+:[ ]+9f259073[ ]+csrw[ ]+spmpaddr50,a1 +[ ]+[0-9a-f]+:[ ]+9f302573[ ]+csrr[ ]+a0,spmpaddr51 +[ ]+[0-9a-f]+:[ ]+9f359073[ ]+csrw[ ]+spmpaddr51,a1 +[ ]+[0-9a-f]+:[ ]+9f402573[ ]+csrr[ ]+a0,spmpaddr52 +[ ]+[0-9a-f]+:[ ]+9f459073[ ]+csrw[ ]+spmpaddr52,a1 +[ ]+[0-9a-f]+:[ ]+9f502573[ ]+csrr[ ]+a0,spmpaddr53 +[ ]+[0-9a-f]+:[ ]+9f559073[ ]+csrw[ ]+spmpaddr53,a1 +[ ]+[0-9a-f]+:[ ]+9f602573[ ]+csrr[ ]+a0,spmpaddr54 +[ ]+[0-9a-f]+:[ ]+9f659073[ ]+csrw[ ]+spmpaddr54,a1 +[ ]+[0-9a-f]+:[ ]+9f702573[ ]+csrr[ ]+a0,spmpaddr55 +[ ]+[0-9a-f]+:[ ]+9f759073[ ]+csrw[ ]+spmpaddr55,a1 +[ ]+[0-9a-f]+:[ ]+9f802573[ ]+csrr[ ]+a0,spmpaddr56 +[ ]+[0-9a-f]+:[ ]+9f859073[ ]+csrw[ ]+spmpaddr56,a1 +[ ]+[0-9a-f]+:[ ]+9f902573[ ]+csrr[ ]+a0,spmpaddr57 +[ ]+[0-9a-f]+:[ ]+9f959073[ ]+csrw[ ]+spmpaddr57,a1 +[ ]+[0-9a-f]+:[ ]+9fa02573[ ]+csrr[ ]+a0,spmpaddr58 +[ ]+[0-9a-f]+:[ ]+9fa59073[ ]+csrw[ ]+spmpaddr58,a1 +[ ]+[0-9a-f]+:[ ]+9fb02573[ ]+csrr[ ]+a0,spmpaddr59 +[ ]+[0-9a-f]+:[ ]+9fb59073[ ]+csrw[ ]+spmpaddr59,a1 +[ ]+[0-9a-f]+:[ ]+9fc02573[ ]+csrr[ ]+a0,spmpaddr60 +[ ]+[0-9a-f]+:[ ]+9fc59073[ ]+csrw[ ]+spmpaddr60,a1 +[ ]+[0-9a-f]+:[ ]+9fd02573[ ]+csrr[ ]+a0,spmpaddr61 +[ ]+[0-9a-f]+:[ ]+9fd59073[ ]+csrw[ ]+spmpaddr61,a1 +[ ]+[0-9a-f]+:[ ]+9fe02573[ ]+csrr[ ]+a0,spmpaddr62 +[ ]+[0-9a-f]+:[ ]+9fe59073[ ]+csrw[ ]+spmpaddr62,a1 +[ ]+[0-9a-f]+:[ ]+9ff02573[ ]+csrr[ ]+a0,spmpaddr63 +[ ]+[0-9a-f]+:[ ]+9ff59073[ ]+csrw[ ]+spmpaddr63,a1 [ ]+[0-9a-f]+:[ ]+14d02573[ ]+csrr[ ]+a0,stimecmp [ ]+[0-9a-f]+:[ ]+14d59073[ ]+csrw[ ]+stimecmp,a1 [ ]+[0-9a-f]+:[ ]+15d02573[ ]+csrr[ ]+a0,stimecmph diff --git a/gas/testsuite/gas/riscv/csr-version-1p11.l b/gas/testsuite/gas/riscv/csr-version-1p11.l index cc365f1df41..16e38291b0f 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.l +++ b/gas/testsuite/gas/riscv/csr-version-1p11.l @@ -1475,6 +1475,370 @@ .*Info: macro .* .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p12.d b/gas/testsuite/gas/riscv/csr-version-1p12.d index 677820b9526..0f52f482fa4 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.d +++ b/gas/testsuite/gas/riscv/csr-version-1p12.d @@ -773,6 +773,170 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+73e59073[ ]+csrw[ ]+mhpmevent30h,a1 [ ]+[0-9a-f]+:[ ]+73f02573[ ]+csrr[ ]+a0,mhpmevent31h [ ]+[0-9a-f]+:[ ]+73f59073[ ]+csrw[ ]+mhpmevent31h,a1 +[ ]+[0-9a-f]+:[ ]+5c002573[ ]+csrr[ ]+a0,spmpcfg0 +[ ]+[0-9a-f]+:[ ]+5c059073[ ]+csrw[ ]+spmpcfg0,a1 +[ ]+[0-9a-f]+:[ ]+5c102573[ ]+csrr[ ]+a0,spmpcfg1 +[ ]+[0-9a-f]+:[ ]+5c159073[ ]+csrw[ ]+spmpcfg1,a1 +[ ]+[0-9a-f]+:[ ]+5c202573[ ]+csrr[ ]+a0,spmpcfg2 +[ ]+[0-9a-f]+:[ ]+5c259073[ ]+csrw[ ]+spmpcfg2,a1 +[ ]+[0-9a-f]+:[ ]+5c302573[ ]+csrr[ ]+a0,spmpcfg3 +[ ]+[0-9a-f]+:[ ]+5c359073[ ]+csrw[ ]+spmpcfg3,a1 +[ ]+[0-9a-f]+:[ ]+5c402573[ ]+csrr[ ]+a0,spmpcfg4 +[ ]+[0-9a-f]+:[ ]+5c459073[ ]+csrw[ ]+spmpcfg4,a1 +[ ]+[0-9a-f]+:[ ]+5c502573[ ]+csrr[ ]+a0,spmpcfg5 +[ ]+[0-9a-f]+:[ ]+5c559073[ ]+csrw[ ]+spmpcfg5,a1 +[ ]+[0-9a-f]+:[ ]+5c602573[ ]+csrr[ ]+a0,spmpcfg6 +[ ]+[0-9a-f]+:[ ]+5c659073[ ]+csrw[ ]+spmpcfg6,a1 +[ ]+[0-9a-f]+:[ ]+5c702573[ ]+csrr[ ]+a0,spmpcfg7 +[ ]+[0-9a-f]+:[ ]+5c759073[ ]+csrw[ ]+spmpcfg7,a1 +[ ]+[0-9a-f]+:[ ]+5c802573[ ]+csrr[ ]+a0,spmpcfg8 +[ ]+[0-9a-f]+:[ ]+5c859073[ ]+csrw[ ]+spmpcfg8,a1 +[ ]+[0-9a-f]+:[ ]+5c902573[ ]+csrr[ ]+a0,spmpcfg9 +[ ]+[0-9a-f]+:[ ]+5c959073[ ]+csrw[ ]+spmpcfg9,a1 +[ ]+[0-9a-f]+:[ ]+5ca02573[ ]+csrr[ ]+a0,spmpcfg10 +[ ]+[0-9a-f]+:[ ]+5ca59073[ ]+csrw[ ]+spmpcfg10,a1 +[ ]+[0-9a-f]+:[ ]+5cb02573[ ]+csrr[ ]+a0,spmpcfg11 +[ ]+[0-9a-f]+:[ ]+5cb59073[ ]+csrw[ ]+spmpcfg11,a1 +[ ]+[0-9a-f]+:[ ]+5cc02573[ ]+csrr[ ]+a0,spmpcfg12 +[ ]+[0-9a-f]+:[ ]+5cc59073[ ]+csrw[ ]+spmpcfg12,a1 +[ ]+[0-9a-f]+:[ ]+5cd02573[ ]+csrr[ ]+a0,spmpcfg13 +[ ]+[0-9a-f]+:[ ]+5cd59073[ ]+csrw[ ]+spmpcfg13,a1 +[ ]+[0-9a-f]+:[ ]+5ce02573[ ]+csrr[ ]+a0,spmpcfg14 +[ ]+[0-9a-f]+:[ ]+5ce59073[ ]+csrw[ ]+spmpcfg14,a1 +[ ]+[0-9a-f]+:[ ]+5cf02573[ ]+csrr[ ]+a0,spmpcfg15 +[ ]+[0-9a-f]+:[ ]+5cf59073[ ]+csrw[ ]+spmpcfg15,a1 +[ ]+[0-9a-f]+:[ ]+5d002573[ ]+csrr[ ]+a0,spmpswitch0 +[ ]+[0-9a-f]+:[ ]+5d059073[ ]+csrw[ ]+spmpswitch0,a1 +[ ]+[0-9a-f]+:[ ]+5d102573[ ]+csrr[ ]+a0,spmpswitch1 +[ ]+[0-9a-f]+:[ ]+5d159073[ ]+csrw[ ]+spmpswitch1,a1 +[ ]+[0-9a-f]+:[ ]+9c002573[ ]+csrr[ ]+a0,spmpaddr0 +[ ]+[0-9a-f]+:[ ]+9c059073[ ]+csrw[ ]+spmpaddr0,a1 +[ ]+[0-9a-f]+:[ ]+9c102573[ ]+csrr[ ]+a0,spmpaddr1 +[ ]+[0-9a-f]+:[ ]+9c159073[ ]+csrw[ ]+spmpaddr1,a1 +[ ]+[0-9a-f]+:[ ]+9c202573[ ]+csrr[ ]+a0,spmpaddr2 +[ ]+[0-9a-f]+:[ ]+9c259073[ ]+csrw[ ]+spmpaddr2,a1 +[ ]+[0-9a-f]+:[ ]+9c302573[ ]+csrr[ ]+a0,spmpaddr3 +[ ]+[0-9a-f]+:[ ]+9c359073[ ]+csrw[ ]+spmpaddr3,a1 +[ ]+[0-9a-f]+:[ ]+9c402573[ ]+csrr[ ]+a0,spmpaddr4 +[ ]+[0-9a-f]+:[ ]+9c459073[ ]+csrw[ ]+spmpaddr4,a1 +[ ]+[0-9a-f]+:[ ]+9c502573[ ]+csrr[ ]+a0,spmpaddr5 +[ ]+[0-9a-f]+:[ ]+9c559073[ ]+csrw[ ]+spmpaddr5,a1 +[ ]+[0-9a-f]+:[ ]+9c602573[ ]+csrr[ ]+a0,spmpaddr6 +[ ]+[0-9a-f]+:[ ]+9c659073[ ]+csrw[ ]+spmpaddr6,a1 +[ ]+[0-9a-f]+:[ ]+9c702573[ ]+csrr[ ]+a0,spmpaddr7 +[ ]+[0-9a-f]+:[ ]+9c759073[ ]+csrw[ ]+spmpaddr7,a1 +[ ]+[0-9a-f]+:[ ]+9c802573[ ]+csrr[ ]+a0,spmpaddr8 +[ ]+[0-9a-f]+:[ ]+9c859073[ ]+csrw[ ]+spmpaddr8,a1 +[ ]+[0-9a-f]+:[ ]+9c902573[ ]+csrr[ ]+a0,spmpaddr9 +[ ]+[0-9a-f]+:[ ]+9c959073[ ]+csrw[ ]+spmpaddr9,a1 +[ ]+[0-9a-f]+:[ ]+9ca02573[ ]+csrr[ ]+a0,spmpaddr10 +[ ]+[0-9a-f]+:[ ]+9ca59073[ ]+csrw[ ]+spmpaddr10,a1 +[ ]+[0-9a-f]+:[ ]+9cb02573[ ]+csrr[ ]+a0,spmpaddr11 +[ ]+[0-9a-f]+:[ ]+9cb59073[ ]+csrw[ ]+spmpaddr11,a1 +[ ]+[0-9a-f]+:[ ]+9cc02573[ ]+csrr[ ]+a0,spmpaddr12 +[ ]+[0-9a-f]+:[ ]+9cc59073[ ]+csrw[ ]+spmpaddr12,a1 +[ ]+[0-9a-f]+:[ ]+9cd02573[ ]+csrr[ ]+a0,spmpaddr13 +[ ]+[0-9a-f]+:[ ]+9cd59073[ ]+csrw[ ]+spmpaddr13,a1 +[ ]+[0-9a-f]+:[ ]+9ce02573[ ]+csrr[ ]+a0,spmpaddr14 +[ ]+[0-9a-f]+:[ ]+9ce59073[ ]+csrw[ ]+spmpaddr14,a1 +[ ]+[0-9a-f]+:[ ]+9cf02573[ ]+csrr[ ]+a0,spmpaddr15 +[ ]+[0-9a-f]+:[ ]+9cf59073[ ]+csrw[ ]+spmpaddr15,a1 +[ ]+[0-9a-f]+:[ ]+9d002573[ ]+csrr[ ]+a0,spmpaddr16 +[ ]+[0-9a-f]+:[ ]+9d059073[ ]+csrw[ ]+spmpaddr16,a1 +[ ]+[0-9a-f]+:[ ]+9d102573[ ]+csrr[ ]+a0,spmpaddr17 +[ ]+[0-9a-f]+:[ ]+9d159073[ ]+csrw[ ]+spmpaddr17,a1 +[ ]+[0-9a-f]+:[ ]+9d202573[ ]+csrr[ ]+a0,spmpaddr18 +[ ]+[0-9a-f]+:[ ]+9d259073[ ]+csrw[ ]+spmpaddr18,a1 +[ ]+[0-9a-f]+:[ ]+9d302573[ ]+csrr[ ]+a0,spmpaddr19 +[ ]+[0-9a-f]+:[ ]+9d359073[ ]+csrw[ ]+spmpaddr19,a1 +[ ]+[0-9a-f]+:[ ]+9d402573[ ]+csrr[ ]+a0,spmpaddr20 +[ ]+[0-9a-f]+:[ ]+9d459073[ ]+csrw[ ]+spmpaddr20,a1 +[ ]+[0-9a-f]+:[ ]+9d502573[ ]+csrr[ ]+a0,spmpaddr21 +[ ]+[0-9a-f]+:[ ]+9d559073[ ]+csrw[ ]+spmpaddr21,a1 +[ ]+[0-9a-f]+:[ ]+9d602573[ ]+csrr[ ]+a0,spmpaddr22 +[ ]+[0-9a-f]+:[ ]+9d659073[ ]+csrw[ ]+spmpaddr22,a1 +[ ]+[0-9a-f]+:[ ]+9d702573[ ]+csrr[ ]+a0,spmpaddr23 +[ ]+[0-9a-f]+:[ ]+9d759073[ ]+csrw[ ]+spmpaddr23,a1 +[ ]+[0-9a-f]+:[ ]+9d802573[ ]+csrr[ ]+a0,spmpaddr24 +[ ]+[0-9a-f]+:[ ]+9d859073[ ]+csrw[ ]+spmpaddr24,a1 +[ ]+[0-9a-f]+:[ ]+9d902573[ ]+csrr[ ]+a0,spmpaddr25 +[ ]+[0-9a-f]+:[ ]+9d959073[ ]+csrw[ ]+spmpaddr25,a1 +[ ]+[0-9a-f]+:[ ]+9da02573[ ]+csrr[ ]+a0,spmpaddr26 +[ ]+[0-9a-f]+:[ ]+9da59073[ ]+csrw[ ]+spmpaddr26,a1 +[ ]+[0-9a-f]+:[ ]+9db02573[ ]+csrr[ ]+a0,spmpaddr27 +[ ]+[0-9a-f]+:[ ]+9db59073[ ]+csrw[ ]+spmpaddr27,a1 +[ ]+[0-9a-f]+:[ ]+9dc02573[ ]+csrr[ ]+a0,spmpaddr28 +[ ]+[0-9a-f]+:[ ]+9dc59073[ ]+csrw[ ]+spmpaddr28,a1 +[ ]+[0-9a-f]+:[ ]+9dd02573[ ]+csrr[ ]+a0,spmpaddr29 +[ ]+[0-9a-f]+:[ ]+9dd59073[ ]+csrw[ ]+spmpaddr29,a1 +[ ]+[0-9a-f]+:[ ]+9de02573[ ]+csrr[ ]+a0,spmpaddr30 +[ ]+[0-9a-f]+:[ ]+9de59073[ ]+csrw[ ]+spmpaddr30,a1 +[ ]+[0-9a-f]+:[ ]+9df02573[ ]+csrr[ ]+a0,spmpaddr31 +[ ]+[0-9a-f]+:[ ]+9df59073[ ]+csrw[ ]+spmpaddr31,a1 +[ ]+[0-9a-f]+:[ ]+9e002573[ ]+csrr[ ]+a0,spmpaddr32 +[ ]+[0-9a-f]+:[ ]+9e059073[ ]+csrw[ ]+spmpaddr32,a1 +[ ]+[0-9a-f]+:[ ]+9e102573[ ]+csrr[ ]+a0,spmpaddr33 +[ ]+[0-9a-f]+:[ ]+9e159073[ ]+csrw[ ]+spmpaddr33,a1 +[ ]+[0-9a-f]+:[ ]+9e202573[ ]+csrr[ ]+a0,spmpaddr34 +[ ]+[0-9a-f]+:[ ]+9e259073[ ]+csrw[ ]+spmpaddr34,a1 +[ ]+[0-9a-f]+:[ ]+9e302573[ ]+csrr[ ]+a0,spmpaddr35 +[ ]+[0-9a-f]+:[ ]+9e359073[ ]+csrw[ ]+spmpaddr35,a1 +[ ]+[0-9a-f]+:[ ]+9e402573[ ]+csrr[ ]+a0,spmpaddr36 +[ ]+[0-9a-f]+:[ ]+9e459073[ ]+csrw[ ]+spmpaddr36,a1 +[ ]+[0-9a-f]+:[ ]+9e502573[ ]+csrr[ ]+a0,spmpaddr37 +[ ]+[0-9a-f]+:[ ]+9e559073[ ]+csrw[ ]+spmpaddr37,a1 +[ ]+[0-9a-f]+:[ ]+9e602573[ ]+csrr[ ]+a0,spmpaddr38 +[ ]+[0-9a-f]+:[ ]+9e659073[ ]+csrw[ ]+spmpaddr38,a1 +[ ]+[0-9a-f]+:[ ]+9e702573[ ]+csrr[ ]+a0,spmpaddr39 +[ ]+[0-9a-f]+:[ ]+9e759073[ ]+csrw[ ]+spmpaddr39,a1 +[ ]+[0-9a-f]+:[ ]+9e802573[ ]+csrr[ ]+a0,spmpaddr40 +[ ]+[0-9a-f]+:[ ]+9e859073[ ]+csrw[ ]+spmpaddr40,a1 +[ ]+[0-9a-f]+:[ ]+9e902573[ ]+csrr[ ]+a0,spmpaddr41 +[ ]+[0-9a-f]+:[ ]+9e959073[ ]+csrw[ ]+spmpaddr41,a1 +[ ]+[0-9a-f]+:[ ]+9ea02573[ ]+csrr[ ]+a0,spmpaddr42 +[ ]+[0-9a-f]+:[ ]+9ea59073[ ]+csrw[ ]+spmpaddr42,a1 +[ ]+[0-9a-f]+:[ ]+9eb02573[ ]+csrr[ ]+a0,spmpaddr43 +[ ]+[0-9a-f]+:[ ]+9eb59073[ ]+csrw[ ]+spmpaddr43,a1 +[ ]+[0-9a-f]+:[ ]+9ec02573[ ]+csrr[ ]+a0,spmpaddr44 +[ ]+[0-9a-f]+:[ ]+9ec59073[ ]+csrw[ ]+spmpaddr44,a1 +[ ]+[0-9a-f]+:[ ]+9ed02573[ ]+csrr[ ]+a0,spmpaddr45 +[ ]+[0-9a-f]+:[ ]+9ed59073[ ]+csrw[ ]+spmpaddr45,a1 +[ ]+[0-9a-f]+:[ ]+9ee02573[ ]+csrr[ ]+a0,spmpaddr46 +[ ]+[0-9a-f]+:[ ]+9ee59073[ ]+csrw[ ]+spmpaddr46,a1 +[ ]+[0-9a-f]+:[ ]+9ef02573[ ]+csrr[ ]+a0,spmpaddr47 +[ ]+[0-9a-f]+:[ ]+9ef59073[ ]+csrw[ ]+spmpaddr47,a1 +[ ]+[0-9a-f]+:[ ]+9f002573[ ]+csrr[ ]+a0,spmpaddr48 +[ ]+[0-9a-f]+:[ ]+9f059073[ ]+csrw[ ]+spmpaddr48,a1 +[ ]+[0-9a-f]+:[ ]+9f102573[ ]+csrr[ ]+a0,spmpaddr49 +[ ]+[0-9a-f]+:[ ]+9f159073[ ]+csrw[ ]+spmpaddr49,a1 +[ ]+[0-9a-f]+:[ ]+9f202573[ ]+csrr[ ]+a0,spmpaddr50 +[ ]+[0-9a-f]+:[ ]+9f259073[ ]+csrw[ ]+spmpaddr50,a1 +[ ]+[0-9a-f]+:[ ]+9f302573[ ]+csrr[ ]+a0,spmpaddr51 +[ ]+[0-9a-f]+:[ ]+9f359073[ ]+csrw[ ]+spmpaddr51,a1 +[ ]+[0-9a-f]+:[ ]+9f402573[ ]+csrr[ ]+a0,spmpaddr52 +[ ]+[0-9a-f]+:[ ]+9f459073[ ]+csrw[ ]+spmpaddr52,a1 +[ ]+[0-9a-f]+:[ ]+9f502573[ ]+csrr[ ]+a0,spmpaddr53 +[ ]+[0-9a-f]+:[ ]+9f559073[ ]+csrw[ ]+spmpaddr53,a1 +[ ]+[0-9a-f]+:[ ]+9f602573[ ]+csrr[ ]+a0,spmpaddr54 +[ ]+[0-9a-f]+:[ ]+9f659073[ ]+csrw[ ]+spmpaddr54,a1 +[ ]+[0-9a-f]+:[ ]+9f702573[ ]+csrr[ ]+a0,spmpaddr55 +[ ]+[0-9a-f]+:[ ]+9f759073[ ]+csrw[ ]+spmpaddr55,a1 +[ ]+[0-9a-f]+:[ ]+9f802573[ ]+csrr[ ]+a0,spmpaddr56 +[ ]+[0-9a-f]+:[ ]+9f859073[ ]+csrw[ ]+spmpaddr56,a1 +[ ]+[0-9a-f]+:[ ]+9f902573[ ]+csrr[ ]+a0,spmpaddr57 +[ ]+[0-9a-f]+:[ ]+9f959073[ ]+csrw[ ]+spmpaddr57,a1 +[ ]+[0-9a-f]+:[ ]+9fa02573[ ]+csrr[ ]+a0,spmpaddr58 +[ ]+[0-9a-f]+:[ ]+9fa59073[ ]+csrw[ ]+spmpaddr58,a1 +[ ]+[0-9a-f]+:[ ]+9fb02573[ ]+csrr[ ]+a0,spmpaddr59 +[ ]+[0-9a-f]+:[ ]+9fb59073[ ]+csrw[ ]+spmpaddr59,a1 +[ ]+[0-9a-f]+:[ ]+9fc02573[ ]+csrr[ ]+a0,spmpaddr60 +[ ]+[0-9a-f]+:[ ]+9fc59073[ ]+csrw[ ]+spmpaddr60,a1 +[ ]+[0-9a-f]+:[ ]+9fd02573[ ]+csrr[ ]+a0,spmpaddr61 +[ ]+[0-9a-f]+:[ ]+9fd59073[ ]+csrw[ ]+spmpaddr61,a1 +[ ]+[0-9a-f]+:[ ]+9fe02573[ ]+csrr[ ]+a0,spmpaddr62 +[ ]+[0-9a-f]+:[ ]+9fe59073[ ]+csrw[ ]+spmpaddr62,a1 +[ ]+[0-9a-f]+:[ ]+9ff02573[ ]+csrr[ ]+a0,spmpaddr63 +[ ]+[0-9a-f]+:[ ]+9ff59073[ ]+csrw[ ]+spmpaddr63,a1 [ ]+[0-9a-f]+:[ ]+14d02573[ ]+csrr[ ]+a0,stimecmp [ ]+[0-9a-f]+:[ ]+14d59073[ ]+csrw[ ]+stimecmp,a1 [ ]+[0-9a-f]+:[ ]+15d02573[ ]+csrr[ ]+a0,stimecmph diff --git a/gas/testsuite/gas/riscv/csr-version-1p12.l b/gas/testsuite/gas/riscv/csr-version-1p12.l index 7a7f5f717c5..6569153d8c2 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.l +++ b/gas/testsuite/gas/riscv/csr-version-1p12.l @@ -1199,6 +1199,370 @@ .*Info: macro .* .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p9p1.d b/gas/testsuite/gas/riscv/csr-version-1p9p1.d index f4d2b04ca6a..1fc22c37ccc 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p9p1.d +++ b/gas/testsuite/gas/riscv/csr-version-1p9p1.d @@ -773,6 +773,170 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+73e59073[ ]+csrw[ ]+mhpmevent30h,a1 [ ]+[0-9a-f]+:[ ]+73f02573[ ]+csrr[ ]+a0,mhpmevent31h [ ]+[0-9a-f]+:[ ]+73f59073[ ]+csrw[ ]+mhpmevent31h,a1 +[ ]+[0-9a-f]+:[ ]+5c002573[ ]+csrr[ ]+a0,spmpcfg0 +[ ]+[0-9a-f]+:[ ]+5c059073[ ]+csrw[ ]+spmpcfg0,a1 +[ ]+[0-9a-f]+:[ ]+5c102573[ ]+csrr[ ]+a0,spmpcfg1 +[ ]+[0-9a-f]+:[ ]+5c159073[ ]+csrw[ ]+spmpcfg1,a1 +[ ]+[0-9a-f]+:[ ]+5c202573[ ]+csrr[ ]+a0,spmpcfg2 +[ ]+[0-9a-f]+:[ ]+5c259073[ ]+csrw[ ]+spmpcfg2,a1 +[ ]+[0-9a-f]+:[ ]+5c302573[ ]+csrr[ ]+a0,spmpcfg3 +[ ]+[0-9a-f]+:[ ]+5c359073[ ]+csrw[ ]+spmpcfg3,a1 +[ ]+[0-9a-f]+:[ ]+5c402573[ ]+csrr[ ]+a0,spmpcfg4 +[ ]+[0-9a-f]+:[ ]+5c459073[ ]+csrw[ ]+spmpcfg4,a1 +[ ]+[0-9a-f]+:[ ]+5c502573[ ]+csrr[ ]+a0,spmpcfg5 +[ ]+[0-9a-f]+:[ ]+5c559073[ ]+csrw[ ]+spmpcfg5,a1 +[ ]+[0-9a-f]+:[ ]+5c602573[ ]+csrr[ ]+a0,spmpcfg6 +[ ]+[0-9a-f]+:[ ]+5c659073[ ]+csrw[ ]+spmpcfg6,a1 +[ ]+[0-9a-f]+:[ ]+5c702573[ ]+csrr[ ]+a0,spmpcfg7 +[ ]+[0-9a-f]+:[ ]+5c759073[ ]+csrw[ ]+spmpcfg7,a1 +[ ]+[0-9a-f]+:[ ]+5c802573[ ]+csrr[ ]+a0,spmpcfg8 +[ ]+[0-9a-f]+:[ ]+5c859073[ ]+csrw[ ]+spmpcfg8,a1 +[ ]+[0-9a-f]+:[ ]+5c902573[ ]+csrr[ ]+a0,spmpcfg9 +[ ]+[0-9a-f]+:[ ]+5c959073[ ]+csrw[ ]+spmpcfg9,a1 +[ ]+[0-9a-f]+:[ ]+5ca02573[ ]+csrr[ ]+a0,spmpcfg10 +[ ]+[0-9a-f]+:[ ]+5ca59073[ ]+csrw[ ]+spmpcfg10,a1 +[ ]+[0-9a-f]+:[ ]+5cb02573[ ]+csrr[ ]+a0,spmpcfg11 +[ ]+[0-9a-f]+:[ ]+5cb59073[ ]+csrw[ ]+spmpcfg11,a1 +[ ]+[0-9a-f]+:[ ]+5cc02573[ ]+csrr[ ]+a0,spmpcfg12 +[ ]+[0-9a-f]+:[ ]+5cc59073[ ]+csrw[ ]+spmpcfg12,a1 +[ ]+[0-9a-f]+:[ ]+5cd02573[ ]+csrr[ ]+a0,spmpcfg13 +[ ]+[0-9a-f]+:[ ]+5cd59073[ ]+csrw[ ]+spmpcfg13,a1 +[ ]+[0-9a-f]+:[ ]+5ce02573[ ]+csrr[ ]+a0,spmpcfg14 +[ ]+[0-9a-f]+:[ ]+5ce59073[ ]+csrw[ ]+spmpcfg14,a1 +[ ]+[0-9a-f]+:[ ]+5cf02573[ ]+csrr[ ]+a0,spmpcfg15 +[ ]+[0-9a-f]+:[ ]+5cf59073[ ]+csrw[ ]+spmpcfg15,a1 +[ ]+[0-9a-f]+:[ ]+5d002573[ ]+csrr[ ]+a0,spmpswitch0 +[ ]+[0-9a-f]+:[ ]+5d059073[ ]+csrw[ ]+spmpswitch0,a1 +[ ]+[0-9a-f]+:[ ]+5d102573[ ]+csrr[ ]+a0,spmpswitch1 +[ ]+[0-9a-f]+:[ ]+5d159073[ ]+csrw[ ]+spmpswitch1,a1 +[ ]+[0-9a-f]+:[ ]+9c002573[ ]+csrr[ ]+a0,spmpaddr0 +[ ]+[0-9a-f]+:[ ]+9c059073[ ]+csrw[ ]+spmpaddr0,a1 +[ ]+[0-9a-f]+:[ ]+9c102573[ ]+csrr[ ]+a0,spmpaddr1 +[ ]+[0-9a-f]+:[ ]+9c159073[ ]+csrw[ ]+spmpaddr1,a1 +[ ]+[0-9a-f]+:[ ]+9c202573[ ]+csrr[ ]+a0,spmpaddr2 +[ ]+[0-9a-f]+:[ ]+9c259073[ ]+csrw[ ]+spmpaddr2,a1 +[ ]+[0-9a-f]+:[ ]+9c302573[ ]+csrr[ ]+a0,spmpaddr3 +[ ]+[0-9a-f]+:[ ]+9c359073[ ]+csrw[ ]+spmpaddr3,a1 +[ ]+[0-9a-f]+:[ ]+9c402573[ ]+csrr[ ]+a0,spmpaddr4 +[ ]+[0-9a-f]+:[ ]+9c459073[ ]+csrw[ ]+spmpaddr4,a1 +[ ]+[0-9a-f]+:[ ]+9c502573[ ]+csrr[ ]+a0,spmpaddr5 +[ ]+[0-9a-f]+:[ ]+9c559073[ ]+csrw[ ]+spmpaddr5,a1 +[ ]+[0-9a-f]+:[ ]+9c602573[ ]+csrr[ ]+a0,spmpaddr6 +[ ]+[0-9a-f]+:[ ]+9c659073[ ]+csrw[ ]+spmpaddr6,a1 +[ ]+[0-9a-f]+:[ ]+9c702573[ ]+csrr[ ]+a0,spmpaddr7 +[ ]+[0-9a-f]+:[ ]+9c759073[ ]+csrw[ ]+spmpaddr7,a1 +[ ]+[0-9a-f]+:[ ]+9c802573[ ]+csrr[ ]+a0,spmpaddr8 +[ ]+[0-9a-f]+:[ ]+9c859073[ ]+csrw[ ]+spmpaddr8,a1 +[ ]+[0-9a-f]+:[ ]+9c902573[ ]+csrr[ ]+a0,spmpaddr9 +[ ]+[0-9a-f]+:[ ]+9c959073[ ]+csrw[ ]+spmpaddr9,a1 +[ ]+[0-9a-f]+:[ ]+9ca02573[ ]+csrr[ ]+a0,spmpaddr10 +[ ]+[0-9a-f]+:[ ]+9ca59073[ ]+csrw[ ]+spmpaddr10,a1 +[ ]+[0-9a-f]+:[ ]+9cb02573[ ]+csrr[ ]+a0,spmpaddr11 +[ ]+[0-9a-f]+:[ ]+9cb59073[ ]+csrw[ ]+spmpaddr11,a1 +[ ]+[0-9a-f]+:[ ]+9cc02573[ ]+csrr[ ]+a0,spmpaddr12 +[ ]+[0-9a-f]+:[ ]+9cc59073[ ]+csrw[ ]+spmpaddr12,a1 +[ ]+[0-9a-f]+:[ ]+9cd02573[ ]+csrr[ ]+a0,spmpaddr13 +[ ]+[0-9a-f]+:[ ]+9cd59073[ ]+csrw[ ]+spmpaddr13,a1 +[ ]+[0-9a-f]+:[ ]+9ce02573[ ]+csrr[ ]+a0,spmpaddr14 +[ ]+[0-9a-f]+:[ ]+9ce59073[ ]+csrw[ ]+spmpaddr14,a1 +[ ]+[0-9a-f]+:[ ]+9cf02573[ ]+csrr[ ]+a0,spmpaddr15 +[ ]+[0-9a-f]+:[ ]+9cf59073[ ]+csrw[ ]+spmpaddr15,a1 +[ ]+[0-9a-f]+:[ ]+9d002573[ ]+csrr[ ]+a0,spmpaddr16 +[ ]+[0-9a-f]+:[ ]+9d059073[ ]+csrw[ ]+spmpaddr16,a1 +[ ]+[0-9a-f]+:[ ]+9d102573[ ]+csrr[ ]+a0,spmpaddr17 +[ ]+[0-9a-f]+:[ ]+9d159073[ ]+csrw[ ]+spmpaddr17,a1 +[ ]+[0-9a-f]+:[ ]+9d202573[ ]+csrr[ ]+a0,spmpaddr18 +[ ]+[0-9a-f]+:[ ]+9d259073[ ]+csrw[ ]+spmpaddr18,a1 +[ ]+[0-9a-f]+:[ ]+9d302573[ ]+csrr[ ]+a0,spmpaddr19 +[ ]+[0-9a-f]+:[ ]+9d359073[ ]+csrw[ ]+spmpaddr19,a1 +[ ]+[0-9a-f]+:[ ]+9d402573[ ]+csrr[ ]+a0,spmpaddr20 +[ ]+[0-9a-f]+:[ ]+9d459073[ ]+csrw[ ]+spmpaddr20,a1 +[ ]+[0-9a-f]+:[ ]+9d502573[ ]+csrr[ ]+a0,spmpaddr21 +[ ]+[0-9a-f]+:[ ]+9d559073[ ]+csrw[ ]+spmpaddr21,a1 +[ ]+[0-9a-f]+:[ ]+9d602573[ ]+csrr[ ]+a0,spmpaddr22 +[ ]+[0-9a-f]+:[ ]+9d659073[ ]+csrw[ ]+spmpaddr22,a1 +[ ]+[0-9a-f]+:[ ]+9d702573[ ]+csrr[ ]+a0,spmpaddr23 +[ ]+[0-9a-f]+:[ ]+9d759073[ ]+csrw[ ]+spmpaddr23,a1 +[ ]+[0-9a-f]+:[ ]+9d802573[ ]+csrr[ ]+a0,spmpaddr24 +[ ]+[0-9a-f]+:[ ]+9d859073[ ]+csrw[ ]+spmpaddr24,a1 +[ ]+[0-9a-f]+:[ ]+9d902573[ ]+csrr[ ]+a0,spmpaddr25 +[ ]+[0-9a-f]+:[ ]+9d959073[ ]+csrw[ ]+spmpaddr25,a1 +[ ]+[0-9a-f]+:[ ]+9da02573[ ]+csrr[ ]+a0,spmpaddr26 +[ ]+[0-9a-f]+:[ ]+9da59073[ ]+csrw[ ]+spmpaddr26,a1 +[ ]+[0-9a-f]+:[ ]+9db02573[ ]+csrr[ ]+a0,spmpaddr27 +[ ]+[0-9a-f]+:[ ]+9db59073[ ]+csrw[ ]+spmpaddr27,a1 +[ ]+[0-9a-f]+:[ ]+9dc02573[ ]+csrr[ ]+a0,spmpaddr28 +[ ]+[0-9a-f]+:[ ]+9dc59073[ ]+csrw[ ]+spmpaddr28,a1 +[ ]+[0-9a-f]+:[ ]+9dd02573[ ]+csrr[ ]+a0,spmpaddr29 +[ ]+[0-9a-f]+:[ ]+9dd59073[ ]+csrw[ ]+spmpaddr29,a1 +[ ]+[0-9a-f]+:[ ]+9de02573[ ]+csrr[ ]+a0,spmpaddr30 +[ ]+[0-9a-f]+:[ ]+9de59073[ ]+csrw[ ]+spmpaddr30,a1 +[ ]+[0-9a-f]+:[ ]+9df02573[ ]+csrr[ ]+a0,spmpaddr31 +[ ]+[0-9a-f]+:[ ]+9df59073[ ]+csrw[ ]+spmpaddr31,a1 +[ ]+[0-9a-f]+:[ ]+9e002573[ ]+csrr[ ]+a0,spmpaddr32 +[ ]+[0-9a-f]+:[ ]+9e059073[ ]+csrw[ ]+spmpaddr32,a1 +[ ]+[0-9a-f]+:[ ]+9e102573[ ]+csrr[ ]+a0,spmpaddr33 +[ ]+[0-9a-f]+:[ ]+9e159073[ ]+csrw[ ]+spmpaddr33,a1 +[ ]+[0-9a-f]+:[ ]+9e202573[ ]+csrr[ ]+a0,spmpaddr34 +[ ]+[0-9a-f]+:[ ]+9e259073[ ]+csrw[ ]+spmpaddr34,a1 +[ ]+[0-9a-f]+:[ ]+9e302573[ ]+csrr[ ]+a0,spmpaddr35 +[ ]+[0-9a-f]+:[ ]+9e359073[ ]+csrw[ ]+spmpaddr35,a1 +[ ]+[0-9a-f]+:[ ]+9e402573[ ]+csrr[ ]+a0,spmpaddr36 +[ ]+[0-9a-f]+:[ ]+9e459073[ ]+csrw[ ]+spmpaddr36,a1 +[ ]+[0-9a-f]+:[ ]+9e502573[ ]+csrr[ ]+a0,spmpaddr37 +[ ]+[0-9a-f]+:[ ]+9e559073[ ]+csrw[ ]+spmpaddr37,a1 +[ ]+[0-9a-f]+:[ ]+9e602573[ ]+csrr[ ]+a0,spmpaddr38 +[ ]+[0-9a-f]+:[ ]+9e659073[ ]+csrw[ ]+spmpaddr38,a1 +[ ]+[0-9a-f]+:[ ]+9e702573[ ]+csrr[ ]+a0,spmpaddr39 +[ ]+[0-9a-f]+:[ ]+9e759073[ ]+csrw[ ]+spmpaddr39,a1 +[ ]+[0-9a-f]+:[ ]+9e802573[ ]+csrr[ ]+a0,spmpaddr40 +[ ]+[0-9a-f]+:[ ]+9e859073[ ]+csrw[ ]+spmpaddr40,a1 +[ ]+[0-9a-f]+:[ ]+9e902573[ ]+csrr[ ]+a0,spmpaddr41 +[ ]+[0-9a-f]+:[ ]+9e959073[ ]+csrw[ ]+spmpaddr41,a1 +[ ]+[0-9a-f]+:[ ]+9ea02573[ ]+csrr[ ]+a0,spmpaddr42 +[ ]+[0-9a-f]+:[ ]+9ea59073[ ]+csrw[ ]+spmpaddr42,a1 +[ ]+[0-9a-f]+:[ ]+9eb02573[ ]+csrr[ ]+a0,spmpaddr43 +[ ]+[0-9a-f]+:[ ]+9eb59073[ ]+csrw[ ]+spmpaddr43,a1 +[ ]+[0-9a-f]+:[ ]+9ec02573[ ]+csrr[ ]+a0,spmpaddr44 +[ ]+[0-9a-f]+:[ ]+9ec59073[ ]+csrw[ ]+spmpaddr44,a1 +[ ]+[0-9a-f]+:[ ]+9ed02573[ ]+csrr[ ]+a0,spmpaddr45 +[ ]+[0-9a-f]+:[ ]+9ed59073[ ]+csrw[ ]+spmpaddr45,a1 +[ ]+[0-9a-f]+:[ ]+9ee02573[ ]+csrr[ ]+a0,spmpaddr46 +[ ]+[0-9a-f]+:[ ]+9ee59073[ ]+csrw[ ]+spmpaddr46,a1 +[ ]+[0-9a-f]+:[ ]+9ef02573[ ]+csrr[ ]+a0,spmpaddr47 +[ ]+[0-9a-f]+:[ ]+9ef59073[ ]+csrw[ ]+spmpaddr47,a1 +[ ]+[0-9a-f]+:[ ]+9f002573[ ]+csrr[ ]+a0,spmpaddr48 +[ ]+[0-9a-f]+:[ ]+9f059073[ ]+csrw[ ]+spmpaddr48,a1 +[ ]+[0-9a-f]+:[ ]+9f102573[ ]+csrr[ ]+a0,spmpaddr49 +[ ]+[0-9a-f]+:[ ]+9f159073[ ]+csrw[ ]+spmpaddr49,a1 +[ ]+[0-9a-f]+:[ ]+9f202573[ ]+csrr[ ]+a0,spmpaddr50 +[ ]+[0-9a-f]+:[ ]+9f259073[ ]+csrw[ ]+spmpaddr50,a1 +[ ]+[0-9a-f]+:[ ]+9f302573[ ]+csrr[ ]+a0,spmpaddr51 +[ ]+[0-9a-f]+:[ ]+9f359073[ ]+csrw[ ]+spmpaddr51,a1 +[ ]+[0-9a-f]+:[ ]+9f402573[ ]+csrr[ ]+a0,spmpaddr52 +[ ]+[0-9a-f]+:[ ]+9f459073[ ]+csrw[ ]+spmpaddr52,a1 +[ ]+[0-9a-f]+:[ ]+9f502573[ ]+csrr[ ]+a0,spmpaddr53 +[ ]+[0-9a-f]+:[ ]+9f559073[ ]+csrw[ ]+spmpaddr53,a1 +[ ]+[0-9a-f]+:[ ]+9f602573[ ]+csrr[ ]+a0,spmpaddr54 +[ ]+[0-9a-f]+:[ ]+9f659073[ ]+csrw[ ]+spmpaddr54,a1 +[ ]+[0-9a-f]+:[ ]+9f702573[ ]+csrr[ ]+a0,spmpaddr55 +[ ]+[0-9a-f]+:[ ]+9f759073[ ]+csrw[ ]+spmpaddr55,a1 +[ ]+[0-9a-f]+:[ ]+9f802573[ ]+csrr[ ]+a0,spmpaddr56 +[ ]+[0-9a-f]+:[ ]+9f859073[ ]+csrw[ ]+spmpaddr56,a1 +[ ]+[0-9a-f]+:[ ]+9f902573[ ]+csrr[ ]+a0,spmpaddr57 +[ ]+[0-9a-f]+:[ ]+9f959073[ ]+csrw[ ]+spmpaddr57,a1 +[ ]+[0-9a-f]+:[ ]+9fa02573[ ]+csrr[ ]+a0,spmpaddr58 +[ ]+[0-9a-f]+:[ ]+9fa59073[ ]+csrw[ ]+spmpaddr58,a1 +[ ]+[0-9a-f]+:[ ]+9fb02573[ ]+csrr[ ]+a0,spmpaddr59 +[ ]+[0-9a-f]+:[ ]+9fb59073[ ]+csrw[ ]+spmpaddr59,a1 +[ ]+[0-9a-f]+:[ ]+9fc02573[ ]+csrr[ ]+a0,spmpaddr60 +[ ]+[0-9a-f]+:[ ]+9fc59073[ ]+csrw[ ]+spmpaddr60,a1 +[ ]+[0-9a-f]+:[ ]+9fd02573[ ]+csrr[ ]+a0,spmpaddr61 +[ ]+[0-9a-f]+:[ ]+9fd59073[ ]+csrw[ ]+spmpaddr61,a1 +[ ]+[0-9a-f]+:[ ]+9fe02573[ ]+csrr[ ]+a0,spmpaddr62 +[ ]+[0-9a-f]+:[ ]+9fe59073[ ]+csrw[ ]+spmpaddr62,a1 +[ ]+[0-9a-f]+:[ ]+9ff02573[ ]+csrr[ ]+a0,spmpaddr63 +[ ]+[0-9a-f]+:[ ]+9ff59073[ ]+csrw[ ]+spmpaddr63,a1 [ ]+[0-9a-f]+:[ ]+14d02573[ ]+csrr[ ]+a0,stimecmp [ ]+[0-9a-f]+:[ ]+14d59073[ ]+csrw[ ]+stimecmp,a1 [ ]+[0-9a-f]+:[ ]+15d02573[ ]+csrr[ ]+a0,stimecmph diff --git a/gas/testsuite/gas/riscv/csr-version-1p9p1.l b/gas/testsuite/gas/riscv/csr-version-1p9p1.l index 7fcd73ab7dd..a94d657850a 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p9p1.l +++ b/gas/testsuite/gas/riscv/csr-version-1p9p1.l @@ -1595,6 +1595,370 @@ .*Info: macro .* .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Info: macro .* .*Warning: invalid CSR `stimecmp', needs `sstc' extension diff --git a/gas/testsuite/gas/riscv/csr.s b/gas/testsuite/gas/riscv/csr.s index 3d8da5488a0..7c8707d76c0 100644 --- a/gas/testsuite/gas/riscv/csr.s +++ b/gas/testsuite/gas/riscv/csr.s @@ -433,6 +433,90 @@ csr mhpmevent30h csr mhpmevent31h + # Sspmp extension + csr spmpcfg0 + csr spmpcfg1 + csr spmpcfg2 + csr spmpcfg3 + csr spmpcfg4 + csr spmpcfg5 + csr spmpcfg6 + csr spmpcfg7 + csr spmpcfg8 + csr spmpcfg9 + csr spmpcfg10 + csr spmpcfg11 + csr spmpcfg12 + csr spmpcfg13 + csr spmpcfg14 + csr spmpcfg15 + csr spmpswitch0 + csr spmpswitch1 + csr spmpaddr0 + csr spmpaddr1 + csr spmpaddr2 + csr spmpaddr3 + csr spmpaddr4 + csr spmpaddr5 + csr spmpaddr6 + csr spmpaddr7 + csr spmpaddr8 + csr spmpaddr9 + csr spmpaddr10 + csr spmpaddr11 + csr spmpaddr12 + csr spmpaddr13 + csr spmpaddr14 + csr spmpaddr15 + csr spmpaddr16 + csr spmpaddr17 + csr spmpaddr18 + csr spmpaddr19 + csr spmpaddr20 + csr spmpaddr21 + csr spmpaddr22 + csr spmpaddr23 + csr spmpaddr24 + csr spmpaddr25 + csr spmpaddr26 + csr spmpaddr27 + csr spmpaddr28 + csr spmpaddr29 + csr spmpaddr30 + csr spmpaddr31 + csr spmpaddr32 + csr spmpaddr33 + csr spmpaddr34 + csr spmpaddr35 + csr spmpaddr36 + csr spmpaddr37 + csr spmpaddr38 + csr spmpaddr39 + csr spmpaddr40 + csr spmpaddr41 + csr spmpaddr42 + csr spmpaddr43 + csr spmpaddr44 + csr spmpaddr45 + csr spmpaddr46 + csr spmpaddr47 + csr spmpaddr48 + csr spmpaddr49 + csr spmpaddr50 + csr spmpaddr51 + csr spmpaddr52 + csr spmpaddr53 + csr spmpaddr54 + csr spmpaddr55 + csr spmpaddr56 + csr spmpaddr57 + csr spmpaddr58 + csr spmpaddr59 + csr spmpaddr60 + csr spmpaddr61 + csr spmpaddr62 + csr spmpaddr63 + # Sstc extension csr stimecmp csr stimecmph diff --git a/include/opcode/riscv-opc.h b/include/opcode/riscv-opc.h index 375483500e2..3e58b82d808 100644 --- a/include/opcode/riscv-opc.h +++ b/include/opcode/riscv-opc.h @@ -2957,6 +2957,89 @@ #define CSR_MHPMEVENT29H 0x73d #define CSR_MHPMEVENT30H 0x73e #define CSR_MHPMEVENT31H 0x73f +/* Sspmp extension CSR addresses. */ +#define CSR_SPMPCFG0 0x5c0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG1 0x5c1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG2 0x5c2 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG3 0x5c3 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG4 0x5c4 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG5 0x5c5 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG6 0x5c6 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG7 0x5c7 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG8 0x5c8 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG9 0x5c9 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG10 0x5ca /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG11 0x5cb /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG12 0x5cc /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG13 0x5cd /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG14 0x5ce /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPCFG15 0x5cf /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPSWITCH0 0x5d0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPSWITCH1 0x5d1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR0 0x9c0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR1 0x9c1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR2 0x9c2 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR3 0x9c3 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR4 0x9c4 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR5 0x9c5 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR6 0x9c6 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR7 0x9c7 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR8 0x9c8 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR9 0x9c9 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR10 0x9ca /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR11 0x9cb /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR12 0x9cc /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR13 0x9cd /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR14 0x9ce /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR15 0x9cf /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR16 0x9d0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR17 0x9d1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR18 0x9d2 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR19 0x9d3 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR20 0x9d4 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR21 0x9d5 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR22 0x9d6 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR23 0x9d7 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR24 0x9d8 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR25 0x9d9 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR26 0x9da /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR27 0x9db /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR28 0x9dc /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR29 0x9dd /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR30 0x9de /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR31 0x9df /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR32 0x9e0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR33 0x9e1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR34 0x9e2 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR35 0x9e3 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR36 0x9e4 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR37 0x9e5 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR38 0x9e6 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR39 0x9e7 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR40 0x9e8 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR41 0x9e9 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR42 0x9ea /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR43 0x9eb /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR44 0x9ec /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR45 0x9ed /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR46 0x9ee /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR47 0x9ef /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR48 0x9f0 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR49 0x9f1 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR50 0x9f2 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR51 0x9f3 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR52 0x9f4 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR53 0x9f5 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR54 0x9f6 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR55 0x9f7 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR56 0x9f8 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR57 0x9f9 /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR58 0x9fa /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR59 0x9fb /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR60 0x9fc /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR61 0x9fd /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR62 0x9fe /* TENTATIVELY use custom CSR address. */ +#define CSR_SPMPADDR63 0x9ff /* TENTATIVELY use custom CSR address. */ /* Sstc extension */ #define CSR_STIMECMP 0x14d #define CSR_STIMECMPH 0x15d @@ -3948,6 +4031,89 @@ DECLARE_CSR(mhpmevent28h, CSR_MHPMEVENT28H, CSR_CLASS_SSCOFPMF_32, PRIV_SPEC_CLA DECLARE_CSR(mhpmevent29h, CSR_MHPMEVENT29H, CSR_CLASS_SSCOFPMF_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) DECLARE_CSR(mhpmevent30h, CSR_MHPMEVENT30H, CSR_CLASS_SSCOFPMF_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) DECLARE_CSR(mhpmevent31h, CSR_MHPMEVENT31H, CSR_CLASS_SSCOFPMF_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +/* Sspmp extension CSRs. */ +DECLARE_CSR(spmpcfg0, CSR_SPMPCFG0, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg1, CSR_SPMPCFG1, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg2, CSR_SPMPCFG2, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg3, CSR_SPMPCFG3, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg4, CSR_SPMPCFG4, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg5, CSR_SPMPCFG5, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg6, CSR_SPMPCFG6, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg7, CSR_SPMPCFG7, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg8, CSR_SPMPCFG8, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg9, CSR_SPMPCFG9, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg10, CSR_SPMPCFG10, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg11, CSR_SPMPCFG11, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg12, CSR_SPMPCFG12, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg13, CSR_SPMPCFG13, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg14, CSR_SPMPCFG14, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpcfg15, CSR_SPMPCFG15, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpswitch0, CSR_SPMPSWITCH0, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpswitch1, CSR_SPMPSWITCH1, CSR_CLASS_SSPMP_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr0, CSR_SPMPADDR0, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr1, CSR_SPMPADDR1, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr2, CSR_SPMPADDR2, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr3, CSR_SPMPADDR3, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr4, CSR_SPMPADDR4, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr5, CSR_SPMPADDR5, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr6, CSR_SPMPADDR6, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr7, CSR_SPMPADDR7, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr8, CSR_SPMPADDR8, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr9, CSR_SPMPADDR9, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr10, CSR_SPMPADDR10, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr11, CSR_SPMPADDR11, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr12, CSR_SPMPADDR12, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr13, CSR_SPMPADDR13, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr14, CSR_SPMPADDR14, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr15, CSR_SPMPADDR15, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr16, CSR_SPMPADDR16, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr17, CSR_SPMPADDR17, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr18, CSR_SPMPADDR18, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr19, CSR_SPMPADDR19, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr20, CSR_SPMPADDR20, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr21, CSR_SPMPADDR21, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr22, CSR_SPMPADDR22, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr23, CSR_SPMPADDR23, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr24, CSR_SPMPADDR24, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr25, CSR_SPMPADDR25, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr26, CSR_SPMPADDR26, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr27, CSR_SPMPADDR27, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr28, CSR_SPMPADDR28, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr29, CSR_SPMPADDR29, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr30, CSR_SPMPADDR30, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr31, CSR_SPMPADDR31, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr32, CSR_SPMPADDR32, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr33, CSR_SPMPADDR33, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr34, CSR_SPMPADDR34, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr35, CSR_SPMPADDR35, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr36, CSR_SPMPADDR36, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr37, CSR_SPMPADDR37, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr38, CSR_SPMPADDR38, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr39, CSR_SPMPADDR39, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr40, CSR_SPMPADDR40, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr41, CSR_SPMPADDR41, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr42, CSR_SPMPADDR42, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr43, CSR_SPMPADDR43, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr44, CSR_SPMPADDR44, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr45, CSR_SPMPADDR45, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr46, CSR_SPMPADDR46, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr47, CSR_SPMPADDR47, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr48, CSR_SPMPADDR48, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr49, CSR_SPMPADDR49, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr50, CSR_SPMPADDR50, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr51, CSR_SPMPADDR51, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr52, CSR_SPMPADDR52, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr53, CSR_SPMPADDR53, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr54, CSR_SPMPADDR54, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr55, CSR_SPMPADDR55, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr56, CSR_SPMPADDR56, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr57, CSR_SPMPADDR57, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr58, CSR_SPMPADDR58, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr59, CSR_SPMPADDR59, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr60, CSR_SPMPADDR60, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr61, CSR_SPMPADDR61, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr62, CSR_SPMPADDR62, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) +DECLARE_CSR(spmpaddr63, CSR_SPMPADDR63, CSR_CLASS_SSPMP, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) /* Sstc extension */ DECLARE_CSR(stimecmp, CSR_STIMECMP, CSR_CLASS_SSTC, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) DECLARE_CSR(stimecmph, CSR_STIMECMPH, CSR_CLASS_SSTC_32, PRIV_SPEC_CLASS_NONE, PRIV_SPEC_CLASS_NONE) diff --git a/instantiate-sspmp.sh b/instantiate-sspmp.sh new file mode 100755 index 00000000000..c36a9e09d1f --- /dev/null +++ b/instantiate-sspmp.sh @@ -0,0 +1,130 @@ +#! /bin/bash +# SPDX-License-Identifier: CC0-1.0 +# Author: Tsukasa OI +# Year: 2023 + +check_csr_addr () +{ + ADDR="$1" + case "$ADDR" in + 0x* | 0X*) + ADDR="${ADDR#??}" + ;; + esac + case "$ADDR" in + [0-9a-fA-F]) + ADDR=00$ADDR + ;; + [0-9a-fA-F][0-9a-fA-F]) + ADDR=0$ADDR + ;; + [0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]) + ;; + *) + echo "ERROR: \`$1' is not a valid CSR address for \`$2'." 1>&2 + exit 1 + ;; + esac + ADDR=$(echo $ADDR | tr A-F a-f) + printf %s $ADDR + return 0 +} + +canonicalize_hex () +{ + ADDR=$1 + while : + do + case $ADDR in + 0) + break + ;; + 0?*) + ADDR=${ADDR#0} + ;; + *) + break + ;; + esac + done + printf 0x%s $ADDR +} + +dwarf_regnum () +{ + echo -n $(($1 + 4096)) +} + +dwarf_offset () +{ + echo -n $(($1 * 4)) +} + +test_path () +{ + if test '!' -f "$1" + then + echo "ERROR: file \`$1' is not found." 1>&2 + exit 1 + fi +} + +if test $# -ne 4 +then + ERRMSG="usage: $0 ADDR_SPMPCFG0 ADDR_SPMPADDR0 ADDR_SPMPSWITCH0 ADDR_SPMPSWITCH1" + echo "$ERRMSG" 1>&2 + exit 1 +fi + +PRIV_VERSIONS="1p9p1 1p10 1p11 1p12" + +test_path include/opcode/riscv-opc.h +for V in $PRIV_VERSIONS +do + test_path gas/testsuite/gas/riscv/csr-version-$V.d +done +test_path gas/testsuite/gas/riscv/csr-dw-regnums.s +test_path gas/testsuite/gas/riscv/csr-dw-regnums.d + +do_csr_instantiation () +{ + CSR="$1" + CSR_UPPER=$(echo $CSR | tr a-z A-Z) + ADDR=$(check_csr_addr "$2" $CSR) + HEXC=$(canonicalize_hex $ADDR) + DWREG=$(dwarf_regnum $HEXC) + DWOFF=$(dwarf_offset $HEXC) + ORIG_ADDR=$(grep "a0,${CSR}\$" gas/testsuite/gas/riscv/csr-version-1p12.d | head -n 1 | sed 's/.*+\([0-9a-f]\{3\}\)02573.*/\1/') + sed -i "s/^#define CSR_${CSR_UPPER} .*/#define CSR_${CSR_UPPER} $HEXC/" include/opcode/riscv-opc.h + for V in $PRIV_VERSIONS + do + sed -i "s/+${ORIG_ADDR}\\(02573\\|59073\\)/+${ADDR}\\1/" gas/testsuite/gas/riscv/csr-version-$V.d + done + sed -i "s/\\.cfi_offset ${CSR}, .*/.cfi_offset ${CSR}, ${DWOFF}/" gas/testsuite/gas/riscv/csr-dw-regnums.s + sed -i "s/DW_CFA_offset_extended_sf: r[0-9]\\+ \\\\(${CSR}\\\\) at cfa\\\\+[0-9]\\+/DW_CFA_offset_extended_sf: r${DWREG} \\\\(${CSR}\\\\) at cfa\\\\+${DWOFF}/" gas/testsuite/gas/riscv/csr-dw-regnums.d +} + +ADDR=$(check_csr_addr "$1" spmpcfg0) +NADDR=$((0x$ADDR)) +for N in $(seq 0 15) +do + ADDR_N=$(printf %03x $(($NADDR + $N))) + do_csr_instantiation spmpcfg$N $ADDR_N +done + +ADDR=$(check_csr_addr "$2" spmpaddr0) +NADDR=$((0x$ADDR)) +for N in $(seq 0 63) +do + ADDR_N=$(printf %03x $(($NADDR + $N))) + do_csr_instantiation spmpaddr$N $ADDR_N +done + +do_csr_instantiation spmpswitch0 "$3" +do_csr_instantiation spmpswitch1 "$4" + +if test -f "$0" +then + rm -f "$0" +fi +exit 0