pub use rustc_const_eval::interpret;
pub use rustc_const_eval::interpret::AllocMap;
pub use rustc_const_eval::interpret::PlaceTy;
pub use rustc_const_eval::interpret::Provenance as _;
pub use crate::intrinsics::EvalContextExt as _;
pub use crate::shims::env::EvalContextExt as _;
pub use crate::shims::foreign_items::EvalContextExt as _;
pub use crate::shims::os_str::EvalContextExt as _;
pub use crate::shims::panic::EvalContextExt as _;
pub use crate::shims::time::EvalContextExt as _;
pub use crate::alloc_addresses::EvalContextExt as _;
pub use crate::borrow_tracker::stacked_borrows::EvalContextExt as _;
pub use crate::borrow_tracker::tree_borrows::EvalContextExt as _;
pub use crate::borrow_tracker::EvalContextExt as _;
pub use crate::concurrency::data_race::EvalContextExt as _;
pub use crate::concurrency::init_once::EvalContextExt as _;
pub use crate::concurrency::sync::EvalContextExt as _;
pub use crate::concurrency::thread::EvalContextExt as _;
pub use crate::diagnostics::EvalContextExt as _;
pub use crate::helpers::EvalContextExt as _;
pub use crate::operator::EvalContextExt as _;
pub use crate::provenance_gc::EvalContextExt as _;
pub use rustc_const_eval::interpret::*;
Extra per-allocation data
Tracking pointer provenance
Holds all of the relevant data for when unwinding hits a try
frame.
A monotone clock used for Instant
simulation.
0 is used to indicate that the id was not yet assigned and,
therefore, is not a valid identifier.
Type of dynamic symbols (for dlsym
et al)
Extra data stored with each stack frame
0 is used to indicate that the id was not yet assigned and,
therefore, is not a valid identifier.
An item in the per-location borrow stack.
Allocation bytes that explicitly handle the layout of the data they’re storing.
This is necessary to interface with native code that accesses the program store in Miri.
Configuration needed to spawn a Miri instance.
The machine itself.
0 is used to indicate that the id was not yet assigned and,
therefore, is not a valid identifier.
Precomputed layouts of primitive types
0 is used to indicate that the id was not yet assigned and,
therefore, is not a valid identifier.
Extra per-location state.
Extra per-allocation state.
A thread identifier.
A set of threads.
Tree structure with both parents and children since we want to be
able to traverse the tree efficiently in both directions.
Indicates which kind of access is being performed.
Valid atomic fence orderings, subset of atomic::Ordering.
Valid atomic read orderings, subset of atomic::Ordering.
Valid atomic read-write orderings, alias of atomic::Ordering (not non-exhaustive).
Valid atomic write orderings, subset of atomic::Ordering.
Keeps track of what the thread is blocked on.
Which borrow tracking method to use
A specific moment in time.
What needs to be done after emulating an item (a shim or an intrinsic) is done.
Extra memory kinds
Miri specific diagnostics
Indicates which permission is granted (by this item to some pointers)
Pointer provenance.
The “extra” information a pointer has over a regular AllocId.
Policy on whether to recurse into fields to retag
Details of premature program termination.