From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-sender-0.a4lg.com (mail-sender-0.a4lg.com [IPv6:2401:2500:203:30b:4000:6bfe:4757:0]) by sourceware.org (Postfix) with ESMTPS id 709A8385802F for ; Tue, 29 Nov 2022 01:21:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 709A8385802F Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=irq.a4lg.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=irq.a4lg.com Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id B9E8C300089; Tue, 29 Nov 2022 01:21:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irq.a4lg.com; s=2017s01; t=1669684876; bh=rxZ8MZOP4ytIIaApRWjPn/kF9fMkuKV0GdsR35N0KWg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Mime-Version:Content-Transfer-Encoding; b=oTKIdj2pIRWLS8NaJ4a1WaJacL6qgJcGc0o9EWmYx51T8vAnwDdxii3nT5Dz2b7o3 Ru38zF33ir29inPIIuEt292hEDnX+nMgZ/FVemHY767WHuseHIcel3XPwKZ8aLlmVt iAP/fDUvX2r4qZhfFJQuBxsOznOWPEAr5P0lCnmA= From: Tsukasa OI To: Tsukasa OI Cc: binutils@sourceware.org Subject: [REVIEW ONLY 1/2] UNRATIFIED RISC-V: Add 'Sspmp' extension and its TENTATIVE CSRs Date: Tue, 29 Nov 2022 01:20:57 +0000 Message-Id: <54d777ce6e71c02b8b0f9426367e98d0f927ce40.1669684854.git.research_trasio@irq.a4lg.com> In-Reply-To: References: Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,GIT_PATCH_0,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: From: Tsukasa OI [DO NOT MERGE] Until 'Sspmp' extension is frozen/ratified and final version number is determined, this patch should not be merged upstream. This commit uses unratified version 0.8 as in the documentation (instead of possible 1.0 after ratification). This commit adds RISC-V S-mode Physical Memory Protection (SPMP) version 0.8 based on the specification: Note Because CSR addresses are not fixed yet, this commit uses tentative addresses (a part of custom CSR space). bfd/ChangeLog: * elfxx-riscv.c (riscv_implicit_subsets) Add implication 'Sspmp' -> 'Zicsr'. (riscv_supported_std_s_ext): Add 'Sspmp' extension to valid 'S' extension list. gas/ChangeLog: * config/tc-riscv.c (enum riscv_csr_class): Add CSR classes for the 'Sspmp' extension. (riscv_csr_address): Add handling for new CSR classes. * testsuite/gas/riscv/csr-dw-regnums.d: Add new CSRs. * testsuite/gas/riscv/csr-dw-regnums.s: Likewise. * testsuite/gas/riscv/csr.s: Add new CSRs. * testsuite/gas/riscv/csr-version-1p9p1.d: Likewise. * testsuite/gas/riscv/csr-version-1p9p1.l: Likewise. * testsuite/gas/riscv/csr-version-1p10.d: Likewise. * testsuite/gas/riscv/csr-version-1p10.l: Likewise. * testsuite/gas/riscv/csr-version-1p11.d: Likewise. * testsuite/gas/riscv/csr-version-1p11.l: Likewise. * testsuite/gas/riscv/csr-version-1p12.d: Likewise. * testsuite/gas/riscv/csr-version-1p12.l: Likewise. include/ChangeLog: * opcode/riscv-opc.h (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): New. --- bfd/elfxx-riscv.c | 2 + gas/config/tc-riscv.c | 7 + gas/testsuite/gas/riscv/csr-dw-regnums.d | 82 +++++++++ gas/testsuite/gas/riscv/csr-dw-regnums.s | 83 +++++++++ gas/testsuite/gas/riscv/csr-version-1p10.d | 164 ++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p10.l | 182 ++++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p11.d | 164 ++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p11.l | 182 ++++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p12.d | 164 ++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p12.l | 182 ++++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p9p1.d | 164 ++++++++++++++++++ gas/testsuite/gas/riscv/csr-version-1p9p1.l | 182 ++++++++++++++++++++ gas/testsuite/gas/riscv/csr.s | 84 +++++++++ include/opcode/riscv-opc.h | 166 ++++++++++++++++++ 14 files changed, 1808 insertions(+) diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c index 0bcf2fdcfa34..c810b7d106e1 100644 --- a/bfd/elfxx-riscv.c +++ b/bfd/elfxx-riscv.c @@ -1106,6 +1106,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}, {NULL, NULL, NULL} @@ -1228,6 +1229,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 }, {"svinval", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 }, diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c index 0682eb355241..15a151580d18 100644 --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -80,6 +80,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) */ @@ -1064,6 +1066,11 @@ riscv_csr_address (const char *csr_name, || csr_class == CSR_CLASS_SSAIA_AND_H_32); extension = "ssaia"; break; + case CSR_CLASS_SSPMP: + case CSR_CLASS_SSPMP_32: + is_rv32_only = (csr_class == CSR_CLASS_SSPMP_32); + extension = "sspmp"; + break; case CSR_CLASS_SSSTATEEN: case CSR_CLASS_SSSTATEEN_AND_H: case CSR_CLASS_SSSTATEEN_AND_H_32: diff --git a/gas/testsuite/gas/riscv/csr-dw-regnums.d b/gas/testsuite/gas/riscv/csr-dw-regnums.d index fd830666ab89..2e68235c13fe 100644 --- a/gas/testsuite/gas/riscv/csr-dw-regnums.d +++ b/gas/testsuite/gas/riscv/csr-dw-regnums.d @@ -395,6 +395,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 b8b0f7902297..397847c3d01d 100644 --- a/gas/testsuite/gas/riscv/csr-dw-regnums.s +++ b/gas/testsuite/gas/riscv/csr-dw-regnums.s @@ -395,6 +395,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 ee41e1025cce..ffea30674d33 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.d +++ b/gas/testsuite/gas/riscv/csr-version-1p10.d @@ -765,6 +765,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 e677b78b8bb8..c1a91cee3c99 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.l +++ b/gas/testsuite/gas/riscv/csr-version-1p10.l @@ -727,6 +727,188 @@ .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Warning: invalid CSR `mhpmevent31h', needs rv32i extension .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmph', needs rv32i extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p11.d b/gas/testsuite/gas/riscv/csr-version-1p11.d index a83b1bf68f98..ce8da6fac2f1 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.d +++ b/gas/testsuite/gas/riscv/csr-version-1p11.d @@ -765,6 +765,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 81ca86ca7bcc..542e3a70f34b 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.l +++ b/gas/testsuite/gas/riscv/csr-version-1p11.l @@ -725,6 +725,188 @@ .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Warning: invalid CSR `mhpmevent31h', needs rv32i extension .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmph', needs rv32i extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p12.d b/gas/testsuite/gas/riscv/csr-version-1p12.d index 612aac280768..c1c31bbbf79b 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.d +++ b/gas/testsuite/gas/riscv/csr-version-1p12.d @@ -765,6 +765,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 1c0bb4ef2d8f..83933a198eda 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.l +++ b/gas/testsuite/gas/riscv/csr-version-1p12.l @@ -587,6 +587,188 @@ .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Warning: invalid CSR `mhpmevent31h', needs rv32i extension .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmph', needs rv32i extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p9p1.d b/gas/testsuite/gas/riscv/csr-version-1p9p1.d index 0fe849c269c2..b304622e7f9c 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p9p1.d +++ b/gas/testsuite/gas/riscv/csr-version-1p9p1.d @@ -765,6 +765,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 c65d0b48e414..bceb315f576d 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p9p1.l +++ b/gas/testsuite/gas/riscv/csr-version-1p9p1.l @@ -777,6 +777,188 @@ .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension .*Warning: invalid CSR `mhpmevent31h', needs rv32i extension .*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg0', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg1', needs rv32i extension +.*Warning: invalid CSR `spmpcfg1', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg2', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg3', needs rv32i extension +.*Warning: invalid CSR `spmpcfg3', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg4', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg5', needs rv32i extension +.*Warning: invalid CSR `spmpcfg5', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg6', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg7', needs rv32i extension +.*Warning: invalid CSR `spmpcfg7', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg8', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg9', needs rv32i extension +.*Warning: invalid CSR `spmpcfg9', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg10', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg11', needs rv32i extension +.*Warning: invalid CSR `spmpcfg11', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg12', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg13', needs rv32i extension +.*Warning: invalid CSR `spmpcfg13', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg14', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpcfg15', needs rv32i extension +.*Warning: invalid CSR `spmpcfg15', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch0', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpswitch1', needs rv32i extension +.*Warning: invalid CSR `spmpswitch1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr0', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr1', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr2', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr3', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr4', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr5', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr6', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr7', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr8', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr9', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr10', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr11', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr12', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr13', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr14', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr15', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr16', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr17', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr18', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr19', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr20', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr21', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr22', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr23', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr24', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr25', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr26', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr27', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr28', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr29', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr30', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr31', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr32', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr33', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr34', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr35', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr36', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr37', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr38', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr39', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr40', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr41', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr42', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr43', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr44', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr45', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr46', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr47', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr48', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr49', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr50', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr51', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr52', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr53', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr54', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr55', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr56', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr57', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr58', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr59', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr60', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr61', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr62', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension +.*Warning: invalid CSR `spmpaddr63', needs `sspmp' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmp', needs `sstc' extension .*Warning: invalid CSR `stimecmph', needs rv32i extension diff --git a/gas/testsuite/gas/riscv/csr.s b/gas/testsuite/gas/riscv/csr.s index c7406ce34c2e..ec1b91950228 100644 --- a/gas/testsuite/gas/riscv/csr.s +++ b/gas/testsuite/gas/riscv/csr.s @@ -427,6 +427,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 06e3df0f5a63..fc839454f7d3 100644 --- a/include/opcode/riscv-opc.h +++ b/include/opcode/riscv-opc.h @@ -2747,6 +2747,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 @@ -3624,6 +3707,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) -- 2.38.1