Actual memory.rs TypeId globals and va_list_map. The maps start empty; allocation IDs come from the same MemoryState reserve supply as every other allocation. No Rust memory is allocated for symbolic TypeId/VaList entries. provenance_gc.rs::VisitProvenance(MiriInterpCx) visits alloc_map and machine, not rustc memory.va_list_map: these maps deliberately add no GC roots.
- typeIds : Array (Memory.AllocId × MIR.TyId)
- vaLists : Array (Memory.AllocId × List (RuntimePlace Memory.Provenance))
Instances For
def
Miri.Interpreter.IntrinsicSymbolsMachine.reserveTypeId
{U K : Type}
(registry : Access U)
(ty : MIR.TyId)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Miri.Interpreter.IntrinsicSymbolsMachine.globalTypeId
{U K : Type}
(registry : Access U)
(imported : Memory.AllocId → MachineHooks.M K U (Option MIR.TyId))
(id : Memory.AllocId)
:
MachineHooks.M K U (Option MIR.TyId)
Equations
- One or more equations did not get rendered due to their size.
Instances For
- hasErasableRegions : C → MIR.TyId → MachineHooks.M K U Bool
- typeHash : C → MIR.TyId → MachineHooks.M K U ABI.U128
- u128Layout : C → MachineHooks.M K U LocalLayout
- unitLayout : C → MachineHooks.M K U LocalLayout
- importedTypeId : Memory.AllocId → MachineHooks.M K U (Option MIR.TyId)
Instances For
def
Miri.Interpreter.IntrinsicSymbolsMachine.typeId
{K U C O : Type}
[DecidableEq K]
(leaves : TypeIdLeaves K U C)
(registry : Access U)
(access : PlaceMachine.AccessConfig K U)
(functions : FunctionPointers.Hooks K U O)
(operands : OperandMachine.Hooks K U C)
(copy : PlaceCopyHooks Memory.Provenance (MachineHooks.State K U) C)
:
Root-pointer tag/address effects execute before the hash-fragment offset is restored. TypeId allocations have source special address zero.
Equations
- One or more equations did not get rendered due to their size.
Instances For
- layoutOf : C → MIR.TyId → MachineHooks.M K U LocalLayout
- typeInfo : C → MIR.TyId → MachineHooks.M K U VaTypeInfo
- identicalCTypes : C → MIR.TyId → MIR.TyId → MachineHooks.M K U Bool
- isCVoid : C → MIR.TyId → MachineHooks.M K U Bool
- vaListFields : C → MIR.TyId → MachineHooks.M K U (Array MIR.TyId)
- isRawPointer : C → MIR.TyId → MachineHooks.M K U Bool
Instances For
def
Miri.Interpreter.IntrinsicSymbolsMachine.varArgs
{K U C O : Type}
[DecidableEq K]
(leaves : VarArgsLeaves K U C)
(registry : Access U)
(access : PlaceMachine.AccessConfig K U)
(arithmetic : Memory.PointerArithmetic)
(functions : FunctionPointers.Hooks K U O)
(operands : OperandMachine.Hooks K U C)
(copy : PlaceCopyHooks Memory.Provenance (MachineHooks.State K U) C)
:
Equations
- One or more equations did not get rendered due to their size.