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, }, CurrentMemory { reserved: u32, }, GrowMemory { reserved: u32, }, I32Const { value: i32, }, I64Const { value: i64, }, F32Const { value: Ieee32, }, F64Const { value: Ieee64, }, 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
Unreachable
Nop
Block
Fields of Block
ty: Type |
Loop
Fields of Loop
ty: Type |
If
Fields of If
ty: Type |
Else
End
Br
Fields of Br
relative_depth: u32 |
BrIf
Fields of BrIf
relative_depth: u32 |
BrTable
Fields of BrTable
table: BrTable<'a> |
Return
Call
Fields of Call
function_index: u32 |
CallIndirect
Fields of CallIndirect
index: u32 | |
table_index: u32 |
Drop
Select
GetLocal
Fields of GetLocal
local_index: u32 |
SetLocal
Fields of SetLocal
local_index: u32 |
TeeLocal
Fields of TeeLocal
local_index: u32 |
GetGlobal
Fields of GetGlobal
global_index: u32 |
SetGlobal
Fields of SetGlobal
global_index: u32 |
I32Load
Fields of I32Load
memarg: MemoryImmediate |
I64Load
Fields of I64Load
memarg: MemoryImmediate |
F32Load
Fields of F32Load
memarg: MemoryImmediate |
F64Load
Fields of F64Load
memarg: MemoryImmediate |
I32Load8S
Fields of I32Load8S
memarg: MemoryImmediate |
I32Load8U
Fields of I32Load8U
memarg: MemoryImmediate |
I32Load16S
Fields of I32Load16S
memarg: MemoryImmediate |
I32Load16U
Fields of I32Load16U
memarg: MemoryImmediate |
I64Load8S
Fields of I64Load8S
memarg: MemoryImmediate |
I64Load8U
Fields of I64Load8U
memarg: MemoryImmediate |
I64Load16S
Fields of I64Load16S
memarg: MemoryImmediate |
I64Load16U
Fields of I64Load16U
memarg: MemoryImmediate |
I64Load32S
Fields of I64Load32S
memarg: MemoryImmediate |
I64Load32U
Fields of I64Load32U
memarg: MemoryImmediate |
I32Store
Fields of I32Store
memarg: MemoryImmediate |
I64Store
Fields of I64Store
memarg: MemoryImmediate |
F32Store
Fields of F32Store
memarg: MemoryImmediate |
F64Store
Fields of F64Store
memarg: MemoryImmediate |
I32Store8
Fields of I32Store8
memarg: MemoryImmediate |
I32Store16
Fields of I32Store16
memarg: MemoryImmediate |
I64Store8
Fields of I64Store8
memarg: MemoryImmediate |
I64Store16
Fields of I64Store16
memarg: MemoryImmediate |
I64Store32
Fields of I64Store32
memarg: MemoryImmediate |
CurrentMemory
Fields of CurrentMemory
reserved: u32 |
GrowMemory
Fields of GrowMemory
reserved: u32 |
I32Const
Fields of I32Const
value: i32 |
I64Const
Fields of I64Const
value: i64 |
F32Const
Fields of F32Const
value: Ieee32 |
F64Const
Fields of F64Const
value: Ieee64 |
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
Fields of Wake
memarg: MemoryImmediate |
I32Wait
Fields of I32Wait
memarg: MemoryImmediate |
I64Wait
Fields of I64Wait
memarg: MemoryImmediate |
I32AtomicLoad
Fields of I32AtomicLoad
memarg: MemoryImmediate |
I64AtomicLoad
Fields of I64AtomicLoad
memarg: MemoryImmediate |
I32AtomicLoad8U
Fields of I32AtomicLoad8U
memarg: MemoryImmediate |
I32AtomicLoad16U
Fields of I32AtomicLoad16U
memarg: MemoryImmediate |
I64AtomicLoad8U
Fields of I64AtomicLoad8U
memarg: MemoryImmediate |
I64AtomicLoad16U
Fields of I64AtomicLoad16U
memarg: MemoryImmediate |
I64AtomicLoad32U
Fields of I64AtomicLoad32U
memarg: MemoryImmediate |
I32AtomicStore
Fields of I32AtomicStore
memarg: MemoryImmediate |
I64AtomicStore
Fields of I64AtomicStore
memarg: MemoryImmediate |
I32AtomicStore8
Fields of I32AtomicStore8
memarg: MemoryImmediate |
I32AtomicStore16
Fields of I32AtomicStore16
memarg: MemoryImmediate |
I64AtomicStore8
Fields of I64AtomicStore8
memarg: MemoryImmediate |
I64AtomicStore16
Fields of I64AtomicStore16
memarg: MemoryImmediate |
I64AtomicStore32
Fields of I64AtomicStore32
memarg: MemoryImmediate |
I32AtomicRmwAdd
Fields of I32AtomicRmwAdd
memarg: MemoryImmediate |
I64AtomicRmwAdd
Fields of I64AtomicRmwAdd
memarg: MemoryImmediate |
I32AtomicRmw8UAdd
Fields of I32AtomicRmw8UAdd
memarg: MemoryImmediate |
I32AtomicRmw16UAdd
Fields of I32AtomicRmw16UAdd
memarg: MemoryImmediate |
I64AtomicRmw8UAdd
Fields of I64AtomicRmw8UAdd
memarg: MemoryImmediate |
I64AtomicRmw16UAdd
Fields of I64AtomicRmw16UAdd
memarg: MemoryImmediate |
I64AtomicRmw32UAdd
Fields of I64AtomicRmw32UAdd
memarg: MemoryImmediate |
I32AtomicRmwSub
Fields of I32AtomicRmwSub
memarg: MemoryImmediate |
I64AtomicRmwSub
Fields of I64AtomicRmwSub
memarg: MemoryImmediate |
I32AtomicRmw8USub
Fields of I32AtomicRmw8USub
memarg: MemoryImmediate |
I32AtomicRmw16USub
Fields of I32AtomicRmw16USub
memarg: MemoryImmediate |
I64AtomicRmw8USub
Fields of I64AtomicRmw8USub
memarg: MemoryImmediate |
I64AtomicRmw16USub
Fields of I64AtomicRmw16USub
memarg: MemoryImmediate |
I64AtomicRmw32USub
Fields of I64AtomicRmw32USub
memarg: MemoryImmediate |
I32AtomicRmwAnd
Fields of I32AtomicRmwAnd
memarg: MemoryImmediate |
I64AtomicRmwAnd
Fields of I64AtomicRmwAnd
memarg: MemoryImmediate |
I32AtomicRmw8UAnd
Fields of I32AtomicRmw8UAnd
memarg: MemoryImmediate |
I32AtomicRmw16UAnd
Fields of I32AtomicRmw16UAnd
memarg: MemoryImmediate |
I64AtomicRmw8UAnd
Fields of I64AtomicRmw8UAnd
memarg: MemoryImmediate |
I64AtomicRmw16UAnd
Fields of I64AtomicRmw16UAnd
memarg: MemoryImmediate |
I64AtomicRmw32UAnd
Fields of I64AtomicRmw32UAnd
memarg: MemoryImmediate |
I32AtomicRmwOr
Fields of I32AtomicRmwOr
memarg: MemoryImmediate |
I64AtomicRmwOr
Fields of I64AtomicRmwOr
memarg: MemoryImmediate |
I32AtomicRmw8UOr
Fields of I32AtomicRmw8UOr
memarg: MemoryImmediate |
I32AtomicRmw16UOr
Fields of I32AtomicRmw16UOr
memarg: MemoryImmediate |
I64AtomicRmw8UOr
Fields of I64AtomicRmw8UOr
memarg: MemoryImmediate |
I64AtomicRmw16UOr
Fields of I64AtomicRmw16UOr
memarg: MemoryImmediate |
I64AtomicRmw32UOr
Fields of I64AtomicRmw32UOr
memarg: MemoryImmediate |
I32AtomicRmwXor
Fields of I32AtomicRmwXor
memarg: MemoryImmediate |
I64AtomicRmwXor
Fields of I64AtomicRmwXor
memarg: MemoryImmediate |
I32AtomicRmw8UXor
Fields of I32AtomicRmw8UXor
memarg: MemoryImmediate |
I32AtomicRmw16UXor
Fields of I32AtomicRmw16UXor
memarg: MemoryImmediate |
I64AtomicRmw8UXor
Fields of I64AtomicRmw8UXor
memarg: MemoryImmediate |
I64AtomicRmw16UXor
Fields of I64AtomicRmw16UXor
memarg: MemoryImmediate |
I64AtomicRmw32UXor
Fields of I64AtomicRmw32UXor
memarg: MemoryImmediate |
I32AtomicRmwXchg
Fields of I32AtomicRmwXchg
memarg: MemoryImmediate |
I64AtomicRmwXchg
Fields of I64AtomicRmwXchg
memarg: MemoryImmediate |
I32AtomicRmw8UXchg
Fields of I32AtomicRmw8UXchg
memarg: MemoryImmediate |
I32AtomicRmw16UXchg
Fields of I32AtomicRmw16UXchg
memarg: MemoryImmediate |
I64AtomicRmw8UXchg
Fields of I64AtomicRmw8UXchg
memarg: MemoryImmediate |
I64AtomicRmw16UXchg
Fields of I64AtomicRmw16UXchg
memarg: MemoryImmediate |
I64AtomicRmw32UXchg
Fields of I64AtomicRmw32UXchg
memarg: MemoryImmediate |
I32AtomicRmwCmpxchg
Fields of I32AtomicRmwCmpxchg
memarg: MemoryImmediate |
I64AtomicRmwCmpxchg
Fields of I64AtomicRmwCmpxchg
memarg: MemoryImmediate |
I32AtomicRmw8UCmpxchg
Fields of I32AtomicRmw8UCmpxchg
memarg: MemoryImmediate |
I32AtomicRmw16UCmpxchg
Fields of I32AtomicRmw16UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw8UCmpxchg
Fields of I64AtomicRmw8UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw16UCmpxchg
Fields of I64AtomicRmw16UCmpxchg
memarg: MemoryImmediate |
I64AtomicRmw32UCmpxchg
Fields of I64AtomicRmw32UCmpxchg
memarg: MemoryImmediate |