Skip to main content

Module mir

Module mir 

Source
Expand description

Mid-level Intermediate Representation (MIR).

MIR is an SSA-form IR that sits between HIR and EVM bytecode.

Structs§

BasicBlock
A basic block in the MIR.
BlockId
A unique identifier for a basic block in the MIR.
DataSegment
A data segment in the module.
Function
A function in the MIR.
FunctionAttributes
Function attributes.
FunctionBuilder
A builder for constructing MIR functions.
FunctionId
A unique identifier for a function in the MIR.
ImmutableSlot
An immutable value staged in constructor scratch memory and patched into the runtime code’s immutable placeholders at deploy time.
InstId
A unique identifier for an instruction in the MIR.
Instruction
An instruction in the MIR.
InstructionMetadata
Extra information attached to a MIR instruction by lowering or analysis passes.
Module
A MIR module representing a compiled contract.
ParseError
An error produced while parsing textual MIR.
StorageSlot
A storage slot in the contract.
ValueId
A unique identifier for a value in the MIR.

Enums§

EffectKind
Conservative side-effect class for an instruction.
Immediate
An immediate constant value.
InstKind
The kind of an instruction.
MemoryRegion
A coarse memory region understood by MIR analyses.
MirType
Types used in MIR.
StorageAlias
A conservative storage alias key.
Terminator
A block terminator instruction.
Value
An SSA value in the MIR.

Constants§

IMMUTABLE_WORD_SIZE
Current immutable staging and placeholder width.

Functions§

parse_function
Parses a single textual MIR function.
parse_module
Parses a textual MIR module.