Module ir

Source
Expand description

ir contains the intermediate representation (IR) that programs using this crate interface with, as well as a builder struct to create the intermediate representation.

Structs§

BasicBlockId
BasicBlockId represents a reference to a basic block in an IR function. See ModuleBuilder::push_block for details on what a basic block is.
FunctionId
FunctionId represents a reference to a function in IR.
Module
Module represents a module of SSA intermediate representation.
ModuleBuilder
ModuleBuilder is used to build a module.
ModuleCreationError
ModuleCreationError represents an error in module creation.
Value
Value represents a reference to a value in an IR function.
VariableId
VariableId represents a reference to a variable in an IR function.

Enums§

Linkage
Linkage is the linkage for a given [Function].
ModuleCreationErrorType
ModuleCreationErrorType represents an error in module creation.
Operation
Operation is an operation that can be performed by the IR.
Terminator
Terminator terminates a given basic block. For information on basic blocks, see ModuleBuilder::push_block.
Type
Type represents a type in the IR.

Traits§

ToIntegerOperation
ToIntegerOperation converts the given value into an integer operation.