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

representable range description, and some other minor clarifications #22

Merged
merged 3 commits into from
Jan 25, 2024

Conversation

tariqkurd-repo
Copy link
Collaborator

Add note clarifying how the representable region is defined, and some other minor clarifications

in the expression above. If the capability address changes causing that address bit
to change, then the representable range is violated and so the tag will be cleared
by an instruction such as <<CINCOFFSET>>. This is represented by a range
of `s=2^E+MW^` in xref:cap_bounds_map[xrefstyle=short].
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tariqkurd-repo : Isn't this similar to the description here?

NOTE: The encoding of the bounds depends upon the leading 1 of the address
which is used to determine the exponent. If the leading 1 of the address moves
then the bounds will need to be recalculated. Instructions like <<CINCOFFSET>>
and <<CSETADDR>> update the address field but do not recalculate the bounds.
Therefore, if the leading 1 moves relative to when the bounds were calculated
then the tag is cleared on the result as the encoding has been invalidated.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes - but actually that description is inaccurate which was my misunderstanding - the new description is accurate. I'll resolve the differences and push more commits.

@tariqkurd-repo tariqkurd-repo changed the title minor clarifications representable range description, and some other minor clarifications Jan 24, 2024
src/cap-description.adoc Outdated Show resolved Hide resolved
src/riscv-integration.adoc Outdated Show resolved Hide resolved
@tariqkurd-repo tariqkurd-repo merged commit 56b44e1 into main Jan 25, 2024
2 checks passed
@arichardson arichardson deleted the minor_clarifications branch January 26, 2024 23:54
arichardson pushed a commit to arichardson/riscv-cheri that referenced this pull request Jan 30, 2024
also autofix of existing files
fixes riscv#22

Signed-off-by: Kevin Broch <kbroch@rivosinc.com>
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

Successfully merging this pull request may close these issues.

3 participants