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

v2: Split sentries by direction #42

Closed
nwf-msr opened this issue Feb 28, 2024 · 1 comment
Closed

v2: Split sentries by direction #42

nwf-msr opened this issue Feb 28, 2024 · 1 comment
Labels
maybe-v2 Tracking issues for possible changes for an ISAv2

Comments

@nwf-msr
Copy link
Contributor

nwf-msr commented Feb 28, 2024

We have reserved space for, but do not presently implement, differentiating forward and backward sentries. There would then be at least five forms: forward with IRQ {preserved, disabled, enabled} and backward with IRQ {enabled, disabled}.

The ISA itself would need some tweaking: cjalr would need to seal PCC as one of the reverse types rather than one of the forward types, and cj and cjalr would need to differentiate between return and non-return transfers. Likely, absent any other encoding changes, this would enshrine cj ra (that is, cjalr x0, ra) as being a return instruction and prohibit its use for forward transfers, requiring modest toolchain work.

@nwf-msr nwf-msr added the maybe-v2 Tracking issues for possible changes for an ISAv2 label Feb 28, 2024
@nwf-msr
Copy link
Contributor Author

nwf-msr commented Jul 1, 2024

This is in fact landed in v1. See #54 and https://cheriot.org/isa/ibex/2024/06/26/sentries-cfi.html

@nwf-msr nwf-msr closed this as completed Jul 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maybe-v2 Tracking issues for possible changes for an ISAv2
Projects
None yet
Development

No branches or pull requests

1 participant