Enum wasmparser::Operator [−][src]
pub enum Operator<'a> {
Unreachable,
Nop,
Block {
ty: Type,
},
Loop {
ty: Type,
},
If {
ty: Type,
},
Else,
End,
Br {
relative_depth: u32,
},
BrIf {
relative_depth: u32,
},
BrTable {
table: BrTable<'a>,
},
Return,
Call {
function_index: u32,
},
CallIndirect {
index: u32,
table_index: u32,
},
Drop,
Select,
GetLocal {
local_index: u32,
},
SetLocal {
local_index: u32,
},
TeeLocal {
local_index: u32,
},
GetGlobal {
global_index: u32,
},
SetGlobal {
global_index: u32,
},
I32Load {
memarg: MemoryImmediate,
},
I64Load {
memarg: MemoryImmediate,
},
F32Load {
memarg: MemoryImmediate,
},
F64Load {
memarg: MemoryImmediate,
},
I32Load8S {
memarg: MemoryImmediate,
},
I32Load8U {
memarg: MemoryImmediate,
},
I32Load16S {
memarg: MemoryImmediate,
},
I32Load16U {
memarg: MemoryImmediate,
},
I64Load8S {
memarg: MemoryImmediate,
},
I64Load8U {
memarg: MemoryImmediate,
},
I64Load16S {
memarg: MemoryImmediate,
},
I64Load16U {
memarg: MemoryImmediate,
},
I64Load32S {
memarg: MemoryImmediate,
},
I64Load32U {
memarg: MemoryImmediate,
},
I32Store {
memarg: MemoryImmediate,
},
I64Store {
memarg: MemoryImmediate,
},
F32Store {
memarg: MemoryImmediate,
},
F64Store {
memarg: MemoryImmediate,
},
I32Store8 {
memarg: MemoryImmediate,
},
I32Store16 {
memarg: MemoryImmediate,
},
I64Store8 {
memarg: MemoryImmediate,
},
I64Store16 {
memarg: MemoryImmediate,
},
I64Store32 {
memarg: MemoryImmediate,
},
MemorySize {
reserved: u32,
},
MemoryGrow {
reserved: u32,
},
I32Const {
value: i32,
},
I64Const {
value: i64,
},
F32Const {
value: Ieee32,
},
F64Const {
value: Ieee64,
},
RefNull,
RefIsNull,
I32Eqz,
I32Eq,
I32Ne,
I32LtS,
I32LtU,
I32GtS,
I32GtU,
I32LeS,
I32LeU,
I32GeS,
I32GeU,
I64Eqz,
I64Eq,
I64Ne,
I64LtS,
I64LtU,
I64GtS,
I64GtU,
I64LeS,
I64LeU,
I64GeS,
I64GeU,
F32Eq,
F32Ne,
F32Lt,
F32Gt,
F32Le,
F32Ge,
F64Eq,
F64Ne,
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,
I32TruncSF32,
I32TruncUF32,
I32TruncSF64,
I32TruncUF64,
I64ExtendSI32,
I64ExtendUI32,
I64TruncSF32,
I64TruncUF32,
I64TruncSF64,
I64TruncUF64,
F32ConvertSI32,
F32ConvertUI32,
F32ConvertSI64,
F32ConvertUI64,
F32DemoteF64,
F64ConvertSI32,
F64ConvertUI32,
F64ConvertSI64,
F64ConvertUI64,
F64PromoteF32,
I32ReinterpretF32,
I64ReinterpretF64,
F32ReinterpretI32,
F64ReinterpretI64,
I32Extend8S,
I32Extend16S,
I64Extend8S,
I64Extend16S,
I64Extend32S,
I32TruncSSatF32,
I32TruncUSatF32,
I32TruncSSatF64,
I32TruncUSatF64,
I64TruncSSatF32,
I64TruncUSatF32,
I64TruncSSatF64,
I64TruncUSatF64,
Wake {
memarg: MemoryImmediate,
},
I32Wait {
memarg: MemoryImmediate,
},
I64Wait {
memarg: MemoryImmediate,
},
I32AtomicLoad {
memarg: MemoryImmediate,
},
I64AtomicLoad {
memarg: MemoryImmediate,
},
I32AtomicLoad8U {
memarg: MemoryImmediate,
},
I32AtomicLoad16U {
memarg: MemoryImmediate,
},
I64AtomicLoad8U {
memarg: MemoryImmediate,
},
I64AtomicLoad16U {
memarg: MemoryImmediate,
},
I64AtomicLoad32U {
memarg: MemoryImmediate,
},
I32AtomicStore {
memarg: MemoryImmediate,
},
I64AtomicStore {
memarg: MemoryImmediate,
},
I32AtomicStore8 {
memarg: MemoryImmediate,
},
I32AtomicStore16 {
memarg: MemoryImmediate,
},
I64AtomicStore8 {
memarg: MemoryImmediate,
},
I64AtomicStore16 {
memarg: MemoryImmediate,
},
I64AtomicStore32 {
memarg: MemoryImmediate,
},
I32AtomicRmwAdd {
memarg: MemoryImmediate,
},
I64AtomicRmwAdd {
memarg: MemoryImmediate,
},
I32AtomicRmw8UAdd {
memarg: MemoryImmediate,
},
I32AtomicRmw16UAdd {
memarg: MemoryImmediate,
},
I64AtomicRmw8UAdd {
memarg: MemoryImmediate,
},
I64AtomicRmw16UAdd {
memarg: MemoryImmediate,
},
I64AtomicRmw32UAdd {
memarg: MemoryImmediate,
},
I32AtomicRmwSub {
memarg: MemoryImmediate,
},
I64AtomicRmwSub {
memarg: MemoryImmediate,
},
I32AtomicRmw8USub {
memarg: MemoryImmediate,
},
I32AtomicRmw16USub {
memarg: MemoryImmediate,
},
I64AtomicRmw8USub {
memarg: MemoryImmediate,
},
I64AtomicRmw16USub {
memarg: MemoryImmediate,
},
I64AtomicRmw32USub {
memarg: MemoryImmediate,
},
I32AtomicRmwAnd {
memarg: MemoryImmediate,
},
I64AtomicRmwAnd {
memarg: MemoryImmediate,
},
I32AtomicRmw8UAnd {
memarg: MemoryImmediate,
},
I32AtomicRmw16UAnd {
memarg: MemoryImmediate,
},
I64AtomicRmw8UAnd {
memarg: MemoryImmediate,
},
I64AtomicRmw16UAnd {
memarg: MemoryImmediate,
},
I64AtomicRmw32UAnd {
memarg: MemoryImmediate,
},
I32AtomicRmwOr {
memarg: MemoryImmediate,
},
I64AtomicRmwOr {
memarg: MemoryImmediate,
},
I32AtomicRmw8UOr {
memarg: MemoryImmediate,
},
I32AtomicRmw16UOr {
memarg: MemoryImmediate,
},
I64AtomicRmw8UOr {
memarg: MemoryImmediate,
},
I64AtomicRmw16UOr {
memarg: MemoryImmediate,
},
I64AtomicRmw32UOr {
memarg: MemoryImmediate,
},
I32AtomicRmwXor {
memarg: MemoryImmediate,
},
I64AtomicRmwXor {
memarg: MemoryImmediate,
},
I32AtomicRmw8UXor {
memarg: MemoryImmediate,
},
I32AtomicRmw16UXor {
memarg: MemoryImmediate,
},
I64AtomicRmw8UXor {
memarg: MemoryImmediate,
},
I64AtomicRmw16UXor {
memarg: MemoryImmediate,
},
I64AtomicRmw32UXor {
memarg: MemoryImmediate,
},
I32AtomicRmwXchg {
memarg: MemoryImmediate,
},
I64AtomicRmwXchg {
memarg: MemoryImmediate,
},
I32AtomicRmw8UXchg {
memarg: MemoryImmediate,
},
I32AtomicRmw16UXchg {
memarg: MemoryImmediate,
},
I64AtomicRmw8UXchg {
memarg: MemoryImmediate,
},
I64AtomicRmw16UXchg {
memarg: MemoryImmediate,
},
I64AtomicRmw32UXchg {
memarg: MemoryImmediate,
},
I32AtomicRmwCmpxchg {
memarg: MemoryImmediate,
},
I64AtomicRmwCmpxchg {
memarg: MemoryImmediate,
},
I32AtomicRmw8UCmpxchg {
memarg: MemoryImmediate,
},
I32AtomicRmw16UCmpxchg {
memarg: MemoryImmediate,
},
I64AtomicRmw8UCmpxchg {
memarg: MemoryImmediate,
},
I64AtomicRmw16UCmpxchg {
memarg: MemoryImmediate,
},
I64AtomicRmw32UCmpxchg {
memarg: MemoryImmediate,
},
}Instructions as defined here.
Variants
UnreachableNopBlockFields of Block
ty: Type |
LoopFields of Loop
ty: Type |
IfFields of If
ty: Type |
ElseEndBrFields of Br
relative_depth: u32 |
BrIfFields of BrIf
relative_depth: u32 |
BrTableFields of BrTable
table: BrTable<'a> |
ReturnCallFields of Call
function_index: u32 |
CallIndirectFields of CallIndirect
index: u32 | |
table_index: u32 |
DropSelectGetLocalFields of GetLocal
local_index: u32 |
SetLocalFields of SetLocal
local_index: u32 |
TeeLocalFields of TeeLocal
local_index: u32 |
GetGlobalFields of GetGlobal
global_index: u32 |
SetGlobalFields of SetGlobal
global_index: u32 |
I32LoadFields of I32Load
memarg: MemoryImmediate |
I64LoadFields of I64Load
memarg: MemoryImmediate |
F32LoadFields of F32Load
memarg: MemoryImmediate |
F64LoadFields of F64Load
memarg: MemoryImmediate |
I32Load8SFields of I32Load8S
memarg: MemoryImmediate |
I32Load8UFields of I32Load8U
memarg: MemoryImmediate |
I32Load16SFields of I32Load16S
memarg: MemoryImmediate |
I32Load16UFields of I32Load16U
memarg: MemoryImmediate |
I64Load8SFields of I64Load8S
memarg: MemoryImmediate |
I64Load8UFields of I64Load8U
memarg: MemoryImmediate |
I64Load16SFields of I64Load16S
memarg: MemoryImmediate |
I64Load16UFields of I64Load16U
memarg: MemoryImmediate |
I64Load32SFields of I64Load32S
memarg: MemoryImmediate |
I64Load32UFields of I64Load32U
memarg: MemoryImmediate |
I32StoreFields of I32Store
memarg: MemoryImmediate |
I64StoreFields of I64Store
memarg: MemoryImmediate |
F32StoreFields of F32Store
memarg: MemoryImmediate |
F64StoreFields of F64Store
memarg: MemoryImmediate |
I32Store8Fields of I32Store8
memarg: MemoryImmediate |
I32Store16Fields of I32Store16
memarg: MemoryImmediate |
I64Store8Fields of I64Store8
memarg: MemoryImmediate |
I64Store16Fields of I64Store16
memarg: MemoryImmediate |
I64Store32Fields of I64Store32
memarg: MemoryImmediate |
MemorySizeFields of MemorySize
reserved: u32 |
MemoryGrowFields of MemoryGrow
reserved: u32 |
I32ConstFields of I32Const
value: i32 |
I64ConstFields of I64Const
value: i64 |
F32ConstFields of F32Const
value: Ieee32 |
F64ConstFields of F64Const
value: Ieee64 |
RefNullRefIsNullI32EqzI32EqI32NeI32LtSI32LtUI32GtSI32GtUI32LeSI32LeUI32GeSI32GeUI64EqzI64EqI64NeI64LtSI64LtUI64GtSI64GtUI64LeSI64LeUI64GeSI64GeUF32EqF32NeF32LtF32GtF32LeF32GeF64EqF64NeF64LtF64GtF64LeF64GeI32ClzI32CtzI32PopcntI32AddI32SubI32MulI32DivSI32DivUI32RemSI32RemUI32AndI32OrI32XorI32ShlI32ShrSI32ShrUI32RotlI32RotrI64ClzI64CtzI64PopcntI64AddI64SubI64MulI64DivSI64DivUI64RemSI64RemUI64AndI64OrI64XorI64ShlI64ShrSI64ShrUI64RotlI64RotrF32AbsF32NegF32CeilF32FloorF32TruncF32NearestF32SqrtF32AddF32SubF32MulF32DivF32MinF32MaxF32CopysignF64AbsF64NegF64CeilF64FloorF64TruncF64NearestF64SqrtF64AddF64SubF64MulF64DivF64MinF64MaxF64CopysignI32WrapI64I32TruncSF32I32TruncUF32I32TruncSF64I32TruncUF64I64ExtendSI32I64ExtendUI32I64TruncSF32I64TruncUF32I64TruncSF64I64TruncUF64F32ConvertSI32F32ConvertUI32F32ConvertSI64F32ConvertUI64F32DemoteF64F64ConvertSI32F64ConvertUI32F64ConvertSI64F64ConvertUI64F64PromoteF32I32ReinterpretF32I64ReinterpretF64F32ReinterpretI32F64ReinterpretI64I32Extend8SI32Extend16SI64Extend8SI64Extend16SI64Extend32SI32TruncSSatF32I32TruncUSatF32I32TruncSSatF64I32TruncUSatF64I64TruncSSatF32I64TruncUSatF32I64TruncSSatF64I64TruncUSatF64WakeFields of Wake
memarg: MemoryImmediate |
I32WaitFields of I32Wait
memarg: MemoryImmediate |
I64WaitFields of I64Wait
memarg: MemoryImmediate |
I32AtomicLoadFields of I32AtomicLoad
memarg: MemoryImmediate |
I64AtomicLoadFields of I64AtomicLoad
memarg: MemoryImmediate |
I32AtomicLoad8UFields of I32AtomicLoad8U
memarg: MemoryImmediate |
I32AtomicLoad16UFields of I32AtomicLoad16U
memarg: MemoryImmediate |
I64AtomicLoad8UFields of I64AtomicLoad8U
memarg: MemoryImmediate |
I64AtomicLoad16UFields of I64AtomicLoad16U
memarg: MemoryImmediate |
I64AtomicLoad32UFields of I64AtomicLoad32U
memarg: MemoryImmediate |
I32AtomicStoreFields of I32AtomicStore
memarg: MemoryImmediate |
I64AtomicStoreFields of I64AtomicStore
memarg: MemoryImmediate |
I32AtomicStore8Fields of I32AtomicStore8
memarg: MemoryImmediate |
I32AtomicStore16Fields of I32AtomicStore16
memarg: MemoryImmediate |
I64AtomicStore8Fields of I64AtomicStore8
memarg: MemoryImmediate |
I64AtomicStore16Fields of I64AtomicStore16
memarg: MemoryImmediate |
I64AtomicStore32Fields of I64AtomicStore32
memarg: MemoryImmediate |
I32AtomicRmwAddFields of I32AtomicRmwAdd
memarg: MemoryImmediate |
I64AtomicRmwAddFields of I64AtomicRmwAdd
memarg: MemoryImmediate |
I32AtomicRmw8UAddFields of I32AtomicRmw8UAdd
memarg: MemoryImmediate |
I32AtomicRmw16UAddFields of I32AtomicRmw16UAdd
memarg: MemoryImmediate |
I64AtomicRmw8UAddFields of I64AtomicRmw8UAdd
memarg: MemoryImmediate |
I64AtomicRmw16UAddFields of I64AtomicRmw16UAdd
memarg: MemoryImmediate |
I64AtomicRmw32UAddFields of I64AtomicRmw32UAdd
memarg: MemoryImmediate |
I32AtomicRmwSubFields of I32AtomicRmwSub
memarg: MemoryImmediate |
I64AtomicRmwSubFields of I64AtomicRmwSub
memarg: MemoryImmediate |
I32AtomicRmw8USubFields of I32AtomicRmw8USub
memarg: MemoryImmediate |
I32AtomicRmw16USubFields of I32AtomicRmw16USub
memarg: MemoryImmediate |
I64AtomicRmw8USubFields of I64AtomicRmw8USub
memarg: MemoryImmediate |
I64AtomicRmw16USubFields of I64AtomicRmw16USub
memarg: MemoryImmediate |
I64AtomicRmw32USubFields of I64AtomicRmw32USub
memarg: MemoryImmediate |
I32AtomicRmwAndFields of I32AtomicRmwAnd
memarg: MemoryImmediate |
I64AtomicRmwAndFields of I64AtomicRmwAnd
memarg: MemoryImmediate |
I32AtomicRmw8UAndFields of I32AtomicRmw8UAnd
memarg: MemoryImmediate |
I32AtomicRmw16UAndFields of I32AtomicRmw16UAnd
memarg: MemoryImmediate |
I64AtomicRmw8UAndFields of I64AtomicRmw8UAnd
memarg: MemoryImmediate |
I64AtomicRmw16UAndFields of I64AtomicRmw16UAnd
memarg: MemoryImmediate |
I64AtomicRmw32UAndFields of I64AtomicRmw32UAnd
memarg: MemoryImmediate |
I32AtomicRmwOrFields of I32AtomicRmwOr
memarg: MemoryImmediate |
I64AtomicRmwOrFields of I64AtomicRmwOr
memarg: MemoryImmediate |
I32AtomicRmw8UOrFields of I32AtomicRmw8UOr
memarg: MemoryImmediate |
I32AtomicRmw16UOrFields of I32AtomicRmw16UOr
memarg: MemoryImmediate |
I64AtomicRmw8UOrFields of I64AtomicRmw8UOr
memarg: MemoryImmediate |
I64AtomicRmw16UOrFields of I64AtomicRmw16UOr
memarg: MemoryImmediate |
I64AtomicRmw32UOrFields of I64AtomicRmw32UOr
memarg: MemoryImmediate |
I32AtomicRmwXorFields of I32AtomicRmwXor
memarg: MemoryImmediate |
I64AtomicRmwXorFields of I64AtomicRmwXor
memarg: MemoryImmediate |
I32AtomicRmw8UXorFields of I32AtomicRmw8UXor
memarg: MemoryImmediate |
I32AtomicRmw16UXorFields of I32AtomicRmw16UXor
memarg: MemoryImmediate |
I64AtomicRmw8UXorFields of I64AtomicRmw8UXor
memarg: MemoryImmediate |
I64AtomicRmw16UXorFields of I64AtomicRmw16UXor
memarg: MemoryImmediate |
I64AtomicRmw32UXorFields of I64AtomicRmw32UXor
memarg: MemoryImmediate |
I32AtomicRmwXchgFields of I32AtomicRmwXchg
memarg: MemoryImmediate |
I64AtomicRmwXchgFields of I64AtomicRmwXchg
memarg: MemoryImmediate |
I32AtomicRmw8UXchgFields of I32AtomicRmw8UXchg
memarg: MemoryImmediate |
I32AtomicRmw16UXchgFields of I32AtomicRmw16UXchg
memarg: MemoryImmediate |
I64AtomicRmw8UXchgFields of I64AtomicRmw8UXchg
memarg: MemoryImmediate |
I64AtomicRmw16UXchgFields of I64AtomicRmw16UXchg
memarg: MemoryImmediate |
I64AtomicRmw32UXchgFields of I64AtomicRmw32UXchg
memarg: MemoryImmediate |
I32AtomicRmwCmpxchgFields of I32AtomicRmwCmpxchg
memarg: MemoryImmediate |
I64AtomicRmwCmpxchgFields of I64AtomicRmwCmpxchg
memarg: MemoryImmediate |
I32AtomicRmw8UCmpxchgFields of I32AtomicRmw8UCmpxchg
memarg: MemoryImmediate |
I32AtomicRmw16UCmpxchgFields of I32AtomicRmw16UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw8UCmpxchgFields of I64AtomicRmw8UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw16UCmpxchgFields of I64AtomicRmw16UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw32UCmpxchgFields of I64AtomicRmw32UCmpxchg
memarg: MemoryImmediate |