[PATCH] RISC-V: Add support for Smpmpmt v0.6 extension
Jerry Zhang Jian
jerry.zhangjian@sifive.com
Wed Nov 5 03:26:23 GMT 2025
This implements the Smpmpmt (PMP-based Memory Types) extension,
version 0.6[1].
The Smpmpmt extension provides a mechanism to control memory
attributes at the granularity of PMP regions, analogous to Svpbmt
but associated with PMP registers rather than page-table entries.
The extension is currently in frozen state[2].
[1] https://github.com/riscv/riscv-isa-manual/blob/smpmpmt/src/smpmpmt.adoc
[2] https://riscv.atlassian.net/browse/RVS-2948
bfd/ChangeLog:
* elfxx-riscv.c: Add Smpmpmt v0.6 extension.
gas/ChangeLog:
* NEWS: Updated.
* testsuite/gas/riscv/march-help.l: Ditto.
Signed-off-by: Jerry Zhang Jian <jerry.zhangjian@sifive.com>
---
bfd/elfxx-riscv.c | 1 +
gas/NEWS | 6 +++---
gas/testsuite/gas/riscv/march-help.l | 1 +
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c
index 085d77923a0..1134d671063 100644
--- a/bfd/elfxx-riscv.c
+++ b/bfd/elfxx-riscv.c
@@ -1569,6 +1569,7 @@ static const struct riscv_supported_ext riscv_supported_std_s_ext[] =
{"smcntrpmf", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"smctr", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"smepmp", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
+ {"smpmpmt", ISA_SPEC_CLASS_DRAFT, 0, 6, 0 },
{"smrnmi", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"smstateen", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
{"smdbltrp", ISA_SPEC_CLASS_DRAFT, 1, 0, 0 },
diff --git a/gas/NEWS b/gas/NEWS
index 4bd3d747aa5..fdbd3d90f1b 100644
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -48,9 +48,9 @@ Changes in 2.45:
.bfloat16 directive.
* Add support for RISC-V standard extensions:
- ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0,
- sha v1.0, zce v1.0, smcdeleg v1.0, ssccfg v1.0, svvptc v1.0, zilsd v1.0,
- zclsd v1.0, smrnmi v1.0 instruction.
+ smpmpmt v0.6, ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0,
+ supm v1.0, sha v1.0, zce v1.0, smcdeleg v1.0, ssccfg v1.0, svvptc v1.0,
+ zilsd v1.0, zclsd v1.0, smrnmi v1.0 instruction.
* Add support for RISC-V vendor extensions:
T-Head: xtheadvdot v1.0.
diff --git a/gas/testsuite/gas/riscv/march-help.l b/gas/testsuite/gas/riscv/march-help.l
index 0ce2f896735..99608b21d0c 100644
--- a/gas/testsuite/gas/riscv/march-help.l
+++ b/gas/testsuite/gas/riscv/march-help.l
@@ -124,6 +124,7 @@ All available -march extensions for RISC-V:
smcntrpmf 1.0
smctr 1.0
smepmp 1.0
+ smpmpmt 0.6
smrnmi 1.0
smstateen 1.0
smdbltrp 1.0
--
2.51.1
More information about the Binutils
mailing list