Module cranelift_codegen::ir
source · Expand description
Representation of Cranelift IR functions.
Re-exports
pub use ir::dfg::DataFlowGraph;
pub use ir::dfg::ValueDef;
pub use ir::entities::Ebb;
pub use ir::entities::FuncRef;
pub use ir::entities::GlobalValue;
pub use ir::entities::Heap;
pub use ir::entities::Inst;
pub use ir::entities::JumpTable;
pub use ir::entities::SigRef;
pub use ir::entities::StackSlot;
pub use ir::entities::Table;
pub use ir::entities::Value;
pub use ir::function::Function;
pub use ir::instructions::InstructionData;
pub use ir::instructions::Opcode;
pub use ir::instructions::ValueList;
pub use ir::instructions::ValueListPool;
pub use ir::instructions::VariableArgs;
pub use ir::jumptable::JumpTableData;
pub use ir::layout::Layout;
pub use ir::stackslot::StackSlotData;
pub use ir::stackslot::StackSlotKind;
pub use ir::stackslot::StackSlots;
pub use ir::types::Type;
Modules
Condition codes for the Cranelift code generator.
Data flow graph tracking Instructions, Values, and EBBs.
Cranelift IR entity references.
Intermediate representation of a function.
Immediate operands for Cranelift instructions
Instruction formats and opcodes.
Jump table representation.
Function layout.
Stack slots.
Common types for the Cranelift code generator.
Structs
Function parameter or return value descriptor.
An external function.
Information about a heap declaration.
Builder that inserts an instruction at the current position.
Flags for memory operations like load/store.
A
ProgramPoint
represents a position in a function where the live range of an SSA value can
begin or end. It can be either:Function signature.
A source location.
Information about a table declaration.
Enums
Function argument extension options.
Function argument location.
The special purpose of a function argument.
An expanded program point directly exposes the variants, but takes twice the space to
represent.
The name of an external is either a reference to a user-defined symbol
table, or a short sequence of ascii bytes so that test cases do not have
to keep track of a symbol table.
Information about a global value declaration.
Style of heap including style-specific information.
The name of a runtime library routine.
A trap code describing the reason for a trap.
Value location.
Traits
Convenience methods for building instructions.
Base trait for instruction builders.
Base trait for instruction inserters.
Context for ordering program points.
Functions
Get a function reference for
libcall
in func
, following the signature
for inst
.Get a function reference for the probestack function in
func
.Type Definitions
Code offsets for EBBs.
Map of instruction encodings.
Code offsets for Jump Tables.
Map of jump tables.
Source locations for instructions.
Map of value locations.