-
Notifications
You must be signed in to change notification settings - Fork 45
MIR: Update Rust toolchain to 1.91 (nightly-2025-09-14)
#1654
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
Conversation
These may change across Rust versions, so we just use all the libraries in rlibs, which should be kept up to date by mir-json-translate-libs
We never used it for anything, and it is now removed on the mir-json side
| cell_swap_is_nonoverlapping :: (ExplodedDefId, CustomRHS) | ||
| cell_swap_is_nonoverlapping = | ||
| ( ["core", "cell", "{impl}", "swap", "crucible_cell_swap_is_nonoverlapping_hook"] | ||
| , \case | ||
| Substs [ty] -> Just $ CustomOp $ \_ ops -> case ops of | ||
| [MirExp MirReferenceRepr src, | ||
| MirExp MirReferenceRepr dest] -> do | ||
| size <- getLayoutFieldAsExpr "crucible_cell_swap_is_nonoverlapping_hook" laySize ty | ||
| MirExp C.BoolRepr <$> isNonOverlapping src dest size | ||
| _ -> mirFail $ | ||
| "bad arguments for Cell::swap::crucible_cell_swap_is_nonoverlapping_hook: " | ||
| ++ show ops | ||
| _ -> Nothing | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a crux-mir test case that uses Cell::swap in order to ensure that this override has test coverage?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, it's in test/conc_eval/cell/swap.rs. There are also a few crux-mir-comp tests that use it.
mir-jsonsubmodule to bring in changes from Update Rust toolchain to 1.91 (nightly-2025-09-14) mir-json#200mir-jsonschema version to 6Cell::swap(mir-jsonside commit is GaloisInc/mir-json@7b67f3e)crucible-miraftermir-jsonchangescrux-mir, get the.rliband.mirpaths for the standard libraries by just listing everything in therlibsdirectory instead of keeping a hard-coded list, since the list of standard libraries changes across Rust versionscrux-mirtests for new standard library patches, and old patches that weren't previously covered by any testscrux-mirgolden test outputs and xfail test reasons