From 9ca87c59b25163971ec3c040605aa7ce17ff679b Mon Sep 17 00:00:00 2001 From: Ved Shanbhogue Date: Sat, 16 Mar 2024 15:57:42 -0500 Subject: [PATCH 1/2] add register layout for mnstatus --- src/cfi_forward.adoc | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/cfi_forward.adoc b/src/cfi_forward.adoc index d0687dd..94698e3 100644 --- a/src/cfi_forward.adoc +++ b/src/cfi_forward.adoc @@ -457,6 +457,33 @@ holds the previous `ELP`, and is updated as specified in <>. The * 0 - `NO_LP_EXPECTED` - no landing pad instruction expected. * 1 - `LP_EXPECTED` - a landing pad instruction is expected. +==== Resumable NMI Status Register (`mnstatus`) + +.Resumable NMI Status (`mnstatus`) when `MXLEN=64` +[wavedrom, ,svg] +.... +{reg: [ + {bits: 3, name: 'WPRI'}, + {bits: 1, name: 'NMIE'}, + {bits: 3, name: 'WPRI'}, + {bits: 1, name: 'MNPV'}, + {bits: 1, name: 'WPRI'}, + {bits: 1, name: 'MNPELP'}, + {bits: 1, name: 'WPRI'}, + {bits: 2, name: 'MNPP'}, + {bits: 51, name: 'WPRI'}, +], config:{lanes: 2, hspace:1024}} +.... + +The Zicfilp extension introduces the `MNPELP` (bit 9) in `mnstatus`. The +`MNPELP` field holds the previous `ELP`, and is updated as specified in +<>. The `MNPELP` field is encoded as follows: + +* 0 - `NO_LP_EXPECTED` - no landing pad instruction expected. +* 1 - `LP_EXPECTED` - a landing pad instruction is expected. + +<<< + [[FCIFIACT]] === Landing-Pad-Enabled (LPE) State From ef4c14c12000a21d15fc5b62896f4372a31380b2 Mon Sep 17 00:00:00 2001 From: Ved Shanbhogue Date: Sat, 16 Mar 2024 16:02:18 -0500 Subject: [PATCH 2/2] add register layout for mnstatus --- src/cfi_forward.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cfi_forward.adoc b/src/cfi_forward.adoc index 94698e3..a3c209c 100644 --- a/src/cfi_forward.adoc +++ b/src/cfi_forward.adoc @@ -472,7 +472,7 @@ holds the previous `ELP`, and is updated as specified in <>. The {bits: 1, name: 'WPRI'}, {bits: 2, name: 'MNPP'}, {bits: 51, name: 'WPRI'}, -], config:{lanes: 2, hspace:1024}} +], config:{lanes: 4, hspace:1024}} .... The Zicfilp extension introduces the `MNPELP` (bit 9) in `mnstatus`. The