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

Submodules: Adapt to GaloisInc/crucible#914, GaloisInc/crucible#906, and GaloisInc/crucible#928 #1521

Merged
merged 3 commits into from
Dec 6, 2021

Conversation

RyanGlScott
Copy link
Contributor

@RyanGlScott RyanGlScott commented Nov 23, 2021

This PR contains three submodule-updating commits to bring saw-script's crucible submodule up to date. The commit messages for each commits are included below for reference:

Adapt to GaloisInc/crucible#914

This bumps the crucible submodule to include GaloisInc/crucible#914. This also bumps the macaw submodule to include GaloisInc/macaw#244, which adapts macaw-symbolic to the crucible changes. These crucible changes require some tweaks in the following libraries:

  • In heapster-saw, we need to add a NuMatching1 instance for GlobalVar now that LLVM_SideConditions has a field of type GlobalVar Mem. This also requires defining an opaque NuMatching instance for Nonce to support the NuMatching1 instance for GlobalVar.

    Elsewhere in heapster-saw, we need to adapt a pattern match on LLVM_SideConditions to accommodate its new field.

  • In saw-script, we need to make sure that ?recordLLVMAnnotation is given three arguments, not two, so that its type matches what HasLLVMAnn expects.

Adapt to GaloisInc/crucible#906

This bumps the crucible submodule to include GaloisInc/crucible#906. This also bumps the macaw submodule to include GaloisInc/macaw#245, which adapts macaw-symbolic to the crucible changes. The crucible changes require adding some additional ?memOpts :: MemOptions and HasLLVMAnn Sym constraints to various functions in saw-script.

Adapt to GaloisInc/crucible#928

This bumps the crucible submodule to include GaloisInc/crucible#928. The crucible changes require adding some additional ?memOpts :: MemOptions constraints to various functions.

Copy link
Contributor

@eddywestbrook eddywestbrook left a comment

Choose a reason for hiding this comment

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

All the Hepaster-related changes look good to me, and it appears that all the Heapster tests work. I'm not going to "approve" because I think it makes more sense for @brianhuffman to look at all the other changes. Thanks for removing all that annoying extra whitespace, btw!

This bumps the `crucible` submodule to include GaloisInc/crucible#914. This
also bumps the `macaw` submodule to include GaloisInc/macaw#244, which adapts
`macaw-symbolic` to the `crucible` changes. These `crucible` changes require
some tweaks in the following libraries:

* In `heapster-saw`, we need to add a `NuMatching1` instance for `GlobalVar`
  now that `LLVM_SideConditions` has a field of type `GlobalVar Mem`. This
  also requires defining an opaque `NuMatching` instance for `Nonce` to support
  the `NuMatching1` instance for `GlobalVar`.

  Elsewhere in `heapster-saw`, we need to adapt a pattern match on
  `LLVM_SideConditions` to accommodate its new field.
* In `saw-script`, we need to make sure that `?recordLLVMAnnotation` is given
  three arguments, not two, so that its type matches what `HasLLVMAnn` expects.
This bumps the `crucible` submodule to include GaloisInc/crucible#906. This
also bumps the `macaw` submodule to include GaloisInc/macaw#245, which adapts
`macaw-symbolic` to the `crucible` changes. The `crucible` changes require
adding some additional `?memOpts :: MemOptions` and `HasLLVMAnn Sym`
constraints to various functions in `saw-script`.
This bumps the `crucible` submodule to include GaloisInc/crucible#928. The
`crucible` changes require adding some additional `?memOpts :: MemOptions`
constraints to various functions.
@RyanGlScott RyanGlScott changed the title Submodules: Adapt to GaloisInc/crucible#914 and GaloisInc/crucible#906 Submodules: Adapt to GaloisInc/crucible#914, GaloisInc/crucible#906, and GaloisInc/crucible#928 Dec 3, 2021
@RyanGlScott
Copy link
Contributor Author

I also pushed an additional commits which adapts saw-script to GaloisInc/crucible#928. Nothing major is required besides some additional ?memOpts :: MemOptions constraints.

@RyanGlScott RyanGlScott added the PR: ready to merge Magic flag for pull requests to ask Mergify to merge given an approval and a successful CI run label Dec 6, 2021
@RyanGlScott
Copy link
Contributor Author

Mergify isn't automatically landing this, apparently due to our use of the strict mode: https://blog.mergify.com/strict-mode-deprecation/ . I'll look into changing this. In the meantime, I'll just land this manually.

@RyanGlScott RyanGlScott merged commit 96272c0 into master Dec 6, 2021
@RyanGlScott RyanGlScott deleted the crucible-submod-bump branch December 6, 2021 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: ready to merge Magic flag for pull requests to ask Mergify to merge given an approval and a successful CI run
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants