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

Various bugfixes #717

Merged
merged 8 commits into from
May 19, 2020
Merged

Various bugfixes #717

merged 8 commits into from
May 19, 2020

Conversation

brianhuffman
Copy link
Contributor

@brianhuffman brianhuffman commented May 17, 2020

Having a bunch of separate parallel pull requests was going to get unwieldy, and merging was going to make a big mess of the commit history, so I'm combining a few separate PRs into this new one (#714, #715, #716).

This PR contains fixes for #691, #698, and #707.
EDIT: Also #701.

Brian Huffman added 5 commits May 17, 2020 08:33
The checking of argument types has been moved from `resolveArguments`
into a separate function `checkSpecArgumentTypes`, which is called from
both `crucible_llvm_verify` and `crucible_llvm_unsafe_assume_spec`.

Fixes #707.
@kquick
Copy link
Member

kquick commented May 17, 2020

This seems to have broken the kyber proofs, possibly because of the argument type checking: http://fryingpan.dev.galois.com/hydra/build/3412946/log

@brianhuffman
Copy link
Contributor Author

What I think you meant to say is, this has revealed that the kyber proofs were already broken :)

@brianhuffman
Copy link
Contributor Author

But seriously, where can I find these kyber proofs so I can test them and fix them?

@chameco
Copy link
Contributor

chameco commented May 18, 2020

I've fixed this problem- a Cryptol literal being passed as an argument was annotated as [32] where [64] was expected.

The Kyber proof is available on the external GitLab. I think you should have access there @brianhuffman.

Copy link
Contributor

@andreistefanescu andreistefanescu left a comment

Choose a reason for hiding this comment

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

I've looked at all the different changes, they look good! Thank you @brianhuffman

@@ -180,10 +180,10 @@ ppOverrideFailureReason ::
) => OverrideFailureReason ext -> PP.Doc
ppOverrideFailureReason rsn = case rsn of
AmbiguousPointsTos pts ->
PP.text "ambiguous collection of points-to assertions" PP.<$$>
PP.text "LHS of points-to assertion(s) not reachable via points-tos from inputs/outputs:" PP.<$$>
Copy link
Contributor

Choose a reason for hiding this comment

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

"not reachable" -> "not uniquely determined"?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Is there a situation where a variable could be determined, but not uniquely so?

(PP.indent 2 $ PP.vcat (map PP.pretty pts))
AmbiguousVars vs ->
PP.text "ambiguous collection of variables" PP.<$$>
PP.text "Fresh variable(s) not reachable via points-tos from function inputs/outputs:" PP.<$$>
Copy link
Contributor

Choose a reason for hiding this comment

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

"not reachable" -> "not uniquely determined"?

Copy link
Contributor

@atomb atomb left a comment

Choose a reason for hiding this comment

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

All of the small changes look good. Some of the large blocks of additions and deletions are clearly just reformatting, but some aren't quite as obvious. I haven't carefully looked over some of those. If they do include functional changes, I can look more closely.

@brianhuffman
Copy link
Contributor Author

@atomb you might like to try looking at each commit separately, instead of the overall diff. The reformatting was separated into its own commit.

@atomb
Copy link
Contributor

atomb commented May 18, 2020

Ah, right, of course. Looking at the individual commits (but ignoring the reformatting one), I think it all looks good.

@brianhuffman brianhuffman merged commit eeef9a1 into master May 19, 2020
@brianhuffman brianhuffman deleted the bh-bugfixes branch November 18, 2020 19:23
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.

6 participants