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

Dm/control align #365

Merged
merged 5 commits into from
Feb 29, 2024
Merged

Dm/control align #365

merged 5 commits into from
Feb 29, 2024

Conversation

danmatichuk
Copy link
Collaborator

No description provided.

These are to be used to compare instruction traces of original vs.
patched CFARs.

Also refactor 'zipSeq' to use caching
… flow

This adds an additional set of actions for adding an
assumption/assertion/equivalence condition stating that both
the original and patched CFARs execute the exact same instructions
in the same order.

This is intended to handle the common case where the analysis has
proceeded past the location of the patch and is now discovering
control flow divergences that are a result of the equivalence domain
being weakened from exact equality. These divergences are either
spurious and can be resolved by asserting control flow alignment, or
are actual differences introduced by the patch and can be resolved by
adding control flow alignment as an equivalence condition at this point.
Note that this just prevents warnings from being shown in the
TraceTree or emitted in the log. Warnings that affect verification
(e.g. non-total block exits) will still affect the final result.
…cates

This makes the resulting predicates from control flow alignment
slightly more readable after simplification
Does not yet add target 3 to the test suite
@danmatichuk danmatichuk marked this pull request as ready for review February 29, 2024 20:26
@danmatichuk danmatichuk merged commit 527cce2 into master Feb 29, 2024
2 checks passed
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.

1 participant