Modules§
Macros§
- build_
static_ dispatch_ table_ jam_ v1 - build_
static_ dispatch_ table_ latest32 - build_
static_ dispatch_ table_ latest64 - build_
static_ dispatch_ table_ revive_ v1
Structs§
- Frame
Info - ISA_
JamV1 - ISA_
Latest32 - ISA_
Latest64 - ISA_
Revive V1 - Imports
- Imports
Iter - Instruction
Format - Instructions
- Jump
Table - Jump
Table Iter - Line
Program - A line program state machine.
- Parsed
Instruction - Program
Blob - A partially deserialized PolkaVM program.
- Program
Counter - Program
Export - Program
Memory Info - Program
Parse Error - Program
Parts - Program
Symbol - RawReg
- Region
Info - Debug information about a given region of bytecode.
Enums§
- Estimate
Interpreter Memory Usage Args - Frame
Kind - Instruction
- Instruction
SetKind - Line
Program Op - Opcode
- Reg
- Source
Location - The source location.
Constants§
- BITMASK_
MAX - BLOB_
LEN_ OFFSET - BLOB_
LEN_ SIZE - BLOB_
MAGIC - The magic bytes with which every program blob must start with.
- INTERPRETER_
CACHE_ ENTRY_ SIZE - INTERPRETER_
CACHE_ RESERVED_ ENTRIES - INTERPRETER_
FLATMAP_ ENTRY_ SIZE - MAX_
INSTRUCTION_ LENGTH - SECTION_
CODE_ AND_ JUMP_ TABLE - SECTION_
END_ OF_ FILE - SECTION_
EXPORTS - SECTION_
IMPORTS - SECTION_
MEMORY_ CONFIG - SECTION_
OPT_ DEBUG_ LINE_ PROGRAMS - SECTION_
OPT_ DEBUG_ LINE_ PROGRAM_ RANGES - SECTION_
OPT_ DEBUG_ STRINGS - SECTION_
RO_ DATA - SECTION_
RW_ DATA - VERSION_
DEBUG_ LINE_ PROGRAM_ V1
Traits§
- Instruction
Set - Instruction
Visitor - Opcode
Visitor - The lowest level visitor; dispatches directly on opcode numbers.
- Parsing
Visitor
Functions§
- find_
start_ of_ basic_ block - get_
bit_ for_ offset - interpreter_
calculate_ cache_ num_ entries - interpreter_
calculate_ cache_ size - is_
jump_ target_ valid - Returns whether a jump to a given
offsetis allowed. - read_
args_ imm - read_
args_ imm2 - read_
args_ offset - read_
args_ reg_ imm - read_
args_ reg_ imm2 - read_
args_ reg_ imm64 - read_
args_ reg_ imm_ offset - read_
args_ regs2 - read_
args_ regs3 - read_
args_ regs2_ imm - read_
args_ regs2_ imm2 - read_
args_ regs2_ offset
Type Aliases§
- BlobLen
- The blob length is the length of the blob itself encoded as an 64bit LE integer. By embedding this metadata into the header, program blobs stay opaque, however this information can still easily be retrieved. Found at offset 5 after the magic bytes and version number.