Struct cranelift_codegen_meta::shared::immediates::Immediates
source · pub(crate) struct Immediates {
pub imm64: OperandKind,
pub uimm8: OperandKind,
pub uimm128: OperandKind,
pub pool_constant: OperandKind,
pub offset32: OperandKind,
pub ieee32: OperandKind,
pub ieee64: OperandKind,
pub intcc: OperandKind,
pub floatcc: OperandKind,
pub memflags: OperandKind,
pub trapcode: OperandKind,
pub atomic_rmw_op: OperandKind,
}
Fields§
§imm64: OperandKind
A 64-bit immediate integer operand.
This type of immediate integer can interact with SSA values with any IntType type.
uimm8: OperandKind
An unsigned 8-bit immediate integer operand.
This small operand is used to indicate lane indexes in SIMD vectors and immediate bit counts on shift instructions.
uimm128: OperandKind
An unsigned 128-bit immediate integer operand.
This operand is used to pass entire 128-bit vectors as immediates to instructions like const.
pool_constant: OperandKind
A constant stored in the constant pool.
This operand is used to pass constants to instructions like vconst while storing the actual bytes in the constant pool.
offset32: OperandKind
A 32-bit immediate signed offset.
This is used to represent an immediate address offset in load/store instructions.
ieee32: OperandKind
A 32-bit immediate floating point operand.
IEEE 754-2008 binary32 interchange format.
ieee64: OperandKind
A 64-bit immediate floating point operand.
IEEE 754-2008 binary64 interchange format.
intcc: OperandKind
A condition code for comparing integer values.
This enumerated operand kind is used for the icmp
instruction and corresponds to the
condcodes::IntCC` Rust type.
floatcc: OperandKind
A condition code for comparing floating point values.
This enumerated operand kind is used for the fcmp
instruction and corresponds to the
condcodes::FloatCC
Rust type.
memflags: OperandKind
Flags for memory operations like load
and store
.
trapcode: OperandKind
A trap code indicating the reason for trapping.
The Rust enum type also has a User(u16)
variant for user-provided trap codes.
atomic_rmw_op: OperandKind
A code indicating the arithmetic operation to perform in an atomic_rmw memory access.