|
uint32_t | const_slots_start () const |
|
uint32_t | GetStackFrameSize () const |
|
uint32_t | CurrentCodePos () const |
|
WasmInstruction | DecodeInstruction (pc_t pc, Decoder &decoder) |
|
void | DecodeGCOp (WasmOpcode opcode, WasmInstruction::Optional *optional, Decoder *decoder, InterpreterCode *code, pc_t pc, int *const len) |
|
void | DecodeNumericOp (WasmOpcode opcode, WasmInstruction::Optional *optional, Decoder *decoder, InterpreterCode *code, pc_t pc, int *const len) |
|
void | DecodeAtomicOp (WasmOpcode opcode, WasmInstruction::Optional *optional, Decoder *decoder, InterpreterCode *code, pc_t pc, int *const len) |
|
bool | DecodeSimdOp (WasmOpcode opcode, WasmInstruction::Optional *optional, Decoder *decoder, InterpreterCode *code, pc_t pc, int *const len) |
|
bool | ToRegisterIsAllowed (const WasmInstruction &instr) |
|
RegMode | EncodeInstruction (const WasmInstruction &instr, RegMode curr_reg_mode, RegMode next_reg_mode) |
|
RegMode | DoEncodeInstruction (const WasmInstruction &instr, RegMode curr_reg_mode, RegMode next_reg_mode) |
|
bool | EncodeSuperInstruction (RegMode ®_mode, const WasmInstruction &curr_instr, const WasmInstruction &next_instr) |
|
bool | DoEncodeSuperInstruction (RegMode ®_mode, const WasmInstruction &curr_instr, const WasmInstruction &next_instr) |
|
uint32_t | ScanConstInstructions () const |
|
void | Emit (const void *buff, size_t len) |
|
void | I32Push (bool emit=true) |
|
void | I64Push (bool emit=true) |
|
void | MemIndexPush (bool emit=true) |
|
void | ITableIndexPush (bool is_table64, bool emit=true) |
|
void | F32Push (bool emit=true) |
|
void | F64Push (bool emit=true) |
|
void | S128Push (bool emit=true) |
|
void | RefPush (ValueType type, bool emit=true) |
|
void | Push (ValueType type) |
|
void | I32Pop (bool emit=true) |
|
void | I64Pop (bool emit=true) |
|
void | MemIndexPop (bool emit=true) |
|
void | F32Pop (bool emit=true) |
|
void | F64Pop (bool emit=true) |
|
void | S128Pop (bool emit=true) |
|
ValueType | RefPop (bool emit=true) |
|
void | Pop (ValueKind kind, bool emit=true) |
|
void | EmitI16Const (int16_t value) |
|
void | EmitI32Const (int32_t value) |
|
void | EmitF32Const (float value) |
|
void | EmitF64Const (double value) |
|
void | EmitSlotOffset (uint32_t value) |
|
void | EmitMemoryOffset (uint64_t value) |
|
void | EmitStackIndex (int32_t value) |
|
void | EmitRefStackIndex (int32_t value) |
|
void | EmitRefValueType (int32_t value) |
|
void | EmitStructFieldOffset (int32_t value) |
|
void | EmitFnId (InstructionHandler func_id, uint32_t pc=UINT_MAX) |
|
void | EmitCopySlot (ValueType value_type, uint32_t from_slot_index, uint32_t to_slot_index, bool copy_from_reg=false) |
|
bool | IsMemory64 () const |
|
bool | IsMultiMemory () const |
|
ValueKind | GetGlobalType (uint32_t index) const |
|
void | EmitGlobalIndex (uint32_t index) |
|
uint32_t | ReserveBlockSlots (uint8_t opcode, const WasmInstruction::Optional::Block &block_data, size_t *rets_slots_count, size_t *params_slots_count) |
|
void | StoreBlockParamsIntoSlots (uint32_t target_block_index, bool update_stack) |
|
void | StoreBlockParamsAndResultsIntoSlots (uint32_t target_block_index, WasmOpcode opcode) |
|
bool | HasVoidSignature (const WasmBytecodeGenerator::BlockData &block_data) const |
|
uint32_t | ParamsCount (const WasmBytecodeGenerator::BlockData &block_data) const |
|
ValueType | GetParamType (const WasmBytecodeGenerator::BlockData &block_data, size_t index) const |
|
uint32_t | ReturnsCount (const WasmBytecodeGenerator::BlockData &block_data) const |
|
ValueType | GetReturnType (const WasmBytecodeGenerator::BlockData &block_data, size_t index) const |
|
void | PreserveArgsAndLocals () |
|
int32_t | BeginBlock (WasmOpcode opcode, const WasmInstruction::Optional::Block signature) |
|
void | BeginElseBlock (uint32_t if_block_index, bool dummy) |
|
int32_t | EndBlock (WasmOpcode opcode) |
|
void | Return () |
|
void | EmitBranchOffset (uint32_t delta) |
|
void | EmitIfElseBranchOffset () |
|
void | EmitTryCatchBranchOffset () |
|
void | EmitBranchTableOffset (uint32_t delta, uint32_t code_pos) |
|
uint32_t | GetCurrentBranchDepth () const |
|
int32_t | GetTargetBranch (uint32_t delta) const |
|
int | GetCurrentTryBlockIndex (bool return_matching_try_for_catch_blocks) const |
|
void | PatchBranchOffsets () |
|
void | PatchLoopBeginInstructions () |
|
void | RestoreIfElseParams (uint32_t if_block_index) |
|
bool | HasSharedSlot (uint32_t stack_index) const |
|
bool | FindSharedSlot (uint32_t stack_index, uint32_t *new_slot_index) |
|
const FunctionSig * | GetFunctionSignature (uint32_t function_index) const |
|
ValueKind | GetTopStackType (RegMode reg_mode) const |
|
uint32_t | function_index () const |
|
uint32_t | CreateSlot (ValueType value_type) |
|
template<typename T > |
uint32_t | CreateSlot (ValueType value_type) |
|
uint32_t | CreateWasmRefSlot (ValueType value_type) |
|
template<typename T > |
uint32_t | GetConstSlot (T value) |
|
uint32_t | GetI32ConstSlot (int32_t value) |
|
uint32_t | GetI64ConstSlot (int64_t value) |
|
uint32_t | GetF32ConstSlot (float value) |
|
uint32_t | GetF64ConstSlot (double value) |
|
uint32_t | GetS128ConstSlot (Simd128 value) |
|
template<typename T > |
uint32_t | CreateConstSlot (T value) |
|
template<typename T > |
uint32_t | PushConstSlot (T value) |
|
void | PushConstSlot (uint32_t slot_index) |
|
void | PushSlot (uint32_t slot_index) |
|
uint32_t | _PushSlot (ValueType value_type) |
|
void | PushCopySlot (uint32_t from_stack_index) |
|
uint32_t | PopSlot () |
|
void | CopyToSlot (ValueType value_type, uint32_t from_slot_index, uint32_t to_stack_index, bool copy_from_reg) |
|
void | CopyToSlotAndPop (ValueType value_type, uint32_t to, bool is_tee, bool copy_from_reg) |
|
void | SetSlotType (uint32_t stack_index, ValueType type) |
|
void | UpdateStack (uint32_t index, uint32_t slot_index) |
|
void | UpdateStack (uint32_t index, uint32_t slot_index, ValueType value_type) |
|
uint32_t | stack_top_index () const |
|
uint32_t | stack_size () const |
|
void | SetUnreachableMode () |
|
void | InitSlotsForFunctionArgs (const FunctionSig *sig, bool is_indirect_call) |
|
bool | TryCompactInstructionHandler (InstructionHandler func_addr) |
|
bool | TypeCheckAlwaysSucceeds (ValueType obj_type, HeapType type) const |
|
bool | TypeCheckAlwaysFails (ValueType obj_type, HeapType expected_type, bool null_succeeds) const |
|
| WasmBytecodeGenerator (const WasmBytecodeGenerator &)=delete |
|
WasmBytecodeGenerator & | operator= (const WasmBytecodeGenerator &)=delete |
|
Definition at line 1453 of file wasm-interpreter.h.