riscv / riscv-profiles

RISC-V Architecture Profiles
Creative Commons Attribution 4.0 International
104 stars 30 forks source link

RVB duplicate text surround Ssnpm #162

Closed ubc-guy closed 2 months ago

ubc-guy commented 5 months ago

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?

kasanovic commented 2 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.