diff options
author | Kersten Richter <kersten@riscv.org> | 2024-04-17 21:49:03 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-17 21:49:03 -0500 |
commit | aaa1bd9a3eab04b367e16c82750c96e4e4eae556 (patch) | |
tree | b20005d64048a9f4ad8b568439e21b2c1cb8d404 /src/smcntrpmf.adoc | |
parent | 7aeb6777d7b21e5d725089d11ad2c1e78a72ef71 (diff) | |
download | riscv-isa-manual-aaa1bd9a3eab04b367e16c82750c96e4e4eae556.zip riscv-isa-manual-aaa1bd9a3eab04b367e16c82750c96e4e4eae556.tar.gz riscv-isa-manual-aaa1bd9a3eab04b367e16c82750c96e4e4eae556.tar.bz2 |
Update smcntrpmf.adoc
Signed-off-by: Kersten Richter <kersten@riscv.org>
Diffstat (limited to 'src/smcntrpmf.adoc')
-rw-r--r-- | src/smcntrpmf.adoc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/smcntrpmf.adoc b/src/smcntrpmf.adoc index 339ced2..cc43b51 100644 --- a/src/smcntrpmf.adoc +++ b/src/smcntrpmf.adoc @@ -14,7 +14,7 @@ This proposal remedies these issues by introducing privilege mode filtering for [[csrs]] === CSRs -==== Machine Counter Configuration Registers (mcyclecfg, minstretcfg) +==== Machine Counter Configuration (`mcyclecfg`, `minstretcfg`) Registers mcyclecfg and minstretcfg are 64-bit registers that configure privilege mode filtering for the cycle and instret counters, respectively. @@ -70,4 +70,4 @@ For the instret counter, most instructions do not affect mode transitions, so fo The instret definition above is intended to ensure that the counter increments in a predictable fashion. For example, consider a scenario where minstretcfg is configured such that all modes other than U-mode are inhibited. A user mode load should increment only once, even if it takes a page fault or other exception. With this definition, the faulting execution of the load will not increment (it does not retire), the handler instructions will not increment (they execute in an inhibited mode), including the xRET (it arguably retires in a non-inhibited mode, but it originates in an inhibited mode). Only once the load is re-executed and retires will it increment instret. In cases where an instruction is emulated by software running in a privilege mode that is inhibited in minstretcfg, the emulation routine must emulate the instret increment. -====
\ No newline at end of file +==== |