Expand description
Symbolic VM state types.
Core data structures that represent the symbolic execution state:
VmValue (symbolic value with invariants), Allocation (memory object),
and VmState (the full execution state at a program point).
Structsยง
- AllocId
- Unique identifier for a heap or stack allocation.
- Allocation
- A memory allocation (stack or heap).
- Byte
Info ๐ - Per-byte symbolic state at a concrete offset in an allocation.
- Contract
Flags ๐ - One-shot execution/contract flags accumulated while stepping a path.
- Inline
Frame ๐ - A saved caller context pushed during cross-function inline. Nested
inlining (a callee that itself inlines another callee) pushes multiple
frames; a single
Optionslot would clobber the outer callerโs context on the inner exit, so a stack is required. - Provenance
- Pointer provenance: which allocation and at what byte offset.
- Value
Invariants - Known invariants about a symbolic value.
- VmState
- The full symbolic execution state at a program point.
- VmValue
- A symbolic value tracked by the VM.