Enum cranelift_codegen::ir::instructions::InstructionImms
source · pub enum InstructionImms {
Show 40 variants
AtomicCas {
opcode: Opcode,
flags: MemFlags,
},
AtomicRmw {
opcode: Opcode,
flags: MemFlags,
op: AtomicRmwOp,
},
Binary {
opcode: Opcode,
},
BinaryImm64 {
opcode: Opcode,
imm: Imm64,
},
BinaryImm8 {
opcode: Opcode,
imm: Uimm8,
},
Branch {
opcode: Opcode,
destination: Block,
},
BranchTable {
opcode: Opcode,
destination: Block,
table: JumpTable,
},
Call {
opcode: Opcode,
func_ref: FuncRef,
},
CallIndirect {
opcode: Opcode,
sig_ref: SigRef,
},
CondTrap {
opcode: Opcode,
code: TrapCode,
},
DynamicStackLoad {
opcode: Opcode,
dynamic_stack_slot: DynamicStackSlot,
},
DynamicStackStore {
opcode: Opcode,
dynamic_stack_slot: DynamicStackSlot,
},
FloatCompare {
opcode: Opcode,
cond: FloatCC,
},
FuncAddr {
opcode: Opcode,
func_ref: FuncRef,
},
HeapAddr {
opcode: Opcode,
heap: Heap,
offset: Uimm32,
size: Uimm8,
},
HeapLoad {
opcode: Opcode,
heap_imm: HeapImm,
},
HeapStore {
opcode: Opcode,
heap_imm: HeapImm,
},
IntAddTrap {
opcode: Opcode,
code: TrapCode,
},
IntCompare {
opcode: Opcode,
cond: IntCC,
},
IntCompareImm {
opcode: Opcode,
cond: IntCC,
imm: Imm64,
},
Jump {
opcode: Opcode,
destination: Block,
},
Load {
opcode: Opcode,
flags: MemFlags,
offset: Offset32,
},
LoadNoOffset {
opcode: Opcode,
flags: MemFlags,
},
MultiAry {
opcode: Opcode,
},
NullAry {
opcode: Opcode,
},
Shuffle {
opcode: Opcode,
imm: Immediate,
},
StackLoad {
opcode: Opcode,
stack_slot: StackSlot,
offset: Offset32,
},
StackStore {
opcode: Opcode,
stack_slot: StackSlot,
offset: Offset32,
},
Store {
opcode: Opcode,
flags: MemFlags,
offset: Offset32,
},
StoreNoOffset {
opcode: Opcode,
flags: MemFlags,
},
TableAddr {
opcode: Opcode,
table: Table,
offset: Offset32,
},
Ternary {
opcode: Opcode,
},
TernaryImm8 {
opcode: Opcode,
imm: Uimm8,
},
Trap {
opcode: Opcode,
code: TrapCode,
},
Unary {
opcode: Opcode,
},
UnaryConst {
opcode: Opcode,
constant_handle: Constant,
},
UnaryGlobalValue {
opcode: Opcode,
global_value: GlobalValue,
},
UnaryIeee32 {
opcode: Opcode,
imm: Ieee32,
},
UnaryIeee64 {
opcode: Opcode,
imm: Ieee64,
},
UnaryImm {
opcode: Opcode,
imm: Imm64,
},
}
Variants§
AtomicCas
AtomicRmw
Binary
BinaryImm64
BinaryImm8
Branch
BranchTable
Call
CallIndirect
CondTrap
DynamicStackLoad
DynamicStackStore
FloatCompare
FuncAddr
HeapAddr
HeapLoad
HeapStore
IntAddTrap
IntCompare
IntCompareImm
Jump
Load
LoadNoOffset
MultiAry
NullAry
Shuffle
StackLoad
StackStore
Store
StoreNoOffset
TableAddr
Ternary
TernaryImm8
Trap
Unary
UnaryConst
UnaryGlobalValue
UnaryIeee32
UnaryIeee64
UnaryImm
Implementations§
source§impl InstructionImms
impl InstructionImms
sourcepub fn with_args(
&self,
values: &[Value],
value_list: &mut ValueListPool
) -> InstructionData
pub fn with_args( &self, values: &[Value], value_list: &mut ValueListPool ) -> InstructionData
Convert an InstructionImms
into an InstructionData
by adding args.
Trait Implementations§
source§impl Clone for InstructionImms
impl Clone for InstructionImms
source§fn clone(&self) -> InstructionImms
fn clone(&self) -> InstructionImms
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for InstructionImms
impl Debug for InstructionImms
source§impl From<&InstructionData> for InstructionImms
impl From<&InstructionData> for InstructionImms
source§fn from(data: &InstructionData) -> InstructionImms
fn from(data: &InstructionData) -> InstructionImms
Convert an InstructionData
into an InstructionImms
.
source§impl Hash for InstructionImms
impl Hash for InstructionImms
source§impl PartialEq<InstructionImms> for InstructionImms
impl PartialEq<InstructionImms> for InstructionImms
source§fn eq(&self, other: &InstructionImms) -> bool
fn eq(&self, other: &InstructionImms) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for InstructionImms
impl Eq for InstructionImms
impl StructuralEq for InstructionImms
impl StructuralPartialEq for InstructionImms
Auto Trait Implementations§
impl RefUnwindSafe for InstructionImms
impl Send for InstructionImms
impl Sync for InstructionImms
impl Unpin for InstructionImms
impl UnwindSafe for InstructionImms
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.