Closed ubc-guy closed 4 months ago
Moved Sspm to correct section of RVB.
Sspm is optional in both RVA23S64 and RVB23S64. Sspm can only be enabled by the outer execution environment, but has architectural effect inside execution environment. The ISA spec does not cover execution environment interfaces to turn on/turn off features, these are captured in ABI specifications.
RVB23 has two adjacent bullets that need updating:
The following privileged expansion options are mandatory in RVA22S64 but options in RVB23S64:
o Ssnpm Pointer masking, with senvcfg.PME supporting at minimum, settings PMLEN=0 and PMLEN=7.
o Sspm Supervisor-mode pointer masking, with the supervisor execution environment providing a means to select PMLEN=0 and PMLEN=7 at minimum.
In truth, in RVA only the first one is mandatory, but the second one is an option.
FYI, I just looked at the pointer masking spec, and I'm not sure what Sspm actually includes. It writes:
"An extension that indicates that there is pointer-masking support available in supervisor mode, with some facility provided in the supervisor execution environment to control pointer masking.
The precise nature of these facilities is left to the respective execution environment."
How can something be "mandatory" when there is no specification for what is required?