Structs§
- BoxArray
Iter - opencoder.py: BoxArrayIter — iterates encoded box arrays in snapshot data, decoding tagged values.
- CutTrace
- opencoder.py: CutTrace — supports cutting traces at breakpoints for bridge compilation.
- Snapshot
- A snapshot captures the interpreter state at a guard/exit point. opencoder.py: Snapshot
- Snapshot
Iterator - opencoder.py: SnapshotIterator — iterates snapshot values in bottom-up frame order (inner frame first).
- Snapshot
Storage - Snapshot storage for a trace. opencoder.py: Trace._snapshot_data, _snapshot_array_data
- TopDown
Snapshot Iterator - opencoder.py: TopDownSnapshotIterator — iterates snapshots from outermost to innermost frame (top-down order). Used by resume data construction which processes frames from the outermost caller to the innermost callee.
- TopSnapshot
- Top-level snapshot (includes vable/vref tracking). opencoder.py: TopSnapshot
- Trace
Iterator - opencoder.py: TraceIterator — iterates operations in a trace with dead range tracking.
- Trace
Record Buffer
Enums§
- Decoded
Snapshot Value - Decoded value from a snapshot.
Constants§
- INIT_
SIZE - Initial trace buffer size.
- MAX_
VALUE - MIN_
VALUE - RPython compatibility numeric limits for signed varints in this model.
- SMALL_
INT_ START - RPython compatibility bounds for small int tagging.
- SMALL_
INT_ STOP - SNAPSHOT_
PREV_ COMES_ NEXT - SNAPSHOT_
PREV_ NEEDS_ PATCHING - RPython compatibility sentinel values for snapshot linked lists.
- SNAPSHOT_
PREV_ NONE - TAGBOX
- TAGCONSTOTHER
- TAGCONSTPTR
- TAGINT
- Tag constants for snapshot encoding. opencoder.py: TAGINT, TAGCONSTPTR, TAGCONSTOTHER, TAGBOX
- TAGMASK
- RPython compatibility constants.
- TAGSHIFT
- TAG_
MASK - Mask for tag extraction.
- TAG_
SHIFT - Number of tag bits.
Functions§
- combine_
uint - decode_
trace - Decode a Trace from a compact byte buffer.
- decode_
varint - Decode a varint from a byte slice. Returns (value, bytes_consumed).
- decode_
varint_ signed - Decode a signed varint (zigzag encoding). Returns (value, bytes_consumed). opencoder.py: decode_varint_signed
- encode_
trace - Encode a Trace into a compact byte buffer.
- encode_
varint - Encode a u64 as a variable-length integer (LEB128).
- encode_
varint_ signed - Encode a signed i64 as a varint (zigzag encoding). opencoder.py: encode_varint_signed
- skip_
varint_ signed - tag
- Encode a tagged value for snapshot storage. opencoder.py: tag(kind, value)
- unpack_
uint - untag
- Decode a tagged value from snapshot storage. opencoder.py: untag(tagged) -> (kind, value)
- varint_
only_ decode
Type Aliases§
- Trace
- opencoder.py: Trace — compact trace recording buffer.