Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What to do with the mode bit when no Zcherihyrbid #504

Open
jamie-melling opened this issue Jan 10, 2025 · 0 comments
Open

What to do with the mode bit when no Zcherihyrbid #504

jamie-melling opened this issue Jan 10, 2025 · 0 comments

Comments

@jamie-melling
Copy link

I can't see anywhere in the spec what to do with the mode bit when there is no Zcherihybrid.

If you have a purecap only machine and a capability has the Mode-bit set, should this be treated as an invalid permission or as a reserved bit set? I think invalid permission might make more sense for RV32 systems as the mode bit is part of the AP encoding.
However, for RV64, reserved bit makes more sense but it would be a bad idea to have an inconsistency between RV64 and RV32.

While searching the spec, the only thing I could find was

When MXLEN=64, the Mode is encoded separately; a new CHERI Execution Mode Encoding field
is added to the capability format as shown in Table 5. The CHERI Execution Mode Encoding is
only valid for code capabilities, otherwise the field is reserved.

I think it might be better to reword the last sentence as

The CHERI Execution Mode Encoding is only valid for code capabilities, otherwise, the combination Mode bit set for non-executable capabilities is reserved for future use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant