Module cranelift_codegen::ir
source · Expand description
Representation of Cranelift IR functions.
Re-exports
pub use crate::ir::constant::ConstantData;
pub use crate::ir::constant::ConstantPool;
pub use crate::ir::dfg::DataFlowGraph;
pub use crate::ir::dfg::ValueDef;
pub use crate::ir::entities::Block;
pub use crate::ir::entities::Constant;
pub use crate::ir::entities::FuncRef;
pub use crate::ir::entities::GlobalValue;
pub use crate::ir::entities::Heap;
pub use crate::ir::entities::Immediate;
pub use crate::ir::entities::Inst;
pub use crate::ir::entities::JumpTable;
pub use crate::ir::entities::SigRef;
pub use crate::ir::entities::StackSlot;
pub use crate::ir::entities::Table;
pub use crate::ir::entities::Value;
pub use crate::ir::function::DisplayFunctionAnnotations;
pub use crate::ir::function::Function;
pub use crate::ir::instructions::InstructionData;
pub use crate::ir::instructions::Opcode;
pub use crate::ir::instructions::ValueList;
pub use crate::ir::instructions::ValueListPool;
pub use crate::ir::instructions::VariableArgs;
pub use crate::ir::jumptable::JumpTableData;
pub use crate::ir::layout::Layout;
pub use crate::ir::stackslot::StackSlotData;
pub use crate::ir::stackslot::StackSlotKind;
pub use crate::ir::stackslot::StackSlots;
pub use crate::ir::types::Type;
Modules
Condition codes for the Cranelift code generator.
Constants
Data flow graph tracking Instructions, Values, and blocks.
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:Instruction builder that replaces an existing instruction.
Function signature.
A source location.
Information about a table declaration.
Marked with a label value.
A label of a Value.
Enums
Function argument extension options.
The special purpose of a function argument.
Describes the arithmetic operation in an atomic memory read-modify-write operation.
Endianness of a memory access.
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 particular location for a value.
The name of a runtime library routine.
A trap code describing the reason for a trap.
Value label assignements: label starts or value aliases.
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 the probestack function in
func
.Type Definitions
Map of jump tables.
Source locations for instructions.