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

Volatile intrinsics do not have to throw warnings #789

Closed
adpaco-aws opened this issue Feb 1, 2022 · 3 comments · Fixed by #1118
Closed

Volatile intrinsics do not have to throw warnings #789

adpaco-aws opened this issue Feb 1, 2022 · 3 comments · Fixed by #1118
Assignees
Labels
[C] Bug This is a bug. Something isn't working.

Comments

@adpaco-aws
Copy link
Contributor

A volatile intrinsic implies the possibility of a concurrent access to memory, which Kani does not have support for. Therefore we should warn users that volatile instructions are treated sequentially.

@adpaco-aws adpaco-aws self-assigned this Feb 1, 2022
@zhassan-aws zhassan-aws added [C] Bug This is a bug. Something isn't working. MLP - Must Have labels Mar 16, 2022
@zhassan-aws
Copy link
Contributor

Analysis: if the program creates threads, Kani will emit a warning/error when #922 is fixed.

If it doesn't create threads, then handling the volatile intrinsics in a sequential fashion is correct.

Based on this analysis, removing the "MLP - Must Have" label.

@zhassan-aws
Copy link
Contributor

Ensuring we correctly handle them is captured in #58.

@adpaco-aws adpaco-aws changed the title Volatile intrinsics do not throw warnings Volatile intrinsics do not have to throw warnings Apr 27, 2022
@adpaco-aws
Copy link
Contributor Author

Renamed to "Volatile intrinsics do not have to throw warnings" (see @zhassan-aws above).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[C] Bug This is a bug. Something isn't working.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants