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

[CHERI-RISC-V] Remove DDC interposition from CHERIv9 #228

Merged
merged 6 commits into from
Aug 1, 2023

Conversation

arichardson
Copy link
Member

Testing with some hand-written TestRIG traces: CTSRD-CHERI/TestRIG-traces#1

@arichardson
Copy link
Member Author

rebased and fixed a silly typo that caused the wrong unaligned exception type to be raised (store instead of load). Surprisingly this was caught by the MIPS tests

Instead use a new CHERI_TRANSLATE_DDC_RELOCATION macro that is defined in
each of the cheri-archspecific-early.h headers. This will make it easier
to disable DDC relocation for RISC-V.
This can be used to compute the value of an integer pointer checked via
DDC. The current behaviour in check_ddc() was incorrect for Morello as
Morello can dynamically enable/disable DDC interposition and uses the base
rather than the address of DDC for relocation.
This is needed to allow removal of DDC interposition from RISC-V and
as nice side-effect it removes the confusing #ifdef TARGET_AARCH64.
This will become the default eventually but for now we need to keep it
as an opt-in feature.
We were unconditionally adding the DDC address rather than using the
cheri_ddc_relative_addr() helper.
We were unconditionally adding the DDC address rather than using the
cheri_ddc_relative_addr() helper.
@arichardson arichardson merged commit a7013df into dev Aug 1, 2023
26 checks passed
@arichardson arichardson deleted the remove-ddc-interpos branch August 1, 2023 19:51
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.

2 participants