|
| TurboshaftGraphBuildingInterface (Zone *zone, CompilationEnv *env, Assembler &assembler, std::unique_ptr< AssumptionsJournal > *assumptions, ZoneVector< WasmInliningPosition > *inlining_positions, int func_index, bool shared, const WireBytesStorage *wire_bytes) |
|
| TurboshaftGraphBuildingInterface (Zone *zone, CompilationEnv *env, Assembler &assembler, Mode mode, InstanceCache &instance_cache, std::unique_ptr< AssumptionsJournal > *assumptions, ZoneVector< WasmInliningPosition > *inlining_positions, int func_index, bool shared, const WireBytesStorage *wire_bytes, base::Vector< OpIndex > real_parameters, TSBlock *return_block, BlockPhis *return_phis, TSBlock *catch_block, bool is_inlined_tail_call, OptionalV< FrameState > parent_frame_state) |
|
void | StartFunction (FullDecoder *decoder) |
|
void | StartFunctionBody (FullDecoder *decoder, Control *block) |
|
void | FinishFunction (FullDecoder *decoder) |
|
void | OnFirstError (FullDecoder *) |
|
void | NextInstruction (FullDecoder *decoder, WasmOpcode) |
|
void | Block (FullDecoder *decoder, Control *block) |
|
void | Loop (FullDecoder *decoder, Control *block) |
|
void | If (FullDecoder *decoder, const Value &cond, Control *if_block) |
|
void | Else (FullDecoder *decoder, Control *if_block) |
|
void | BrOrRet (FullDecoder *decoder, uint32_t depth, uint32_t drop_values=0) |
|
void | BrIf (FullDecoder *decoder, const Value &cond, uint32_t depth) |
|
void | BrTable (FullDecoder *decoder, const BranchTableImmediate &imm, const Value &key) |
|
void | FallThruTo (FullDecoder *decoder, Control *block) |
|
void | PopControl (FullDecoder *decoder, Control *block) |
|
void | DoReturn (FullDecoder *decoder, uint32_t drop_values) |
|
void | UnOp (FullDecoder *decoder, WasmOpcode opcode, const Value &value, Value *result) |
|
void | BinOp (FullDecoder *decoder, WasmOpcode opcode, const Value &lhs, const Value &rhs, Value *result) |
|
void | TraceInstruction (FullDecoder *decoder, uint32_t markid) |
|
void | I32Const (FullDecoder *decoder, Value *result, int32_t value) |
|
void | I64Const (FullDecoder *decoder, Value *result, int64_t value) |
|
void | F32Const (FullDecoder *decoder, Value *result, float value) |
|
void | F64Const (FullDecoder *decoder, Value *result, double value) |
|
void | S128Const (FullDecoder *decoder, const Simd128Immediate &imm, Value *result) |
|
void | RefNull (FullDecoder *decoder, ValueType type, Value *result) |
|
void | RefFunc (FullDecoder *decoder, uint32_t function_index, Value *result) |
|
void | RefAsNonNull (FullDecoder *decoder, const Value &arg, Value *result) |
|
void | Drop (FullDecoder *decoder) |
|
void | LocalGet (FullDecoder *decoder, Value *result, const IndexImmediate &imm) |
|
void | LocalSet (FullDecoder *decoder, const Value &value, const IndexImmediate &imm) |
|
void | LocalTee (FullDecoder *decoder, const Value &value, Value *result, const IndexImmediate &imm) |
|
void | GlobalGet (FullDecoder *decoder, Value *result, const GlobalIndexImmediate &imm) |
|
void | GlobalSet (FullDecoder *decoder, const Value &value, const GlobalIndexImmediate &imm) |
|
void | Trap (FullDecoder *decoder, TrapReason reason) |
|
void | AssertNullTypecheck (FullDecoder *decoder, const Value &obj, Value *result) |
|
void | AssertNotNullTypecheck (FullDecoder *decoder, const Value &obj, Value *result) |
|
void | NopForTestingUnsupportedInLiftoff (FullDecoder *decoder) |
|
void | Select (FullDecoder *decoder, const Value &cond, const Value &fval, const Value &tval, Value *result) |
|
OpIndex | BuildChangeEndiannessStore (OpIndex node, MachineRepresentation mem_rep, wasm::ValueType wasmtype) |
|
OpIndex | BuildChangeEndiannessLoad (OpIndex node, MachineType memtype, wasm::ValueType wasmtype) |
|
void | LoadMem (FullDecoder *decoder, LoadType type, const MemoryAccessImmediate &imm, const Value &index, Value *result) |
|
void | LoadTransform (FullDecoder *decoder, LoadType type, LoadTransformationKind transform, const MemoryAccessImmediate &imm, const Value &index, Value *result) |
|
void | LoadLane (FullDecoder *decoder, LoadType type, const Value &value, const Value &index, const MemoryAccessImmediate &imm, const uint8_t laneidx, Value *result) |
|
void | StoreMem (FullDecoder *decoder, StoreType type, const MemoryAccessImmediate &imm, const Value &index, const Value &value) |
|
void | StoreLane (FullDecoder *decoder, StoreType type, const MemoryAccessImmediate &imm, const Value &index, const Value &value, const uint8_t laneidx) |
|
void | CurrentMemoryPages (FullDecoder *decoder, const MemoryIndexImmediate &imm, Value *result) |
|
void | MemoryGrow (FullDecoder *decoder, const MemoryIndexImmediate &imm, const Value &value, Value *result) |
|
V< Word32 > | IsExternRefString (const Value value) |
|
V< String > | ExternRefToString (const Value value, bool null_succeeds=false) |
|
bool | IsExplicitStringCast (const Value value) |
|
V< Word32 > | GetStringIndexOf (FullDecoder *decoder, V< String > string, V< String > search, V< Word32 > start) |
|
void | SetDataViewOpForErrorMessage (DataViewOp op_type) |
|
void | ThrowDataViewTypeError (FullDecoder *decoder, V< Object > dataview, DataViewOp op_type) |
|
void | ThrowDataViewOutOfBoundsError (FullDecoder *decoder, DataViewOp op_type) |
|
void | ThrowDataViewDetachedError (FullDecoder *decoder, DataViewOp op_type) |
|
void | DataViewRangeCheck (FullDecoder *decoder, V< WordPtr > left, V< WordPtr > right, DataViewOp op_type) |
|
void | DataViewBoundsCheck (FullDecoder *decoder, V< WordPtr > left, V< WordPtr > right, DataViewOp op_type) |
|
void | DataViewDetachedBufferCheck (FullDecoder *decoder, V< Object > dataview, DataViewOp op_type) |
|
V< WordPtr > | GetDataViewByteLength (FullDecoder *decoder, V< Object > dataview, DataViewOp op_type) |
|
V< WordPtr > | ChangeTaggedNumberToIntPtr (V< Object > tagged) |
|
V< WordPtr > | GetDataViewByteLength (FullDecoder *decoder, V< Object > dataview, V< WordPtr > offset, DataViewOp op_type) |
|
V< WordPtr > | GetDataViewDataPtr (FullDecoder *decoder, V< Object > dataview, V< WordPtr > offset, DataViewOp op_type) |
|
OpIndex | DataViewGetter (FullDecoder *decoder, const Value args[], DataViewOp op_type) |
|
void | DataViewSetter (FullDecoder *decoder, const Value args[], DataViewOp op_type) |
|
template<typename T > |
V< T > | AnnotateAsString (V< T > value, wasm::ValueType type) |
|
void | WellKnown_FastApi (FullDecoder *decoder, const CallFunctionImmediate &imm, const Value args[], Value returns[]) |
|
bool | HandleWellKnownImport (FullDecoder *decoder, const CallFunctionImmediate &imm, const Value args[], Value returns[]) |
|
void | CallDirect (FullDecoder *decoder, const CallFunctionImmediate &imm, const Value args[], Value returns[]) |
|
void | ReturnCall (FullDecoder *decoder, const CallFunctionImmediate &imm, const Value args[]) |
|
void | CallIndirect (FullDecoder *decoder, const Value &index, const CallIndirectImmediate &imm, const Value args[], Value returns[]) |
|
void | ReturnCallIndirect (FullDecoder *decoder, const Value &index, const CallIndirectImmediate &imm, const Value args[]) |
|
void | CallRef (FullDecoder *decoder, const Value &func_ref, const FunctionSig *sig, const Value args[], Value returns[]) |
|
void | ReturnCallRef (FullDecoder *decoder, const Value &func_ref, const FunctionSig *sig, const Value args[]) |
|
void | BrOnNull (FullDecoder *decoder, const Value &ref_object, uint32_t depth, bool pass_null_along_branch, Value *result_on_fallthrough) |
|
void | BrOnNonNull (FullDecoder *decoder, const Value &ref_object, Value *result, uint32_t depth, bool) |
|
void | SimdOp (FullDecoder *decoder, WasmOpcode opcode, const Value *args, Value *result) |
|
void | SimdLaneOp (FullDecoder *decoder, WasmOpcode opcode, const SimdLaneImmediate &imm, base::Vector< const Value > inputs, Value *result) |
|
void | Simd8x16ShuffleOp (FullDecoder *decoder, const Simd128Immediate &imm, const Value &input0, const Value &input1, Value *result) |
|
void | Try (FullDecoder *decoder, Control *block) |
|
void | Throw (FullDecoder *decoder, const TagIndexImmediate &imm, const Value arg_values[]) |
|
void | Rethrow (FullDecoder *decoder, Control *block) |
|
void | CatchException (FullDecoder *decoder, const TagIndexImmediate &imm, Control *block, base::Vector< Value > values) |
|
void | Delegate (FullDecoder *decoder, uint32_t depth, Control *block) |
|
void | CatchAll (FullDecoder *decoder, Control *block) |
|
void | TryTable (FullDecoder *decoder, Control *block) |
|
void | CatchCase (FullDecoder *decoder, Control *block, const CatchCase &catch_case, base::Vector< Value > values) |
|
void | ThrowRef (FullDecoder *decoder, Value *value) |
|
void | AtomicNotify (FullDecoder *decoder, const MemoryAccessImmediate &imm, OpIndex index, OpIndex num_waiters_to_wake, Value *result) |
|
void | AtomicWait (FullDecoder *decoder, WasmOpcode opcode, const MemoryAccessImmediate &imm, OpIndex index, OpIndex expected, V< Word64 > timeout, Value *result) |
|
void | AtomicOp (FullDecoder *decoder, WasmOpcode opcode, const Value args[], const size_t argc, const MemoryAccessImmediate &imm, Value *result) |
|
void | AtomicFence (FullDecoder *decoder) |
|
void | MemoryInit (FullDecoder *decoder, const MemoryInitImmediate &imm, const Value &dst, const Value &src, const Value &size) |
|
void | MemoryCopy (FullDecoder *decoder, const MemoryCopyImmediate &imm, const Value &dst, const Value &src, const Value &size) |
|
void | MemoryFill (FullDecoder *decoder, const MemoryIndexImmediate &imm, const Value &dst, const Value &value, const Value &size) |
|
void | DataDrop (FullDecoder *decoder, const IndexImmediate &imm) |
|
void | TableGet (FullDecoder *decoder, const Value &index, Value *result, const TableIndexImmediate &imm) |
|
void | TableSet (FullDecoder *decoder, const Value &index, const Value &value, const TableIndexImmediate &imm) |
|
void | TableInit (FullDecoder *decoder, const TableInitImmediate &imm, const Value &dst_val, const Value &src_val, const Value &size_val) |
|
void | TableCopy (FullDecoder *decoder, const TableCopyImmediate &imm, const Value &dst_val, const Value &src_val, const Value &size_val) |
|
void | TableGrow (FullDecoder *decoder, const TableIndexImmediate &imm, const Value &value, const Value &delta, Value *result) |
|
void | TableFill (FullDecoder *decoder, const TableIndexImmediate &imm, const Value &start, const Value &value, const Value &count) |
|
V< WasmTableObject > | LoadTable (FullDecoder *decoder, const TableIndexImmediate &imm) |
|
void | TableSize (FullDecoder *decoder, const TableIndexImmediate &imm, Value *result) |
|
void | ElemDrop (FullDecoder *decoder, const IndexImmediate &imm) |
|
void | StructNew (FullDecoder *decoder, const StructIndexImmediate &imm, const Value &descriptor, const Value args[], Value *result) |
|
void | StructNewDefault (FullDecoder *decoder, const StructIndexImmediate &imm, const Value &descriptor, Value *result) |
|
void | StructGet (FullDecoder *decoder, const Value &struct_object, const FieldImmediate &field, bool is_signed, Value *result) |
|
void | StructSet (FullDecoder *decoder, const Value &struct_object, const FieldImmediate &field, const Value &field_value) |
|
void | ArrayNew (FullDecoder *decoder, const ArrayIndexImmediate &imm, const Value &length, const Value &initial_value, Value *result) |
|
void | ArrayNewDefault (FullDecoder *decoder, const ArrayIndexImmediate &imm, const Value &length, Value *result) |
|
void | ArrayGet (FullDecoder *decoder, const Value &array_obj, const ArrayIndexImmediate &imm, const Value &index, bool is_signed, Value *result) |
|
void | ArraySet (FullDecoder *decoder, const Value &array_obj, const ArrayIndexImmediate &imm, const Value &index, const Value &value) |
|
void | ArrayLen (FullDecoder *decoder, const Value &array_obj, Value *result) |
|
void | ArrayCopy (FullDecoder *decoder, const Value &dst, const Value &dst_index, const Value &src, const Value &src_index, const ArrayIndexImmediate &src_imm, const Value &length) |
|
void | ArrayFill (FullDecoder *decoder, ArrayIndexImmediate &imm, const Value &array, const Value &index, const Value &value, const Value &length) |
|
void | ArrayNewFixed (FullDecoder *decoder, const ArrayIndexImmediate &array_imm, const IndexImmediate &length_imm, const Value elements[], Value *result) |
|
void | ArrayNewSegment (FullDecoder *decoder, const ArrayIndexImmediate &array_imm, const IndexImmediate &segment_imm, const Value &offset, const Value &length, Value *result) |
|
void | ArrayInitSegment (FullDecoder *decoder, const ArrayIndexImmediate &array_imm, const IndexImmediate &segment_imm, const Value &array, const Value &array_index, const Value &segment_offset, const Value &length) |
|
void | RefI31 (FullDecoder *decoder, const Value &input, Value *result) |
|
void | I31GetS (FullDecoder *decoder, const Value &input, Value *result) |
|
void | I31GetU (FullDecoder *decoder, const Value &input, Value *result) |
|
void | RefGetDesc (FullDecoder *decoder, const Value &ref_val, Value *result) |
|
compiler::ExactOrSubtype | GetExactness (FullDecoder *decoder, HeapType target) |
|
void | RefTest (FullDecoder *decoder, HeapType target, const Value &object, Value *result, bool null_succeeds) |
|
void | RefTestAbstract (FullDecoder *decoder, const Value &object, HeapType type, Value *result, bool null_succeeds) |
|
void | RefCast (FullDecoder *decoder, const Value &object, Value *result) |
|
void | RefCastDesc (FullDecoder *decoder, const Value &object, const Value &desc, Value *result) |
|
void | RefCastAbstract (FullDecoder *decoder, const Value &object, HeapType type, Value *result, bool null_succeeds) |
|
void | BrOnCast (FullDecoder *decoder, HeapType target_type, const Value &object, Value *value_on_branch, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastDesc (FullDecoder *decoder, HeapType target_type, const Value &object, const Value &descriptor, Value *value_on_branch, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastAbstract (FullDecoder *decoder, const Value &object, HeapType type, Value *value_on_branch, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastFail (FullDecoder *decoder, HeapType target_type, const Value &object, Value *value_on_fallthrough, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastDescFail (FullDecoder *decoder, HeapType target_type, const Value &object, const Value &descriptor, Value *value_on_fallthrough, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastFailAbstract (FullDecoder *decoder, const Value &object, HeapType type, Value *value_on_fallthrough, uint32_t br_depth, bool null_succeeds) |
|
void | StringNewWtf8 (FullDecoder *decoder, const MemoryIndexImmediate &imm, const unibrow::Utf8Variant variant, const Value &offset, const Value &size, Value *result) |
|
const CallOp * | IsArrayNewSegment (V< Object > array) |
|
V< HeapObject > | StringNewWtf8ArrayImpl (FullDecoder *decoder, const unibrow::Utf8Variant variant, const Value &array, const Value &start, const Value &end, ValueType result_type) |
|
void | StringNewWtf8Array (FullDecoder *decoder, const unibrow::Utf8Variant variant, const Value &array, const Value &start, const Value &end, Value *result) |
|
void | StringNewWtf16 (FullDecoder *decoder, const MemoryIndexImmediate &imm, const Value &offset, const Value &size, Value *result) |
|
void | StringNewWtf16Array (FullDecoder *decoder, const Value &array, const Value &start, const Value &end, Value *result) |
|
void | StringConst (FullDecoder *decoder, const StringConstImmediate &imm, Value *result) |
|
void | StringMeasureWtf8 (FullDecoder *decoder, const unibrow::Utf8Variant variant, const Value &str, Value *result) |
|
OpIndex | StringMeasureWtf8Impl (FullDecoder *decoder, const unibrow::Utf8Variant variant, V< String > string) |
|
V< Word32 > | LoadStringLength (V< Object > string) |
|
void | StringMeasureWtf16 (FullDecoder *decoder, const Value &str, Value *result) |
|
void | StringEncodeWtf8 (FullDecoder *decoder, const MemoryIndexImmediate &memory, const unibrow::Utf8Variant variant, const Value &str, const Value &offset, Value *result) |
|
void | StringEncodeWtf8Array (FullDecoder *decoder, const unibrow::Utf8Variant variant, const Value &str, const Value &array, const Value &start, Value *result) |
|
OpIndex | StringEncodeWtf8ArrayImpl (FullDecoder *decoder, const unibrow::Utf8Variant variant, V< String > str, V< WasmArray > array, V< Word32 > start) |
|
void | StringEncodeWtf16 (FullDecoder *decoder, const MemoryIndexImmediate &imm, const Value &str, const Value &offset, Value *result) |
|
void | StringEncodeWtf16Array (FullDecoder *decoder, const Value &str, const Value &array, const Value &start, Value *result) |
|
void | StringConcat (FullDecoder *decoder, const Value &head, const Value &tail, Value *result) |
|
V< Word32 > | StringEqImpl (FullDecoder *decoder, V< String > a, V< String > b, ValueType a_type, ValueType b_type) |
|
void | StringEq (FullDecoder *decoder, const Value &a, const Value &b, Value *result) |
|
void | StringIsUSVSequence (FullDecoder *decoder, const Value &str, Value *result) |
|
void | StringAsWtf8 (FullDecoder *decoder, const Value &str, Value *result) |
|
void | StringViewWtf8Advance (FullDecoder *decoder, const Value &view, const Value &pos, const Value &bytes, Value *result) |
|
void | StringViewWtf8Encode (FullDecoder *decoder, const MemoryIndexImmediate &memory, const unibrow::Utf8Variant variant, const Value &view, const Value &addr, const Value &pos, const Value &bytes, Value *next_pos, Value *bytes_written) |
|
void | StringViewWtf8Slice (FullDecoder *decoder, const Value &view, const Value &start, const Value &end, Value *result) |
|
void | StringAsWtf16 (FullDecoder *decoder, const Value &str, Value *result) |
|
V< Word32 > | GetCodeUnitImpl (FullDecoder *decoder, V< String > string, V< Word32 > offset) |
|
void | StringViewWtf16GetCodeUnit (FullDecoder *decoder, const Value &view, const Value &pos, Value *result) |
|
V< Word32 > | StringCodePointAt (FullDecoder *decoder, V< String > string, V< Word32 > offset) |
|
void | StringViewWtf16Encode (FullDecoder *decoder, const MemoryIndexImmediate &imm, const Value &view, const Value &offset, const Value &pos, const Value &codeunits, Value *result) |
|
void | StringViewWtf16Slice (FullDecoder *decoder, const Value &view, const Value &start, const Value &end, Value *result) |
|
void | StringAsIter (FullDecoder *decoder, const Value &str, Value *result) |
|
void | StringViewIterNext (FullDecoder *decoder, const Value &view, Value *result) |
|
void | StringViewIterAdvance (FullDecoder *decoder, const Value &view, const Value &codepoints, Value *result) |
|
void | StringViewIterRewind (FullDecoder *decoder, const Value &view, const Value &codepoints, Value *result) |
|
void | StringViewIterSlice (FullDecoder *decoder, const Value &view, const Value &codepoints, Value *result) |
|
void | StringCompare (FullDecoder *decoder, const Value &lhs, const Value &rhs, Value *result) |
|
void | StringFromCodePoint (FullDecoder *decoder, const Value &code_point, Value *result) |
|
void | StringHash (FullDecoder *decoder, const Value &string, Value *result) |
|
void | Forward (FullDecoder *decoder, const Value &from, Value *to) |
|
void | BuildModifyThreadInWasmFlagHelper (Zone *zone, OpIndex thread_in_wasm_flag_address, bool new_value) |
|
void | BuildModifyThreadInWasmFlag (Zone *zone, bool new_value) |
|
|
V< Object > | NullCheck (const Value &value, TrapId trap_id=TrapId::kTrapNullDereference) |
|
TSBlock * | NewBlockWithPhis (FullDecoder *decoder, Merge< Value > *merge) |
|
void | SetupControlFlowEdge (FullDecoder *decoder, TSBlock *block, uint32_t drop_values=0, V< Object > exception=OpIndex::Invalid(), Merge< Value > *stack_values=nullptr) |
|
OpIndex | MaybePhi (base::Vector< const OpIndex > elements, ValueType type) |
|
void | BindBlockAndGeneratePhis (FullDecoder *decoder, TSBlock *tsblock, Merge< Value > *merge, OpIndex *exception=nullptr) |
|
V< Any > | DefaultValue (ValueType type) |
|
V< FrameState > | CreateFrameState (FullDecoder *decoder, const FunctionSig *callee_sig, const Value *func_ref_or_index, const Value args[]) |
|
void | DeoptIfNot (FullDecoder *decoder, OpIndex deopt_condition, V< FrameState > frame_state) |
|
void | Deopt (FullDecoder *decoder, V< FrameState > frame_state) |
|
uint32_t | GetLiftoffFrameSize (const FullDecoder *decoder) |
|
V< Word64 > | ExtractTruncationProjections (V< Tuple< Word64, Word32 > > truncated) |
|
std::pair< OpIndex, V< Word32 > > | BuildCCallForFloatConversion (OpIndex arg, MemoryRepresentation float_type, ExternalReference ccall_ref) |
|
OpIndex | BuildCcallConvertFloat (OpIndex arg, MemoryRepresentation float_type, ExternalReference ccall_ref) |
|
OpIndex | BuildCcallConvertFloatSat (OpIndex arg, MemoryRepresentation float_type, ExternalReference ccall_ref, bool is_signed) |
|
OpIndex | BuildIntToFloatConversionInstruction (OpIndex input, ExternalReference ccall_ref, MemoryRepresentation input_representation, MemoryRepresentation result_representation) |
|
OpIndex | BuildDiv64Call (OpIndex lhs, OpIndex rhs, ExternalReference ccall_ref, wasm::TrapId trap_zero) |
|
OpIndex | UnOpImpl (WasmOpcode opcode, OpIndex arg, ValueType input_type) |
|
OpIndex | BinOpImpl (WasmOpcode opcode, OpIndex lhs, OpIndex rhs) |
|
std::pair< V< WordPtr >, compiler::BoundsCheckResult > | BoundsCheckMem (const wasm::WasmMemory *memory, MemoryRepresentation repr, OpIndex index, uintptr_t offset, compiler::EnforceBoundsCheck enforce_bounds_check, compiler::AlignmentCheck alignment_check) |
|
V< WordPtr > | MemStart (uint32_t index) |
|
V< WordPtr > | MemBuffer (uint32_t mem_index, uintptr_t offset) |
|
V< WordPtr > | MemSize (uint32_t index) |
|
LoadOp::Kind | GetMemoryAccessKind (MemoryRepresentation repr, compiler::BoundsCheckResult bounds_check_result) |
|
void | TraceMemoryOperation (FullDecoder *decoder, bool is_store, MemoryRepresentation repr, V< WordPtr > index, uintptr_t offset) |
|
void | StackCheck (WasmStackCheckOp::Kind kind, FullDecoder *decoder) |
|
std::pair< V< Word32 >, V< HeapObject > > | BuildImportedFunctionTargetAndImplicitArg (FullDecoder *decoder, uint32_t function_index) |
|
std::pair< V< Word32 >, V< ExposedTrustedObject > > | BuildIndirectCallTargetAndImplicitArg (FullDecoder *decoder, V< WordPtr > index_wordptr, CallIndirectImmediate imm, bool needs_type_or_null_check=true) |
|
std::pair< V< Word32 >, V< ExposedTrustedObject > > | BuildFunctionReferenceTargetAndImplicitArg (V< WasmFuncRef > func_ref, ValueType type) |
|
OpIndex | AnnotateResultIfReference (OpIndex result, wasm::ValueType type) |
|
void | BuildWasmCall (FullDecoder *decoder, const FunctionSig *sig, V< CallTarget > callee, V< HeapObject > ref, const Value args[], Value returns[], compiler::WasmCallKind call_kind=compiler::WasmCallKind::kWasmFunction, CheckForException check_for_exception=CheckForException::kCatchInThisFrame) |
|
void | BuildWasmMaybeReturnCall (FullDecoder *decoder, const FunctionSig *sig, V< CallTarget > callee, V< HeapObject > ref, const Value args[], compiler::WasmCallKind call_kind=compiler::kWasmFunction) |
|
template<typename Descriptor >
requires (!Descriptor::kNeedsContext) |
compiler::turboshaft::detail::index_type_for_t< typename Descriptor::results_t > | CallBuiltinThroughJumptable (FullDecoder *decoder, const typename Descriptor::arguments_t &args, CheckForException check_for_exception=CheckForException::kNo) |
|
template<typename Descriptor >
requires Descriptor::kNeedsContext |
compiler::turboshaft::detail::index_type_for_t< typename Descriptor::results_t > | CallBuiltinThroughJumptable (FullDecoder *decoder, V< Context > context, const typename Descriptor::arguments_t &args, CheckForException check_for_exception=CheckForException::kNo) |
|
template<typename Descriptor >
requires (!Descriptor::kNeedsContext) |
compiler::turboshaft::detail::index_type_for_t< typename Descriptor::results_t > | CallBuiltinByPointer (FullDecoder *decoder, const typename Descriptor::arguments_t &args, CheckForException check_for_exception=CheckForException::kNo) |
|
void | MaybeSetPositionToParent (OpIndex call, CheckForException check_for_exception) |
|
OpIndex | CallAndMaybeCatchException (FullDecoder *decoder, V< CallTarget > callee, base::Vector< const OpIndex > args, const TSCallDescriptor *descriptor, CheckForException check_for_exception, OpEffects effects) |
|
OpIndex | CallCStackSlotToInt32 (OpIndex arg, ExternalReference ref, MemoryRepresentation arg_type) |
|
V< Word32 > | CallCStackSlotToInt32 (ExternalReference ref, std::initializer_list< std::pair< OpIndex, MemoryRepresentation > > args) |
|
OpIndex | CallCStackSlotToStackSlot (ExternalReference ref, MemoryRepresentation res_type, std::initializer_list< std::pair< OpIndex, MemoryRepresentation > > args) |
|
OpIndex | CallCStackSlotToStackSlot (OpIndex arg, ExternalReference ref, MemoryRepresentation arg_type) |
|
OpIndex | CallCStackSlotToStackSlot (OpIndex arg, ExternalReference ref, MemoryRepresentation arg_type, MemoryRepresentation res_type) |
|
OpIndex | CallCStackSlotToStackSlot (OpIndex arg0, OpIndex arg1, ExternalReference ref, MemoryRepresentation arg_type) |
|
V< WordPtr > | MemOrTableAddressToUintPtrOrOOBTrap (AddressType address_type, V< Word > index, TrapId trap_reason) |
|
V< WordPtr > | MemoryAddressToUintPtrOrOOBTrap (AddressType address_type, V< Word > index) |
|
V< WordPtr > | TableAddressToUintPtrOrOOBTrap (AddressType address_type, V< Word > index) |
|
V< Smi > | ChangeUint31ToSmi (V< Word32 > value) |
|
V< Word32 > | ChangeSmiToUint32 (V< Smi > value) |
|
void | BuildEncodeException32BitValue (V< FixedArray > values_array, uint32_t index, V< Word32 > value) |
|
V< Word32 > | BuildDecodeException32BitValue (V< FixedArray > exception_values_array, int index) |
|
V< Word64 > | BuildDecodeException64BitValue (V< FixedArray > exception_values_array, int index) |
|
void | UnpackWasmException (FullDecoder *decoder, V< Object > exception, base::Vector< Value > values) |
|
void | ThrowRef (FullDecoder *decoder, OpIndex exn) |
|
void | AsmjsStoreMem (V< Word32 > index, OpIndex value, MemoryRepresentation repr) |
|
OpIndex | AsmjsLoadMem (V< Word32 > index, MemoryRepresentation repr) |
|
void | BoundsCheckArray (V< WasmArrayNullable > array, V< Word32 > index, ValueType array_type) |
|
V< WasmArray > | BoundsCheckArrayWithLength (V< WasmArrayNullable > array, V< Word32 > index, V< Word32 > length, compiler::CheckForNull null_check) |
|
void | BrOnCastImpl (FullDecoder *decoder, V< Map > rtt, compiler::WasmTypeCheckConfig config, const Value &object, Value *value_on_branch, uint32_t br_depth, bool null_succeeds) |
|
void | BrOnCastFailImpl (FullDecoder *decoder, V< Map > rtt, compiler::WasmTypeCheckConfig config, const Value &object, Value *value_on_fallthrough, uint32_t br_depth, bool null_succeeds) |
|
V< HeapObject > | ArrayNewImpl (FullDecoder *decoder, ModuleTypeIndex index, const ArrayType *array_type, V< Word32 > length, V< Any > initial_value) |
|
V< Map > | GetRttFromDescriptor (const Value &descriptor) |
|
V< WasmStruct > | StructNewImpl (FullDecoder *decoder, const StructIndexImmediate &imm, const Value &descriptor, OpIndex args[]) |
|
bool | IsSimd128ZeroConstant (OpIndex op) |
|
void | ArrayFillImpl (V< WasmArray > array, V< Word32 > index, V< Any > value, OpIndex length, const wasm::ArrayType *type, bool emit_write_barrier) |
|
V< WordPtr > | StoreInStackSlot (OpIndex value, wasm::ValueType type) |
|
bool | InlineTargetIsTypeCompatible (const WasmModule *module, const FunctionSig *sig, const FunctionSig *inlinee) |
|
void | InlineWasmCall (FullDecoder *decoder, uint32_t func_index, const FunctionSig *sig, uint32_t feedback_case, bool is_tail_call, const Value args[], Value returns[]) |
|
TrapId | GetTrapIdForTrap (wasm::TrapReason reason) |
|
OpIndex | WasmPositionToOpIndex (WasmCodePosition position, int inlining_id) |
|
SourcePosition | OpIndexToSourcePosition (OpIndex index) |
|
BranchHint | GetBranchHint (FullDecoder *decoder) |
|
bool | should_inline (FullDecoder *decoder, int feedback_slot, int size) |
|
void | set_inlining_decisions (InliningTree *inlining_decisions) |
|
BlockPhis * | return_phis () |
|
void | set_inlining_id (uint8_t inlining_id) |
|
void | set_parent_position (SourcePosition position) |
|
int | no_liftoff_inlining_budget () |
|
void | set_no_liftoff_inlining_budget (int no_liftoff_inlining_budget) |
|
void | disable_deopts () |
|
bool | deopts_enabled () |
|
V< WasmTrustedInstanceData > | trusted_instance_data (bool element_is_shared) |
|
V< FixedArray > | managed_object_maps (bool type_is_shared) |
|