[−][src]Enum wasm_encoder::Instruction
pub enum Instruction<'a> { Unreachable, Nop, Block(BlockType), Loop(BlockType), If(BlockType), Else, End, Br(u32), BrIf(u32), BrTable(&'a [u32], u32), Return, Call(u32), CallIndirect { ty: u32, table: u32, }, Drop, Select, LocalGet(u32), LocalSet(u32), LocalTee(u32), GlobalGet(u32), GlobalSet(u32), I32Load(MemArg), I64Load(MemArg), F32Load(MemArg), F64Load(MemArg), I32Load8_S(MemArg), I32Load8_U(MemArg), I32Load16_S(MemArg), I32Load16_U(MemArg), I64Load8_S(MemArg), I64Load8_U(MemArg), I64Load16_S(MemArg), I64Load16_U(MemArg), I64Load32_S(MemArg), I64Load32_U(MemArg), I32Store(MemArg), I64Store(MemArg), F32Store(MemArg), F64Store(MemArg), I32Store8(MemArg), I32Store16(MemArg), I64Store8(MemArg), I64Store16(MemArg), I64Store32(MemArg), MemorySize(u32), MemoryGrow(u32), MemoryInit { mem: u32, data: u32, }, DataDrop(u32), MemoryCopy { src: u32, dst: u32, }, MemoryFill(u32), I32Const(i32), I64Const(i64), F32Const(f32), F64Const(f64), I32Eqz, I32Eq, I32Neq, I32LtS, I32LtU, I32GtS, I32GtU, I32LeS, I32LeU, I32GeS, I32GeU, I64Eqz, I64Eq, I64Neq, I64LtS, I64LtU, I64GtS, I64GtU, I64LeS, I64LeU, I64GeS, I64GeU, F32Eq, F32Neq, F32Lt, F32Gt, F32Le, F32Ge, F64Eq, F64Neq, F64Lt, F64Gt, F64Le, F64Ge, I32Clz, I32Ctz, I32Popcnt, I32Add, I32Sub, I32Mul, I32DivS, I32DivU, I32RemS, I32RemU, I32And, I32Or, I32Xor, I32Shl, I32ShrS, I32ShrU, I32Rotl, I32Rotr, I64Clz, I64Ctz, I64Popcnt, I64Add, I64Sub, I64Mul, I64DivS, I64DivU, I64RemS, I64RemU, I64And, I64Or, I64Xor, I64Shl, I64ShrS, I64ShrU, I64Rotl, I64Rotr, F32Abs, F32Neg, F32Ceil, F32Floor, F32Trunc, F32Nearest, F32Sqrt, F32Add, F32Sub, F32Mul, F32Div, F32Min, F32Max, F32Copysign, F64Abs, F64Neg, F64Ceil, F64Floor, F64Trunc, F64Nearest, F64Sqrt, F64Add, F64Sub, F64Mul, F64Div, F64Min, F64Max, F64Copysign, I32WrapI64, I32TruncF32S, I32TruncF32U, I32TruncF64S, I32TruncF64U, I64ExtendI32S, I64ExtendI32U, I64TruncF32S, I64TruncF32U, I64TruncF64S, I64TruncF64U, F32ConvertI32S, F32ConvertI32U, F32ConvertI64S, F32ConvertI64U, F32DemoteF64, F64ConvertI32S, F64ConvertI32U, F64ConvertI64S, F64ConvertI64U, F64PromoteF32, I32ReinterpretF32, I64ReinterpretF64, F32ReinterpretI32, F64ReinterpretI64, I32Extend8S, I32Extend16S, I64Extend8S, I64Extend16S, I64Extend32S, I32TruncSatF32S, I32TruncSatF32U, I32TruncSatF64S, I32TruncSatF64U, I64TruncSatF32S, I64TruncSatF32U, I64TruncSatF64S, I64TruncSatF64U, V128Const(i128), TypedSelect(ValType), RefNull(ValType), RefIsNull, RefFunc(u32), TableInit { segment: u32, table: u32, }, ElemDrop { segment: u32, }, TableFill { table: u32, }, TableSet { table: u32, }, TableGet { table: u32, }, TableGrow { table: u32, }, TableSize { table: u32, }, TableCopy { src: u32, dst: u32, }, }
WebAssembly instructions.
Variants (Non-exhaustive)
Block(BlockType)
Loop(BlockType)
If(BlockType)
Br(u32)
BrIf(u32)
Call(u32)
LocalGet(u32)
LocalSet(u32)
LocalTee(u32)
GlobalGet(u32)
GlobalSet(u32)
I32Load(MemArg)
I64Load(MemArg)
F32Load(MemArg)
F64Load(MemArg)
I32Load8_S(MemArg)
I32Load8_U(MemArg)
I32Load16_S(MemArg)
I32Load16_U(MemArg)
I64Load8_S(MemArg)
I64Load8_U(MemArg)
I64Load16_S(MemArg)
I64Load16_U(MemArg)
I64Load32_S(MemArg)
I64Load32_U(MemArg)
I32Store(MemArg)
I64Store(MemArg)
F32Store(MemArg)
F64Store(MemArg)
I32Store8(MemArg)
I32Store16(MemArg)
I64Store8(MemArg)
I64Store16(MemArg)
I64Store32(MemArg)
MemorySize(u32)
MemoryGrow(u32)
DataDrop(u32)
MemoryFill(u32)
I32Const(i32)
I64Const(i64)
F32Const(f32)
F64Const(f64)
V128Const(i128)
TypedSelect(ValType)
RefNull(ValType)
RefFunc(u32)
Fields of ElemDrop
segment: u32
Fields of TableFill
table: u32
Fields of TableSet
table: u32
Fields of TableGet
table: u32
Fields of TableGrow
table: u32
Fields of TableSize
table: u32
Trait Implementations
impl<'a> Clone for Instruction<'a>
[src][+]
impl<'a> Debug for Instruction<'a>
[src][+]
Auto Trait Implementations
impl<'a> RefUnwindSafe for Instruction<'a>
[src]
impl<'a> Send for Instruction<'a>
[src]
impl<'a> Sync for Instruction<'a>
[src]
impl<'a> Unpin for Instruction<'a>
[src]
impl<'a> UnwindSafe for Instruction<'a>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,