Closed viktoryou closed 1 week ago
In practice, a native RISC-V implementation will always have Smstateen if it has Ssstateen, but it is not something that we can readily mandate.
Consider that a compliant S-mode implementation might not actually have M-mode. This might happen, for example, if running in an emulator that only provides the S-mode ISA and SBI abstractions, where the SBI calls are implemented in the emulator itself rather than via software running on the target machine. With this in mind, we generally cannot say that an S-mode extension requires an M-mode extension.
For a RV64 implemention with supervisor mode supported, when CSRs and functionality of Ssstateen extension are completed, would the Smstateen extension become a mandatory option?