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

Shadow memory does not currently work on big-endian architectures #8207

Open
tautschnig opened this issue Feb 16, 2024 · 0 comments
Open

Shadow memory does not currently work on big-endian architectures #8207

tautschnig opened this issue Feb 16, 2024 · 0 comments
Labels

Comments

@tautschnig
Copy link
Collaborator

Running cbmc --big-endian regression/cbmc-shadow-memory/float1/main.c yields VERIFICATION FAILED (and so do several other tests in the cbmc-shadow-memory suite). As far as I can tell, the problem is that compute_max_over_bytes uses byte extract with a value type that isn't even a full byte (it might just be 7 bits). This code should either extract bits (with suitable offset), or extract full bytes and then apply a mask (adjusted for endianness).

CBMC version: cbmc-5.95.1 or later
Operating system: Any big-endian platform, or running cbmc with --big-endian
Exact command line resulting in the issue: See above
What behaviour did you expect: Verification results are independent of endianness.
What happened instead: See above

@tautschnig tautschnig added the bug label Feb 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant