From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id A779F3858D28 for ; Tue, 29 Nov 2022 02:22:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A779F3858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dabbelt.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dabbelt.com Received: by mail-pl1-x634.google.com with SMTP id 4so12068180pli.0 for ; Mon, 28 Nov 2022 18:22:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dabbelt-com.20210112.gappssmtp.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:from:to:cc:subject:date:message-id :reply-to; bh=YB1SP+xkyankDspARoaFbuUMhAj1BG7s6tlW2EPq2PA=; b=tGcBX5C2wqDWoJMIH2WZMS/SomioERzps1wg4/Farm5Q0N0+NxFcc5cjmMuzkli/gq oCXNr60fQ/teZmfnvxMgC4kIrAKMRKbqQNvELtquzn7DA5Hbs3A6lECMXqoq6oaROlo2 E/cOIayTxu3UZoMXjIME38t6rugRVjFayKpChIWxV4QZ0jRPiJfOpHx+9u52FM3/x5EP 3wIb0DJ3t4MHBB95Z2qTZ+67SOvku0KkzkOMlJA61XD2sQ2f6xVbN6MIWrQWdBtWxwSw ba1p+UQDRVgcWpNaQ4+sgqPy/qL4QLZLiYQ3AvYh3kl/tNZGn9kw91YzAuppcVMjyw4E OFOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=YB1SP+xkyankDspARoaFbuUMhAj1BG7s6tlW2EPq2PA=; b=6CQcu1acsB83wHvoSY3VqAo+6oyFbl4Wze5elb0yNIJmgBEruepNqFvmitI5ABuxxg vacF8NqVRbvOYwHOPOXr7jbBoCXFZ81RGqOqPb8gaQbQHuqenDWMhGsqEkNxz/eZLSk9 h7igY+vSw+1XVIjVJ+m0Gqx8URKhtVyAodUYws1JZU5Qo+7yi9liM6FbxdMghFZZKE65 JZqlQZz7R5wYwYf6cKIf2OuKBPE+dNe7ghUYK42cuhmhnQTRMK+UEJWat/PEbbnxVjRd S3pzssSL5MHPruggOeUAp2vkRNuZ7lNTcvSizAVk7uQDzOaO3rZzcPvsUv7jQAS9uLmW MVUA== X-Gm-Message-State: ANoB5pkz7neGu5n6VUK1t9obVg5zPur6k375RCTaD46I/CPjljNgg0Hh jLjYz+y6Vv5dBF8UO+sHrSSZhAPj1kWEpA== X-Google-Smtp-Source: AA0mqf68kqhc+mnD9E1Xlyi4QebisbC0+dcVIfWgiM6ylyXNOhWS1/rQ18ZOXYsxcFcjMMB05G9A/A== X-Received: by 2002:a17:903:4051:b0:170:f343:ba14 with SMTP id n17-20020a170903405100b00170f343ba14mr35012383pla.70.1669688550366; Mon, 28 Nov 2022 18:22:30 -0800 (PST) Received: from localhost ([50.221.140.188]) by smtp.gmail.com with ESMTPSA id a5-20020a170902710500b0017d97d13b18sm9446123pll.65.2022.11.28.18.22.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Nov 2022 18:22:29 -0800 (PST) Date: Mon, 28 Nov 2022 18:22:29 -0800 (PST) X-Google-Original-Date: Mon, 28 Nov 2022 18:21:09 PST (-0800) Subject: Re: [REVIEW ONLY 1/2] UNRATIFIED RISC-V: Add 'Sspmp' extension and its TENTATIVE CSRs In-Reply-To: <54d777ce6e71c02b8b0f9426367e98d0f927ce40.1669684854.git.research_trasio@irq.a4lg.com> CC: research_trasio@irq.a4lg.com, binutils@sourceware.org From: Palmer Dabbelt To: binutils@sourceware.org Message-ID: Mime-Version: 1.0 (MHng) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-11.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,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: On Mon, 28 Nov 2022 17:20:57 PST (-0800), binutils@sourceware.org wrote: > 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: > Looks like there's also vSPMP and hgPMP extensions (see chapter 4)? Those are still somewhat vague in the spec, though. Otherwise Reviewed-by: Palmer Dabbelt # pending freeze Thanks! > > 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)