From af4da780be986e9aad22ab18395f1548ac1d1937 Mon Sep 17 00:00:00 2001 From: Alexander Markov Date: Thu, 2 Jun 2022 23:39:45 +0000 Subject: [PATCH] [vm] New async/async* implementation in JIT mode The new implementation is based on suspend/resume stubs and doesn't use desugaring of async functions on kernel AST. Previously, new implementation of async/async* was only supported in AOT mode. This change adds all necessary bits for the JIT mode: * Suspending variable-length frames (for unoptimized code). * Handling of Code and pool pointers in Dart stack frames. * OSR. * Deoptimization. * Hot reload. * Debugger. The new implementation is not enabled in JIT mode yet. Design doc: go/compact-async-await. TEST=ci Issue: https://github.com/dart-lang/sdk/issues/48378 Change-Id: I477d6684bdce7cbc1edb179ae2271ff598b7dcc5 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/246081 Reviewed-by: Martin Kustermann Reviewed-by: Johnni Winther Commit-Queue: Alexander Markov Reviewed-by: Slava Egorov --- pkg/front_end/test/fasta/testing/suite.dart | 40 +- .../vm/compiler/assembler/assembler_arm.cc | 6 +- runtime/vm/compiler/assembler/assembler_arm.h | 5 + .../vm/compiler/assembler/assembler_arm64.cc | 6 +- .../vm/compiler/assembler/assembler_arm64.h | 4 + .../vm/compiler/assembler/assembler_ia32.h | 7 + .../vm/compiler/assembler/assembler_riscv.cc | 5 +- .../vm/compiler/assembler/assembler_riscv.h | 6 + .../vm/compiler/assembler/assembler_x64.cc | 2 +- runtime/vm/compiler/assembler/assembler_x64.h | 7 + .../compiler/backend/constant_propagator.cc | 4 + .../backend/flow_graph_compiler_arm.cc | 3 +- .../backend/flow_graph_compiler_arm64.cc | 3 +- .../backend/flow_graph_compiler_ia32.cc | 3 +- .../backend/flow_graph_compiler_riscv.cc | 3 +- .../backend/flow_graph_compiler_x64.cc | 3 +- runtime/vm/compiler/backend/il.cc | 56 +- runtime/vm/compiler/backend/il.h | 51 +- runtime/vm/compiler/backend/il_ia32.cc | 4 +- runtime/vm/compiler/backend/il_printer.cc | 15 +- runtime/vm/compiler/backend/linearscan.cc | 97 +- runtime/vm/compiler/backend/linearscan.h | 10 + .../frontend/kernel_binary_flowgraph.cc | 27 +- runtime/vm/compiler/frontend/kernel_to_il.cc | 9 + runtime/vm/compiler/frontend/kernel_to_il.h | 3 + runtime/vm/compiler/runtime_api.h | 21 +- .../vm/compiler/runtime_offsets_extracted.h | 5368 ++++++++++------- runtime/vm/compiler/runtime_offsets_list.h | 21 +- runtime/vm/compiler/stub_code_compiler.cc | 291 +- runtime/vm/compiler/stub_code_compiler.h | 16 +- runtime/vm/constants_arm.h | 1 + runtime/vm/constants_arm64.h | 1 + runtime/vm/constants_ia32.h | 9 +- runtime/vm/constants_riscv.h | 1 + runtime/vm/constants_x64.h | 1 + runtime/vm/debugger.cc | 202 +- runtime/vm/debugger.h | 16 +- runtime/vm/exceptions.cc | 5 +- runtime/vm/isolate.h | 11 + runtime/vm/isolate_reload.cc | 62 +- runtime/vm/isolate_reload.h | 5 +- runtime/vm/kernel_loader.cc | 6 - runtime/vm/object.cc | 29 +- runtime/vm/object.h | 37 +- runtime/vm/object_reload.cc | 3 +- runtime/vm/object_store.cc | 5 + runtime/vm/object_store.h | 1 + runtime/vm/pending_deopts.cc | 12 +- runtime/vm/pending_deopts.h | 4 +- runtime/vm/raw_object.cc | 6 +- runtime/vm/raw_object.h | 9 + runtime/vm/runtime_entry.cc | 102 +- runtime/vm/runtime_entry_list.h | 1 + runtime/vm/symbols.h | 1 + runtime/vm/thread.h | 8 + runtime/vm/type_testing_stubs_test.cc | 2 + sdk/lib/_internal/vm/lib/async_patch.dart | 1 + tests/language/async/await_test.dart | 3 +- tests/language/await/future_test.dart | 1 + tests/language_2/async/await_test.dart | 3 +- tests/language_2/await/future_test.dart | 1 + 61 files changed, 4161 insertions(+), 2484 deletions(-) diff --git a/pkg/front_end/test/fasta/testing/suite.dart b/pkg/front_end/test/fasta/testing/suite.dart index a72f1992204..2ed7f4ca9af 100644 --- a/pkg/front_end/test/fasta/testing/suite.dart +++ b/pkg/front_end/test/fasta/testing/suite.dart @@ -66,7 +66,6 @@ import 'package:front_end/src/fasta/util/parser_ast.dart' import 'package:front_end/src/fasta/util/parser_ast_helper.dart'; import 'package:kernel/ast.dart' show - AwaitExpression, BasicLiteral, Class, Component, @@ -87,9 +86,7 @@ import 'package:kernel/ast.dart' TreeNode, UnevaluatedConstant, VariableDeclaration, - Version, - Visitor, - VisitorVoidMixin; + Version; import 'package:kernel/binary/ast_to_binary.dart' show BinaryPrinter; import 'package:kernel/class_hierarchy.dart' show ClassHierarchy; import 'package:kernel/core_types.dart' show CoreTypes; @@ -2421,13 +2418,6 @@ class Transform extends Step { backendTarget.performModularTransformations = false; } } - List errors = VerifyTransformed.verify(component, backendTarget); - if (errors.isNotEmpty) { - return new Result( - result, - context.expectationSet["TransformVerificationError"], - errors.join('\n')); - } if (backendTarget is TestTarget && backendTarget.hasGlobalTransformation) { component = @@ -2492,34 +2482,6 @@ class Verify extends Step { } } -/// Visitor that checks that the component has been transformed properly. -// TODO(johnniwinther): Add checks for all nodes that are unsupported after -// transformation. -class VerifyTransformed extends Visitor with VisitorVoidMixin { - final Target target; - List errors = []; - - VerifyTransformed(this.target); - - @override - void defaultNode(Node node) { - node.visitChildren(this); - } - - @override - void visitAwaitExpression(AwaitExpression node) { - if (target is VmTarget) { - errors.add("ERROR: Untransformed await expression: $node"); - } - } - - static List verify(Component component, Target target) { - VerifyTransformed visitor = new VerifyTransformed(target); - component.accept(visitor); - return visitor.errors; - } -} - mixin TestTarget on Target { bool performModularTransformations = false; diff --git a/runtime/vm/compiler/assembler/assembler_arm.cc b/runtime/vm/compiler/assembler/assembler_arm.cc index 67f8fb8c26f..2839cd8ca0e 100644 --- a/runtime/vm/compiler/assembler/assembler_arm.cc +++ b/runtime/vm/compiler/assembler/assembler_arm.cc @@ -1587,7 +1587,7 @@ void Assembler::CheckCodePointer() { target::Instructions::HeaderSize() - kHeapObjectTag; mov(R0, Operand(PC)); AddImmediate(R0, -offset); - ldr(IP, FieldAddress(CODE_REG, target::Code::saved_instructions_offset())); + ldr(IP, FieldAddress(CODE_REG, target::Code::instructions_offset())); cmp(R0, Operand(IP)); b(&instructions_ok, EQ); bkpt(1); @@ -3308,6 +3308,10 @@ void Assembler::Ret(Condition cond /* = AL */) { READS_RETURN_ADDRESS_FROM_LR(bx(LR, cond)); } +void Assembler::SetReturnAddress(Register value) { + RESTORES_RETURN_ADDRESS_FROM_REGISTER_TO_LR(MoveRegister(LR, value)); +} + void Assembler::ReserveAlignedFrameSpace(intptr_t frame_space) { // Reserve space for arguments and align frame before entering // the C++ world. diff --git a/runtime/vm/compiler/assembler/assembler_arm.h b/runtime/vm/compiler/assembler/assembler_arm.h index 00dc85bd38f..8a714cfcac4 100644 --- a/runtime/vm/compiler/assembler/assembler_arm.h +++ b/runtime/vm/compiler/assembler/assembler_arm.h @@ -1300,6 +1300,11 @@ class Assembler : public AssemblerBase { void EnterFrame(RegList regs, intptr_t frame_space); void LeaveFrame(RegList regs, bool allow_pop_pc = false); void Ret(Condition cond = AL); + + // Sets the return address to [value] as if there was a call. + // On ARM sets LR. + void SetReturnAddress(Register value); + void ReserveAlignedFrameSpace(intptr_t frame_space); // In debug mode, this generates code to check that: diff --git a/runtime/vm/compiler/assembler/assembler_arm64.cc b/runtime/vm/compiler/assembler/assembler_arm64.cc index e282fcb4784..f9047339131 100644 --- a/runtime/vm/compiler/assembler/assembler_arm64.cc +++ b/runtime/vm/compiler/assembler/assembler_arm64.cc @@ -1540,7 +1540,7 @@ void Assembler::CheckCodePointer() { const intptr_t entry_offset = CodeSize() + target::Instructions::HeaderSize() - kHeapObjectTag; adr(R0, Immediate(-entry_offset)); - ldr(TMP, FieldAddress(CODE_REG, target::Code::saved_instructions_offset())); + ldr(TMP, FieldAddress(CODE_REG, target::Code::instructions_offset())); cmp(R0, Operand(TMP)); b(&instructions_ok, EQ); brk(1); @@ -1583,6 +1583,10 @@ void Assembler::RestoreCSP() { mov(CSP, SP); } +void Assembler::SetReturnAddress(Register value) { + RESTORES_RETURN_ADDRESS_FROM_REGISTER_TO_LR(MoveRegister(LR, value)); +} + void Assembler::EnterFrame(intptr_t frame_size) { SPILLS_LR_TO_FRAME(PushPair(FP, LR)); // low: FP, high: LR. mov(FP, SP); diff --git a/runtime/vm/compiler/assembler/assembler_arm64.h b/runtime/vm/compiler/assembler/assembler_arm64.h index 3e791528efb..fa1d8081461 100644 --- a/runtime/vm/compiler/assembler/assembler_arm64.h +++ b/runtime/vm/compiler/assembler/assembler_arm64.h @@ -2121,6 +2121,10 @@ class Assembler : public AssemblerBase { void LeaveFrame(); void Ret() { ret(); } + // Sets the return address to [value] as if there was a call. + // On ARM64 sets LR. + void SetReturnAddress(Register value); + // Emit code to transition between generated mode and native mode. // // These require and ensure that CSP and SP are equal and aligned and require diff --git a/runtime/vm/compiler/assembler/assembler_ia32.h b/runtime/vm/compiler/assembler/assembler_ia32.h index b97296c9b51..7ef533939fe 100644 --- a/runtime/vm/compiler/assembler/assembler_ia32.h +++ b/runtime/vm/compiler/assembler/assembler_ia32.h @@ -573,6 +573,13 @@ class Assembler : public AssemblerBase { */ void Ret() { ret(); } + + // Sets the return address to [value] as if there was a call. + // On IA32 pushes [value]. + void SetReturnAddress(Register value) { + PushRegister(value); + } + void CompareRegisters(Register a, Register b); void CompareObjectRegisters(Register a, Register b) { CompareRegisters(a, b); diff --git a/runtime/vm/compiler/assembler/assembler_riscv.cc b/runtime/vm/compiler/assembler/assembler_riscv.cc index 0c1caab007d..cdfa87ac011 100644 --- a/runtime/vm/compiler/assembler/assembler_riscv.cc +++ b/runtime/vm/compiler/assembler/assembler_riscv.cc @@ -2727,6 +2727,9 @@ void Assembler::AddImmediate(Register rd, Register rs1, intx_t imm, OperandSize sz) { + if ((imm == 0) && (rd == rs1)) { + return; + } if (IsITypeImm(imm)) { addi(rd, rs1, imm); } else { @@ -3646,7 +3649,7 @@ void Assembler::CheckCodePointer() { intx_t hi = (imm - lo) << (XLEN - 32) >> (XLEN - 32); auipc(TMP, hi); addi(TMP, TMP, lo); - lx(TMP2, FieldAddress(CODE_REG, target::Code::saved_instructions_offset())); + lx(TMP2, FieldAddress(CODE_REG, target::Code::instructions_offset())); beq(TMP, TMP2, &instructions_ok, kNearJump); ebreak(); Bind(&instructions_ok); diff --git a/runtime/vm/compiler/assembler/assembler_riscv.h b/runtime/vm/compiler/assembler/assembler_riscv.h index 914301b5179..eb2708e5cec 100644 --- a/runtime/vm/compiler/assembler/assembler_riscv.h +++ b/runtime/vm/compiler/assembler/assembler_riscv.h @@ -1231,6 +1231,12 @@ class Assembler : public MicroAssembler { void LeaveFrame(); void Ret() { ret(); } + // Sets the return address to [value] as if there was a call. + // On RISC-V sets RA. + void SetReturnAddress(Register value) { + mv(RA, value); + } + // Emit code to transition between generated mode and native mode. // // These require and ensure that CSP and SP are equal and aligned and require diff --git a/runtime/vm/compiler/assembler/assembler_x64.cc b/runtime/vm/compiler/assembler/assembler_x64.cc index f4f0dd4abf9..2d3ebb0b37e 100644 --- a/runtime/vm/compiler/assembler/assembler_x64.cc +++ b/runtime/vm/compiler/assembler/assembler_x64.cc @@ -2069,7 +2069,7 @@ void Assembler::CheckCodePointer() { leaq(RAX, Address::AddressRIPRelative(-header_to_rip_offset)); ASSERT(CodeSize() == (header_to_rip_offset - header_to_entry_offset)); } - cmpq(RAX, FieldAddress(CODE_REG, target::Code::saved_instructions_offset())); + cmpq(RAX, FieldAddress(CODE_REG, target::Code::instructions_offset())); j(EQUAL, &instructions_ok); int3(); Bind(&instructions_ok); diff --git a/runtime/vm/compiler/assembler/assembler_x64.h b/runtime/vm/compiler/assembler/assembler_x64.h index 9f3fb6e1279..eafff9bbe37 100644 --- a/runtime/vm/compiler/assembler/assembler_x64.h +++ b/runtime/vm/compiler/assembler/assembler_x64.h @@ -711,6 +711,13 @@ class Assembler : public AssemblerBase { // Methods for High-level operations and implemented on all architectures. void Ret() { ret(); } + + // Sets the return address to [value] as if there was a call. + // On X64 pushes [value]. + void SetReturnAddress(Register value) { + PushRegister(value); + } + void CompareRegisters(Register a, Register b); void CompareObjectRegisters(Register a, Register b) { OBJ(cmp)(a, b); } void BranchIf(Condition condition, diff --git a/runtime/vm/compiler/backend/constant_propagator.cc b/runtime/vm/compiler/backend/constant_propagator.cc index 51af8e2b3ee..85595e1f8c7 100644 --- a/runtime/vm/compiler/backend/constant_propagator.cc +++ b/runtime/vm/compiler/backend/constant_propagator.cc @@ -1456,6 +1456,10 @@ void ConstantPropagator::VisitCall1ArgStub(Call1ArgStubInstr* instr) { SetValue(instr, non_constant_); } +void ConstantPropagator::VisitSuspend(SuspendInstr* instr) { + SetValue(instr, non_constant_); +} + void ConstantPropagator::VisitLoadThread(LoadThreadInstr* instr) { SetValue(instr, non_constant_); } diff --git a/runtime/vm/compiler/backend/flow_graph_compiler_arm.cc b/runtime/vm/compiler/backend/flow_graph_compiler_arm.cc index bce15d9d056..5a9918a9e80 100644 --- a/runtime/vm/compiler/backend/flow_graph_compiler_arm.cc +++ b/runtime/vm/compiler/backend/flow_graph_compiler_arm.cc @@ -373,7 +373,8 @@ void FlowGraphCompiler::EmitPrologue() { Register value_reg = slot_index == args_desc_slot ? ARGS_DESC_REG : R0; __ StoreToOffset(value_reg, FP, slot_index * compiler::target::kWordSize); } - } else if (parsed_function().suspend_state_var() != nullptr) { + } else if (parsed_function().suspend_state_var() != nullptr && + !flow_graph().IsCompiledForOsr()) { // Initialize synthetic :suspend_state variable early // as it may be accessed by GC and exception handling before // InitSuspendableFunction stub is called. diff --git a/runtime/vm/compiler/backend/flow_graph_compiler_arm64.cc b/runtime/vm/compiler/backend/flow_graph_compiler_arm64.cc index 7f86e887237..fd697f2d507 100644 --- a/runtime/vm/compiler/backend/flow_graph_compiler_arm64.cc +++ b/runtime/vm/compiler/backend/flow_graph_compiler_arm64.cc @@ -363,7 +363,8 @@ void FlowGraphCompiler::EmitPrologue() { slot_index == args_desc_slot ? ARGS_DESC_REG : NULL_REG; __ StoreToOffset(value_reg, FP, slot_index * kWordSize); } - } else if (parsed_function().suspend_state_var() != nullptr) { + } else if (parsed_function().suspend_state_var() != nullptr && + !flow_graph().IsCompiledForOsr()) { // Initialize synthetic :suspend_state variable early // as it may be accessed by GC and exception handling before // InitSuspendableFunction stub is called. diff --git a/runtime/vm/compiler/backend/flow_graph_compiler_ia32.cc b/runtime/vm/compiler/backend/flow_graph_compiler_ia32.cc index e4b5071e305..db8d71e869f 100644 --- a/runtime/vm/compiler/backend/flow_graph_compiler_ia32.cc +++ b/runtime/vm/compiler/backend/flow_graph_compiler_ia32.cc @@ -450,7 +450,8 @@ void FlowGraphCompiler::EmitPrologue() { Register value_reg = slot_index == args_desc_slot ? ARGS_DESC_REG : EAX; __ movl(compiler::Address(EBP, slot_index * kWordSize), value_reg); } - } else if (parsed_function().suspend_state_var() != nullptr) { + } else if (parsed_function().suspend_state_var() != nullptr && + !flow_graph().IsCompiledForOsr()) { // Initialize synthetic :suspend_state variable early // as it may be accessed by GC and exception handling before // InitSuspendableFunction stub is called. diff --git a/runtime/vm/compiler/backend/flow_graph_compiler_riscv.cc b/runtime/vm/compiler/backend/flow_graph_compiler_riscv.cc index 7a3215d7a5a..58f22365efa 100644 --- a/runtime/vm/compiler/backend/flow_graph_compiler_riscv.cc +++ b/runtime/vm/compiler/backend/flow_graph_compiler_riscv.cc @@ -357,7 +357,8 @@ void FlowGraphCompiler::EmitPrologue() { __ StoreToOffset(value_reg, SP, (slot_index + fp_to_sp_delta) * kWordSize); } - } else if (parsed_function().suspend_state_var() != nullptr) { + } else if (parsed_function().suspend_state_var() != nullptr && + !flow_graph().IsCompiledForOsr()) { // Initialize synthetic :suspend_state variable early // as it may be accessed by GC and exception handling before // InitSuspendableFunction stub is called. diff --git a/runtime/vm/compiler/backend/flow_graph_compiler_x64.cc b/runtime/vm/compiler/backend/flow_graph_compiler_x64.cc index 1c87031834a..ba0add4917d 100644 --- a/runtime/vm/compiler/backend/flow_graph_compiler_x64.cc +++ b/runtime/vm/compiler/backend/flow_graph_compiler_x64.cc @@ -369,7 +369,8 @@ void FlowGraphCompiler::EmitPrologue() { Register value_reg = slot_index == args_desc_slot ? ARGS_DESC_REG : RAX; __ movq(compiler::Address(RBP, slot_index * kWordSize), value_reg); } - } else if (parsed_function().suspend_state_var() != nullptr) { + } else if (parsed_function().suspend_state_var() != nullptr && + !flow_graph().IsCompiledForOsr()) { // Initialize synthetic :suspend_state variable early // as it may be accessed by GC and exception handling before // InitSuspendableFunction stub is called. diff --git a/runtime/vm/compiler/backend/il.cc b/runtime/vm/compiler/backend/il.cc index e4ba8ff02e4..95d5237f6ae 100644 --- a/runtime/vm/compiler/backend/il.cc +++ b/runtime/vm/compiler/backend/il.cc @@ -7298,10 +7298,6 @@ LocationSummary* Call1ArgStubInstr::MakeLocationSummary(Zone* zone, locs->set_in(0, Location::RegisterLocation( InitSuspendableFunctionStubABI::kTypeArgsReg)); break; - case StubId::kAwait: - case StubId::kYieldAsyncStar: - locs->set_in(0, Location::RegisterLocation(SuspendStubABI::kArgumentReg)); - break; } locs->set_out(0, Location::RegisterLocation(CallingConventions::kReturnReg)); return locs; @@ -7314,12 +7310,34 @@ void Call1ArgStubInstr::EmitNativeCode(FlowGraphCompiler* compiler) { case StubId::kInitAsync: stub = object_store->init_async_stub(); break; - case StubId::kAwait: - stub = object_store->await_stub(); - break; case StubId::kInitAsyncStar: stub = object_store->init_async_star_stub(); break; + } + compiler->GenerateStubCall(source(), stub, UntaggedPcDescriptors::kOther, + locs(), deopt_id(), env()); +} + +LocationSummary* SuspendInstr::MakeLocationSummary(Zone* zone, bool opt) const { + const intptr_t kNumInputs = 1; + const intptr_t kNumTemps = 0; + LocationSummary* locs = new (zone) + LocationSummary(zone, kNumInputs, kNumTemps, LocationSummary::kCall); + locs->set_in(0, Location::RegisterLocation(SuspendStubABI::kArgumentReg)); + locs->set_out(0, Location::RegisterLocation(CallingConventions::kReturnReg)); + return locs; +} + +void SuspendInstr::EmitNativeCode(FlowGraphCompiler* compiler) { + // Use deopt_id as a yield index. + compiler->EmitYieldPositionMetadata(source(), deopt_id()); + + ObjectStore* object_store = compiler->isolate_group()->object_store(); + Code& stub = Code::ZoneHandle(compiler->zone()); + switch (stub_id_) { + case StubId::kAwait: + stub = object_store->await_stub(); + break; case StubId::kYieldAsyncStar: stub = object_store->yield_async_star_stub(); break; @@ -7328,18 +7346,18 @@ void Call1ArgStubInstr::EmitNativeCode(FlowGraphCompiler* compiler) { locs(), deopt_id(), env()); #if defined(TARGET_ARCH_X64) || defined(TARGET_ARCH_IA32) - if ((stub_id_ == StubId::kAwait) || (stub_id_ == StubId::kYieldAsyncStar)) { - // On x86 (X64 and IA32) mismatch between calls and returns - // significantly regresses performance. So suspend stub - // does not return directly to the caller. Instead, a small - // epilogue is generated right after the call to suspend stub, - // and resume stub adjusts resume PC to skip this epilogue. - const intptr_t start = compiler->assembler()->CodeSize(); - __ LeaveFrame(); - __ ret(); - RELEASE_ASSERT(compiler->assembler()->CodeSize() - start == - SuspendStubABI::kResumePcDistance); - } + // On x86 (X64 and IA32) mismatch between calls and returns + // significantly regresses performance. So suspend stub + // does not return directly to the caller. Instead, a small + // epilogue is generated right after the call to suspend stub, + // and resume stub adjusts resume PC to skip this epilogue. + const intptr_t start = compiler->assembler()->CodeSize(); + __ LeaveFrame(); + __ ret(); + RELEASE_ASSERT(compiler->assembler()->CodeSize() - start == + SuspendStubABI::kResumePcDistance); + compiler->EmitCallsiteMetadata(source(), resume_deopt_id(), + UntaggedPcDescriptors::kOther, locs(), env()); #endif } diff --git a/runtime/vm/compiler/backend/il.h b/runtime/vm/compiler/backend/il.h index 9f7562fc496..676dd00cfa4 100644 --- a/runtime/vm/compiler/backend/il.h +++ b/runtime/vm/compiler/backend/il.h @@ -529,7 +529,8 @@ struct InstrAttrs { M(Call1ArgStub, _) \ M(LoadThread, kNoGC) \ M(Deoptimize, kNoGC) \ - M(SimdOp, kNoGC) + M(SimdOp, kNoGC) \ + M(Suspend, _) #define FOR_EACH_ABSTRACT_INSTRUCTION(M) \ M(Allocation, _) \ @@ -9582,10 +9583,8 @@ class SimdOpInstr : public Definition { class Call1ArgStubInstr : public TemplateDefinition<1, Throws> { public: enum class StubId { - kAwait, kInitAsync, kInitAsyncStar, - kYieldAsyncStar, }; Call1ArgStubInstr(const InstructionSource& source, @@ -9605,6 +9604,9 @@ class Call1ArgStubInstr : public TemplateDefinition<1, Throws> { virtual bool CanCallDart() const { return true; } virtual bool ComputeCanDeoptimize() const { return true; } virtual bool HasUnknownSideEffects() const { return true; } + virtual intptr_t NumberOfInputsConsumedBeforeCall() const { + return InputCount(); + } DECLARE_INSTRUCTION(Call1ArgStub); PRINT_OPERANDS_TO_SUPPORT @@ -9616,6 +9618,49 @@ class Call1ArgStubInstr : public TemplateDefinition<1, Throws> { DISALLOW_COPY_AND_ASSIGN(Call1ArgStubInstr); }; +// Suspends execution using the suspend stub specified using [StubId]. +class SuspendInstr : public TemplateDefinition<1, Throws> { + public: + enum class StubId { + kAwait, + kYieldAsyncStar, + }; + + SuspendInstr(const InstructionSource& source, + StubId stub_id, + Value* operand, + intptr_t deopt_id, + intptr_t resume_deopt_id) + : TemplateDefinition(source, deopt_id), + stub_id_(stub_id), + resume_deopt_id_(resume_deopt_id), + token_pos_(source.token_pos) { + SetInputAt(0, operand); + } + + Value* operand() const { return inputs_[0]; } + StubId stub_id() const { return stub_id_; } + intptr_t resume_deopt_id() const { return resume_deopt_id_; } + virtual TokenPosition token_pos() const { return token_pos_; } + + virtual bool CanCallDart() const { return true; } + virtual bool ComputeCanDeoptimize() const { return true; } + virtual bool HasUnknownSideEffects() const { return true; } + virtual intptr_t NumberOfInputsConsumedBeforeCall() const { + return InputCount(); + } + + DECLARE_INSTRUCTION(Suspend); + PRINT_OPERANDS_TO_SUPPORT + + private: + const StubId stub_id_; + const intptr_t resume_deopt_id_; + const TokenPosition token_pos_; + + DISALLOW_COPY_AND_ASSIGN(SuspendInstr); +}; + #undef DECLARE_INSTRUCTION class Environment : public ZoneAllocated { diff --git a/runtime/vm/compiler/backend/il_ia32.cc b/runtime/vm/compiler/backend/il_ia32.cc index 1513ce00bca..9d1ffa4664e 100644 --- a/runtime/vm/compiler/backend/il_ia32.cc +++ b/runtime/vm/compiler/backend/il_ia32.cc @@ -6503,8 +6503,8 @@ void IndirectGotoInstr::EmitNativeCode(FlowGraphCompiler* compiler) { EBP, compiler::target::frame_layout.code_from_fp * kWordSize)); // Load instructions object (active_instructions and Code::entry_point() may // not point to this instruction object any more; see Code::DisableDartCode). - __ movl(target_reg, compiler::FieldAddress( - target_reg, Code::saved_instructions_offset())); + __ movl(target_reg, + compiler::FieldAddress(target_reg, Code::instructions_offset())); __ addl(target_reg, compiler::Immediate(Instructions::HeaderSize() - kHeapObjectTag)); __ addl(target_reg, offset); diff --git a/runtime/vm/compiler/backend/il_printer.cc b/runtime/vm/compiler/backend/il_printer.cc index 8f983bd1b4e..fd5b452a12e 100644 --- a/runtime/vm/compiler/backend/il_printer.cc +++ b/runtime/vm/compiler/backend/il_printer.cc @@ -1370,12 +1370,21 @@ void Call1ArgStubInstr::PrintOperandsTo(BaseTextBuffer* f) const { case StubId::kInitAsync: name = "InitAsync"; break; - case StubId::kAwait: - name = "Await"; - break; case StubId::kInitAsyncStar: name = "InitAsyncStar"; break; + } + f->Printf("%s(", name); + operand()->PrintTo(f); + f->AddString(")"); +} + +void SuspendInstr::PrintOperandsTo(BaseTextBuffer* f) const { + const char* name = ""; + switch (stub_id_) { + case StubId::kAwait: + name = "Await"; + break; case StubId::kYieldAsyncStar: name = "YieldAsyncStar"; break; diff --git a/runtime/vm/compiler/backend/linearscan.cc b/runtime/vm/compiler/backend/linearscan.cc index 84384907e98..0dafbb87a41 100644 --- a/runtime/vm/compiler/backend/linearscan.cc +++ b/runtime/vm/compiler/backend/linearscan.cc @@ -645,7 +645,7 @@ void FlowGraphAllocator::BuildLiveRanges() { Definition* defn = (*catch_entry->initial_definitions())[i]; LiveRange* range = GetLiveRange(defn->ssa_temp_index()); range->DefineAt(catch_entry->start_pos()); // Defined at block entry. - ProcessInitialDefinition(defn, range, catch_entry); + ProcessInitialDefinition(defn, range, catch_entry, i); } } else if (auto entry = block->AsBlockEntryWithInitialDefs()) { ASSERT(block->IsFunctionEntry() || block->IsOsrEntry()); @@ -658,13 +658,13 @@ void FlowGraphAllocator::BuildLiveRanges() { GetLiveRange(ToSecondPairVreg(defn->ssa_temp_index())); range->AddUseInterval(entry->start_pos(), entry->start_pos() + 2); range->DefineAt(entry->start_pos()); - ProcessInitialDefinition(defn, range, entry, + ProcessInitialDefinition(defn, range, entry, i, /*second_location_for_definition=*/true); } LiveRange* range = GetLiveRange(defn->ssa_temp_index()); range->AddUseInterval(entry->start_pos(), entry->start_pos() + 2); range->DefineAt(entry->start_pos()); - ProcessInitialDefinition(defn, range, entry); + ProcessInitialDefinition(defn, range, entry, i); } } } @@ -679,13 +679,13 @@ void FlowGraphAllocator::BuildLiveRanges() { LiveRange* range = GetLiveRange(ToSecondPairVreg(defn->ssa_temp_index())); range->AddUseInterval(graph_entry->start_pos(), graph_entry->end_pos()); range->DefineAt(graph_entry->start_pos()); - ProcessInitialDefinition(defn, range, graph_entry, + ProcessInitialDefinition(defn, range, graph_entry, i, /*second_location_for_definition=*/true); } LiveRange* range = GetLiveRange(defn->ssa_temp_index()); range->AddUseInterval(graph_entry->start_pos(), graph_entry->end_pos()); range->DefineAt(graph_entry->start_pos()); - ProcessInitialDefinition(defn, range, graph_entry); + ProcessInitialDefinition(defn, range, graph_entry, i); } } @@ -697,10 +697,45 @@ void FlowGraphAllocator::SplitInitialDefinitionAt(LiveRange* range, } } +bool FlowGraphAllocator::IsSuspendStateParameter(Definition* defn) { + if (auto param = defn->AsParameter()) { + if ((param->GetBlock()->IsOsrEntry() || + param->GetBlock()->IsCatchBlockEntry()) && + flow_graph_.SuspendStateVar() != nullptr && + param->index() == flow_graph_.SuspendStateEnvIndex()) { + return true; + } + } + return false; +} + +void FlowGraphAllocator::AllocateSpillSlotForInitialDefinition( + intptr_t slot_index, + intptr_t range_end) { + if (slot_index < spill_slots_.length()) { + // Multiple initial definitions could exist for the same spill slot + // as function could have both OsrEntry and CatchBlockEntry. + spill_slots_[slot_index] = + Utils::Maximum(spill_slots_[slot_index], range_end); + ASSERT(!quad_spill_slots_[slot_index]); + ASSERT(!untagged_spill_slots_[slot_index]); + } else { + while (spill_slots_.length() < slot_index) { + spill_slots_.Add(kMaxPosition); + quad_spill_slots_.Add(false); + untagged_spill_slots_.Add(false); + } + spill_slots_.Add(range_end); + quad_spill_slots_.Add(false); + untagged_spill_slots_.Add(false); + } +} + void FlowGraphAllocator::ProcessInitialDefinition( Definition* defn, LiveRange* range, BlockEntryInstr* block, + intptr_t initial_definition_index, bool second_location_for_definition) { // Save the range end because it may change below. const intptr_t range_end = range->End(); @@ -779,21 +814,30 @@ void FlowGraphAllocator::ProcessInitialDefinition( Location spill_slot = range->spill_slot(); if (spill_slot.IsStackSlot() && spill_slot.base_reg() == FPREG && spill_slot.stack_index() <= - compiler::target::frame_layout.first_local_from_fp) { + compiler::target::frame_layout.first_local_from_fp && + !IsSuspendStateParameter(defn)) { // On entry to the function, range is stored on the stack above the FP in // the same space which is used for spill slots. Update spill slot state to // reflect that and prevent register allocator from reusing this space as a // spill slot. - spill_slots_.Add(range_end); - quad_spill_slots_.Add(false); - untagged_spill_slots_.Add(false); + // Do not allocate spill slot for OSR parameter corresponding to + // a synthetic :suspend_state variable as it is already allocated + // in AllocateSpillSlotForSuspendState. + ASSERT(defn->IsParameter()); + ASSERT(defn->AsParameter()->index() == initial_definition_index); + const intptr_t spill_slot_index = + -compiler::target::frame_layout.VariableIndexForFrameSlot( + spill_slot.stack_index()); + AllocateSpillSlotForInitialDefinition(spill_slot_index, range_end); // Note, all incoming parameters are assumed to be tagged. MarkAsObjectAtSafepoints(range); - } else if (defn->IsConstant() && block->IsCatchBlockEntry()) { + } else if (defn->IsConstant() && block->IsCatchBlockEntry() && + (initial_definition_index >= + flow_graph_.num_direct_parameters())) { // Constants at catch block entries consume spill slots. - spill_slots_.Add(range_end); - quad_spill_slots_.Add(false); - untagged_spill_slots_.Add(false); + AllocateSpillSlotForInitialDefinition( + initial_definition_index - flow_graph_.num_direct_parameters(), + range_end); } } @@ -994,26 +1038,45 @@ void FlowGraphAllocator::ProcessEnvironmentUses(BlockEntryInstr* block, for (intptr_t i = 0; i < env->Length(); ++i) { Value* value = env->ValueAt(i); Definition* def = value->definition(); + if (def->HasPairRepresentation()) { locations[i] = Location::Pair(Location::Any(), Location::Any()); } else { locations[i] = Location::Any(); } + if (env->outer() == nullptr && flow_graph_.SuspendStateVar() != nullptr && + i == flow_graph_.SuspendStateEnvIndex()) { + // Make sure synthetic :suspend_state variable gets a correct + // location on the stack frame. It is used by deoptimization. + const intptr_t slot_index = + compiler::target::frame_layout.FrameSlotForVariable( + flow_graph_.parsed_function().suspend_state_var()); + locations[i] = Location::StackSlot(slot_index, FPREG); + if (!def->IsConstant()) { + // Update live intervals for Parameter/Phi definitions + // corresponding to :suspend_state in OSR and try/catch cases as + // they are still used when resolving control flow. + ASSERT(def->IsParameter() || def->IsPhi()); + ASSERT(!def->HasPairRepresentation()); + LiveRange* range = GetLiveRange(def->ssa_temp_index()); + range->AddUseInterval(block_start_pos, use_pos); + } + continue; + } + if (def->IsPushArgument()) { // Frame size is unknown until after allocation. locations[i] = Location::NoLocation(); continue; } - ConstantInstr* constant = def->AsConstant(); - if (constant != NULL) { + if (auto constant = def->AsConstant()) { locations[i] = Location::Constant(constant); continue; } - MaterializeObjectInstr* mat = def->AsMaterializeObject(); - if (mat != NULL) { + if (auto mat = def->AsMaterializeObject()) { // MaterializeObject itself produces no value. But its uses // are treated as part of the environment: allocated locations // will be used when building deoptimization data. diff --git a/runtime/vm/compiler/backend/linearscan.h b/runtime/vm/compiler/backend/linearscan.h index 7c16c5f9954..8256a1a4004 100644 --- a/runtime/vm/compiler/backend/linearscan.h +++ b/runtime/vm/compiler/backend/linearscan.h @@ -147,6 +147,7 @@ class FlowGraphAllocator : public ValueObject { void ProcessInitialDefinition(Definition* defn, LiveRange* range, BlockEntryInstr* block, + intptr_t initial_definition_index, bool second_location_for_definition = false); void ConnectIncomingPhiMoves(JoinEntryInstr* join); void BlockLocation(Location loc, intptr_t from, intptr_t to); @@ -249,6 +250,15 @@ class FlowGraphAllocator : public ValueObject { // at all safepoints. void UpdateStackmapsForSuspendState(); + // Returns true if [defn] is an OsrEntry or CatchBlockEntry parameter + // corresponding to a synthetic :suspend_state variable. + bool IsSuspendStateParameter(Definition* defn); + + // Allocates spill slot [slot_index] for the initial definition of + // OsrEntry or CatchBlockEntry (Parameter or Constant). + void AllocateSpillSlotForInitialDefinition(intptr_t slot_index, + intptr_t range_end); + // Allocate the given live range to a spill slot. void Spill(LiveRange* range); diff --git a/runtime/vm/compiler/frontend/kernel_binary_flowgraph.cc b/runtime/vm/compiler/frontend/kernel_binary_flowgraph.cc index a1f6765cfc5..2badb5f7a73 100644 --- a/runtime/vm/compiler/frontend/kernel_binary_flowgraph.cc +++ b/runtime/vm/compiler/frontend/kernel_binary_flowgraph.cc @@ -699,8 +699,8 @@ Fragment StreamingFlowGraphBuilder::InitSuspendableFunction( Call1ArgStubInstr::StubId::kInitAsyncStar); body += Drop(); body += NullConstant(); - body += B->Call1ArgStub(TokenPosition::kNoSource, - Call1ArgStubInstr::StubId::kYieldAsyncStar); + body += B->Suspend(TokenPosition::kNoSource, + SuspendInstr::StubId::kYieldAsyncStar); body += Drop(); } return body; @@ -4373,7 +4373,10 @@ Fragment StreamingFlowGraphBuilder::BuildAwaitExpression( instructions += BuildExpression(); // read operand. - instructions += B->Call1ArgStub(pos, Call1ArgStubInstr::StubId::kAwait); + if (NeedsDebugStepCheck(parsed_function()->function(), pos)) { + instructions += DebugStepCheck(pos); + } + instructions += B->Suspend(pos, SuspendInstr::StubId::kAwait); return instructions; } @@ -5305,6 +5308,9 @@ Fragment StreamingFlowGraphBuilder::BuildYieldStatement( instructions += LoadNativeField(Slot::SuspendState_function_data()); instructions += BuildExpression(); // read expression. + if (NeedsDebugStepCheck(parsed_function()->function(), pos)) { + instructions += DebugStepCheck(pos); + } auto& add_method = Function::ZoneHandle(Z); const bool is_yield_star = (flags & kYieldStatementFlagYieldStar) != 0; @@ -5314,15 +5320,15 @@ Fragment StreamingFlowGraphBuilder::BuildYieldStatement( } else { add_method = IG->object_store()->async_star_stream_controller_add(); } - instructions += StaticCall(pos, add_method, 2, ICData::kNoRebind); + instructions += + StaticCall(TokenPosition::kNoSource, add_method, 2, ICData::kNoRebind); if (is_yield_star) { // Discard result of _AsyncStarStreamController.addStream(). instructions += Drop(); // Suspend and test value passed to the resumed async* body. instructions += NullConstant(); - instructions += - B->Call1ArgStub(pos, Call1ArgStubInstr::StubId::kYieldAsyncStar); + instructions += B->Suspend(pos, SuspendInstr::StubId::kYieldAsyncStar); } else { // Test value returned by _AsyncStarStreamController.add(). } @@ -5339,8 +5345,7 @@ Fragment StreamingFlowGraphBuilder::BuildYieldStatement( instructions = Fragment(instructions.entry, continue_execution); if (!is_yield_star) { instructions += NullConstant(); - instructions += - B->Call1ArgStub(pos, Call1ArgStubInstr::StubId::kYieldAsyncStar); + instructions += B->Suspend(pos, SuspendInstr::StubId::kYieldAsyncStar); instructions += Drop(); } @@ -5586,9 +5591,6 @@ Fragment StreamingFlowGraphBuilder::BuildFunctionNode( } if (function_node_helper.async_marker_ == FunctionNodeHelper::kAsync) { - if (!FLAG_precompiled_mode) { - FATAL("Compact async functions are only supported in AOT mode."); - } function.set_modifier(UntaggedFunction::kAsync); function.set_is_debuggable(true); function.set_is_inlinable(false); @@ -5596,9 +5598,6 @@ Fragment StreamingFlowGraphBuilder::BuildFunctionNode( ASSERT(function.IsCompactAsyncFunction()); } else if (function_node_helper.async_marker_ == FunctionNodeHelper::kAsyncStar) { - if (!FLAG_precompiled_mode) { - FATAL("Compact async* functions are only supported in AOT mode."); - } function.set_modifier(UntaggedFunction::kAsyncGen); function.set_is_debuggable(true); function.set_is_inlinable(false); diff --git a/runtime/vm/compiler/frontend/kernel_to_il.cc b/runtime/vm/compiler/frontend/kernel_to_il.cc index 8a20c376361..4d50fc799fb 100644 --- a/runtime/vm/compiler/frontend/kernel_to_il.cc +++ b/runtime/vm/compiler/frontend/kernel_to_il.cc @@ -4254,6 +4254,15 @@ Fragment FlowGraphBuilder::Call1ArgStub(TokenPosition position, return Fragment(instr); } +Fragment FlowGraphBuilder::Suspend(TokenPosition position, + SuspendInstr::StubId stub_id) { + SuspendInstr* instr = + new (Z) SuspendInstr(InstructionSource(position), stub_id, Pop(), + GetNextDeoptId(), GetNextDeoptId()); + Push(instr); + return Fragment(instr); +} + Fragment FlowGraphBuilder::WrapTypedDataBaseInCompound( const AbstractType& compound_type) { const auto& compound_sub_class = diff --git a/runtime/vm/compiler/frontend/kernel_to_il.h b/runtime/vm/compiler/frontend/kernel_to_il.h index ff641cc0fb6..fcb4245a8e5 100644 --- a/runtime/vm/compiler/frontend/kernel_to_il.h +++ b/runtime/vm/compiler/frontend/kernel_to_il.h @@ -424,6 +424,9 @@ class FlowGraphBuilder : public BaseFlowGraphBuilder { Fragment Call1ArgStub(TokenPosition position, Call1ArgStubInstr::StubId stub_id); + // Generates Suspend instruction. + Fragment Suspend(TokenPosition position, SuspendInstr::StubId stub_id); + LocalVariable* LookupVariable(intptr_t kernel_offset); // Build type argument type checks for the current function. diff --git a/runtime/vm/compiler/runtime_api.h b/runtime/vm/compiler/runtime_api.h index 3ce510e175b..723e2771449 100644 --- a/runtime/vm/compiler/runtime_api.h +++ b/runtime/vm/compiler/runtime_api.h @@ -993,6 +993,7 @@ class StackTrace : public AllStatic { class SuspendState : public AllStatic { public: + static word frame_capacity_offset(); static word frame_size_offset(); static word pc_offset(); static word function_data_offset(); @@ -1003,6 +1004,8 @@ class SuspendState : public AllStatic { static word HeaderSize(); static word InstanceSize(); static word InstanceSize(word payload_size); + static word FrameSizeGrowthGap(); + FINAL_CLASS(); }; @@ -1203,6 +1206,10 @@ class Thread : public AllStatic { static word null_cast_error_shared_with_fpu_regs_stub_offset(); static word range_error_shared_without_fpu_regs_stub_offset(); static word range_error_shared_with_fpu_regs_stub_offset(); + static word resume_stub_offset(); + static word return_async_not_future_stub_offset(); + static word return_async_star_stub_offset(); + static word return_async_stub_offset(); static word stack_overflow_shared_without_fpu_regs_entry_point_offset(); static word stack_overflow_shared_without_fpu_regs_stub_offset(); static word stack_overflow_shared_with_fpu_regs_entry_point_offset(); @@ -1214,6 +1221,7 @@ class Thread : public AllStatic { static word allocate_object_stub_offset(); static word allocate_object_parameterized_stub_offset(); static word allocate_object_slow_stub_offset(); + static word async_exception_handler_stub_offset(); static word optimize_stub_offset(); static word deoptimize_stub_offset(); static word enter_safepoint_stub_offset(); @@ -1276,6 +1284,15 @@ class ObjectStore : public AllStatic { static word int_type_offset(); static word string_type_offset(); static word type_type_offset(); + + static word suspend_state_await_offset(); + static word suspend_state_handle_exception_offset(); + static word suspend_state_init_async_offset(); + static word suspend_state_init_async_star_offset(); + static word suspend_state_return_async_offset(); + static word suspend_state_return_async_not_future_offset(); + static word suspend_state_return_async_star_offset(); + static word suspend_state_yield_async_star_offset(); }; class Isolate : public AllStatic { @@ -1287,6 +1304,7 @@ class Isolate : public AllStatic { static word finalizers_offset(); #if !defined(PRODUCT) static word single_step_offset(); + static word has_resumption_breakpoints_offset(); #endif // !defined(PRODUCT) }; @@ -1355,7 +1373,8 @@ class Code : public AllStatic { static word object_pool_offset(); static word entry_point_offset(CodeEntryKind kind = CodeEntryKind::kNormal); - static word saved_instructions_offset(); + static word active_instructions_offset(); + static word instructions_offset(); static word owner_offset(); static word HeaderSize(); static word InstanceSize(); diff --git a/runtime/vm/compiler/runtime_offsets_extracted.h b/runtime/vm/compiler/runtime_offsets_extracted.h index c3a19ca8586..fa6301e6023 100644 --- a/runtime/vm/compiler/runtime_offsets_extracted.h +++ b/runtime/vm/compiler/runtime_offsets_extracted.h @@ -18,10 +18,14 @@ #if !defined(PRODUCT) #if defined(TARGET_ARCH_ARM) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -132,9 +136,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -182,6 +185,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 24; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 28; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 40; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 45; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 32; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 20; @@ -224,6 +229,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -242,124 +263,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 792; + 816; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 796; + 820; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 832; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 856; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 856; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 880; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 836; + Thread_double_truncate_round_supported_offset = 860; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 860; + Thread_service_extension_stream_offset = 884; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 812; + 836; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 800; + 824; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 828; + 852; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 864; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 888; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -380,49 +405,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 804; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 828; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 808; + Thread_saved_shadow_call_stack_offset = 832; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 816; + 840; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 764; + Thread_suspend_state_await_entry_point_offset = 788; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 760; + Thread_suspend_state_init_async_entry_point_offset = 784; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 768; + Thread_suspend_state_return_async_entry_point_offset = 792; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 772; + Thread_suspend_state_return_async_not_future_entry_point_offset = 796; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 776; + Thread_suspend_state_init_async_star_entry_point_offset = 800; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 780; + Thread_suspend_state_yield_async_star_entry_point_offset = 804; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 784; + Thread_suspend_state_return_async_star_entry_point_offset = 808; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 788; + Thread_suspend_state_handle_exception_entry_point_offset = 812; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -433,17 +465,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 820; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 844; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 824; -static constexpr dart::compiler::target::word Thread_random_offset = 840; + Thread_callback_stack_return_offset = 848; +static constexpr dart::compiler::target::word Thread_random_offset = 864; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 848; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 872; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -536,7 +568,7 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 728, 732, 736, 740, 744, -1, 748, -1, 752, 756, -1, -1, -1, -1, -1, -1}; + 752, 756, 760, 764, 768, -1, 772, -1, 776, 780, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word ApiError_InstanceSize = 8; static constexpr dart::compiler::target::word Array_header_size = 12; @@ -610,7 +642,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -635,10 +667,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_X64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -752,9 +788,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -802,6 +837,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 48; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 40; @@ -844,6 +881,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -863,126 +916,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1584; + 1632; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1592; + 1640; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1704; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1752; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1672; + Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1712; + Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1624; + 1672; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1600; + 1648; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -1003,49 +1060,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1608; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1656; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1616; + Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1632; + 1680; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1528; + Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1520; + Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1536; + Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1552; + Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1568; + Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1576; + Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -1056,18 +1120,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1640; + 1688; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word Thread_random_offset = 1680; + Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word Thread_random_offset = 1728; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1688; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1736; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -1162,8 +1226,8 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -1237,7 +1301,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -1263,10 +1327,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_X64) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_IA32) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -1377,9 +1445,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -1427,6 +1494,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 24; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 28; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 40; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 45; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 32; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 20; @@ -1469,6 +1538,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -1487,124 +1572,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 760; + 784; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 764; + 788; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 800; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 824; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 824; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 848; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 804; + Thread_double_truncate_round_supported_offset = 828; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 828; + Thread_service_extension_stream_offset = 852; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 780; + 804; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 768; + 792; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 796; + 820; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 832; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 856; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -1625,49 +1714,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 772; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 796; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 776; + Thread_saved_shadow_call_stack_offset = 800; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 784; + 808; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 732; + Thread_suspend_state_await_entry_point_offset = 756; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 728; + Thread_suspend_state_init_async_entry_point_offset = 752; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 736; + Thread_suspend_state_return_async_entry_point_offset = 760; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 740; + Thread_suspend_state_return_async_not_future_entry_point_offset = 764; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 744; + Thread_suspend_state_init_async_star_entry_point_offset = 768; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 748; + Thread_suspend_state_yield_async_star_entry_point_offset = 772; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 752; + Thread_suspend_state_return_async_star_entry_point_offset = 776; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 756; + Thread_suspend_state_handle_exception_entry_point_offset = 780; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -1678,17 +1774,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 788; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 812; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 792; -static constexpr dart::compiler::target::word Thread_random_offset = 808; + Thread_callback_stack_return_offset = 816; +static constexpr dart::compiler::target::word Thread_random_offset = 832; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 816; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 840; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -1852,7 +1948,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -1877,10 +1973,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_IA32) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_ARM64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -1994,9 +2094,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -2044,6 +2143,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 48; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 40; @@ -2086,6 +2187,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -2105,126 +2222,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1648; + 1696; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1656; + 1704; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1768; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1736; + Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1776; + Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1664; + 1712; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -2245,49 +2366,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1672; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1720; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1680; + Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1592; + Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1584; + Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1600; + Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1616; + Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1632; + Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1640; + Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -2298,18 +2426,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1704; + 1752; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word Thread_random_offset = 1744; + Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word Thread_random_offset = 1792; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1752; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1800; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -2404,9 +2532,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -2480,7 +2608,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -2506,10 +2634,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM64) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_X64) && defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 80; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 16; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -2620,9 +2752,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 12; @@ -2670,6 +2801,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 48; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 40; @@ -2712,6 +2845,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -2731,126 +2880,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 32; + SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 40; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 28; + SuspendState_then_callback_offset = 36; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1584; + 1632; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1592; + 1640; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1704; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1752; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1672; + Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1712; + Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1624; + 1672; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1600; + 1648; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -2871,49 +3024,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1608; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1656; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1616; + Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1632; + 1680; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1528; + Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1520; + Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1536; + Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1552; + Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1568; + Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1576; + Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -2924,18 +3084,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1640; + 1688; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word Thread_random_offset = 1680; + Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word Thread_random_offset = 1728; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1688; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1736; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -3030,8 +3190,8 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 16; @@ -3105,7 +3265,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 24; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 40; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -3131,10 +3291,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_X64) && defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_ARM64) && defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 80; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 16; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -3245,9 +3409,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 12; @@ -3295,6 +3458,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 48; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 40; @@ -3337,6 +3502,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -3356,126 +3537,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 32; + SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 40; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 28; + SuspendState_then_callback_offset = 36; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1648; + 1696; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1656; + 1704; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1768; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1736; + Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1776; + Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1664; + 1712; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -3496,49 +3681,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1672; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1720; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1680; + Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1592; + Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1584; + Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1600; + Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1616; + Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1632; + Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1640; + Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -3549,18 +3741,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1704; + 1752; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word Thread_random_offset = 1744; + Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word Thread_random_offset = 1792; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1752; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1800; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -3655,9 +3847,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 16; @@ -3731,7 +3923,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 24; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 40; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -3757,10 +3949,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM64) && defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_RISCV32) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -3871,9 +4067,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -3921,6 +4116,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 24; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 28; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 40; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 45; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 32; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 20; @@ -3963,6 +4160,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -3981,124 +4194,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 832; + 856; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 836; + 860; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 872; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 896; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 896; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 920; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 876; + Thread_double_truncate_round_supported_offset = 900; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 900; + Thread_service_extension_stream_offset = 924; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 852; + 876; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 840; + 864; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 868; + 892; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 904; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 928; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -4119,49 +4336,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 844; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 868; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 848; + Thread_saved_shadow_call_stack_offset = 872; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 856; + 880; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 804; + Thread_suspend_state_await_entry_point_offset = 828; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 800; + Thread_suspend_state_init_async_entry_point_offset = 824; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 808; + Thread_suspend_state_return_async_entry_point_offset = 832; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 812; + Thread_suspend_state_return_async_not_future_entry_point_offset = 836; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 816; + Thread_suspend_state_init_async_star_entry_point_offset = 840; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 820; + Thread_suspend_state_yield_async_star_entry_point_offset = 844; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 824; + Thread_suspend_state_return_async_star_entry_point_offset = 848; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 828; + Thread_suspend_state_handle_exception_entry_point_offset = 852; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -4172,17 +4396,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 860; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 884; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 864; -static constexpr dart::compiler::target::word Thread_random_offset = 880; + Thread_callback_stack_return_offset = 888; +static constexpr dart::compiler::target::word Thread_random_offset = 904; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 888; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 912; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -4275,9 +4499,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 728, 732, 736, -1, -1, 740, - 744, 748, -1, -1, -1, 752, 756, 760, 764, 768, 772, - 776, 780, -1, -1, -1, -1, 784, 788, 792, 796}; + -1, -1, -1, -1, -1, 752, 756, 760, -1, -1, 764, + 768, 772, -1, -1, -1, 776, 780, 784, 788, 792, 796, + 800, 804, -1, -1, -1, -1, 808, 812, 816, 820}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word ApiError_InstanceSize = 8; static constexpr dart::compiler::target::word Array_header_size = 12; @@ -4351,7 +4575,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -4376,10 +4600,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_RISCV32) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_RISCV64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word ClassTable_elements_start_offset = @@ -4493,9 +4721,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -4543,6 +4770,8 @@ static constexpr dart::compiler::target::word Int32x4_value_offset = 8; static constexpr dart::compiler::target::word Isolate_current_tag_offset = 48; static constexpr dart::compiler::target::word Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word IsolateGroup_object_store_offset = 40; @@ -4585,6 +4814,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -4604,126 +4849,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1640; + 1688; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1648; + 1696; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1720; + 1768; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1760; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1808; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1728; + Thread_double_truncate_round_supported_offset = 1776; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1768; + Thread_service_extension_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1680; + 1728; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1712; + 1760; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1776; + 1824; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -4744,49 +4993,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1664; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1712; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1672; + Thread_saved_shadow_call_stack_offset = 1720; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1584; + Thread_suspend_state_await_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1576; + Thread_suspend_state_init_async_entry_point_offset = 1624; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1592; + Thread_suspend_state_return_async_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1600; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1608; + Thread_suspend_state_init_async_star_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1616; + Thread_suspend_state_yield_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1624; + Thread_suspend_state_return_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1632; + Thread_suspend_state_handle_exception_entry_point_offset = 1680; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -4797,18 +5053,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1704; -static constexpr dart::compiler::target::word Thread_random_offset = 1736; + Thread_callback_stack_return_offset = 1752; +static constexpr dart::compiler::target::word Thread_random_offset = 1784; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1744; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1792; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -4903,9 +5159,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 1432, 1440, 1448, -1, -1, 1456, - 1464, 1472, -1, -1, -1, 1480, 1488, 1496, 1504, 1512, 1520, - 1528, 1536, -1, -1, -1, -1, 1544, 1552, 1560, 1568}; + -1, -1, -1, -1, -1, 1480, 1488, 1496, -1, -1, 1504, + 1512, 1520, -1, -1, -1, 1528, 1536, 1544, 1552, 1560, 1568, + 1576, 1584, -1, -1, -1, -1, 1592, 1600, 1608, 1616}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -4979,7 +5235,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -5007,10 +5263,14 @@ static constexpr dart::compiler::target::word #else // !defined(PRODUCT) #if defined(TARGET_ARCH_ARM) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word Code_elements_start_offset = 76; @@ -5116,9 +5376,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -5207,6 +5466,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -5225,124 +5500,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 792; + 816; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 796; + 820; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 832; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 856; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 856; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 880; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 836; + Thread_double_truncate_round_supported_offset = 860; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 860; + Thread_service_extension_stream_offset = 884; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 812; + 836; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 800; + 824; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 828; + 852; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 864; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 888; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -5363,49 +5642,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 804; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 828; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 808; + Thread_saved_shadow_call_stack_offset = 832; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 816; + 840; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 764; + Thread_suspend_state_await_entry_point_offset = 788; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 760; + Thread_suspend_state_init_async_entry_point_offset = 784; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 768; + Thread_suspend_state_return_async_entry_point_offset = 792; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 772; + Thread_suspend_state_return_async_not_future_entry_point_offset = 796; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 776; + Thread_suspend_state_init_async_star_entry_point_offset = 800; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 780; + Thread_suspend_state_yield_async_star_entry_point_offset = 804; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 784; + Thread_suspend_state_return_async_star_entry_point_offset = 808; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 788; + Thread_suspend_state_handle_exception_entry_point_offset = 812; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -5416,17 +5702,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 820; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 844; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 824; -static constexpr dart::compiler::target::word Thread_random_offset = 840; + Thread_callback_stack_return_offset = 848; +static constexpr dart::compiler::target::word Thread_random_offset = 864; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 848; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 872; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -5519,7 +5805,7 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 728, 732, 736, 740, 744, -1, 748, -1, 752, 756, -1, -1, -1, -1, -1, -1}; + 752, 756, 760, 764, 768, -1, 772, -1, 776, 780, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word ApiError_InstanceSize = 8; static constexpr dart::compiler::target::word Array_header_size = 12; @@ -5593,7 +5879,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -5618,10 +5904,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_X64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word Code_elements_start_offset = 144; @@ -5730,9 +6020,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -5821,6 +6110,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -5840,126 +6145,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1584; + 1632; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1592; + 1640; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1704; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1752; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1672; + Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1712; + Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1624; + 1672; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1600; + 1648; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -5980,49 +6289,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1608; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1656; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1616; + Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1632; + 1680; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1528; + Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1520; + Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1536; + Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1552; + Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1568; + Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1576; + Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -6033,18 +6349,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1640; + 1688; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word Thread_random_offset = 1680; + Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word Thread_random_offset = 1728; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1688; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1736; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -6139,8 +6455,8 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -6214,7 +6530,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -6240,10 +6556,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_X64) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_IA32) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word Code_elements_start_offset = 76; @@ -6349,9 +6669,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -6440,6 +6759,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -6458,124 +6793,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 760; + 784; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 764; + 788; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 800; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 824; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 824; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 848; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 804; + Thread_double_truncate_round_supported_offset = 828; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 828; + Thread_service_extension_stream_offset = 852; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 780; + 804; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 768; + 792; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 796; + 820; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 832; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 856; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -6596,49 +6935,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 772; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 796; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 776; + Thread_saved_shadow_call_stack_offset = 800; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 784; + 808; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 732; + Thread_suspend_state_await_entry_point_offset = 756; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 728; + Thread_suspend_state_init_async_entry_point_offset = 752; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 736; + Thread_suspend_state_return_async_entry_point_offset = 760; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 740; + Thread_suspend_state_return_async_not_future_entry_point_offset = 764; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 744; + Thread_suspend_state_init_async_star_entry_point_offset = 768; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 748; + Thread_suspend_state_yield_async_star_entry_point_offset = 772; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 752; + Thread_suspend_state_return_async_star_entry_point_offset = 776; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 756; + Thread_suspend_state_handle_exception_entry_point_offset = 780; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -6649,17 +6995,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 788; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 812; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 792; -static constexpr dart::compiler::target::word Thread_random_offset = 808; + Thread_callback_stack_return_offset = 816; +static constexpr dart::compiler::target::word Thread_random_offset = 832; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 816; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 840; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -6823,7 +7169,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -6848,10 +7194,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_IA32) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_ARM64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word Code_elements_start_offset = 144; @@ -6960,9 +7310,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -7051,6 +7400,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -7070,126 +7435,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1648; + 1696; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1656; + 1704; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1768; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1736; + Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1776; + Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1664; + 1712; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -7210,49 +7579,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1672; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1720; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1680; + Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1592; + Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1584; + Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1600; + Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1616; + Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1632; + Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1640; + Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -7263,18 +7639,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1704; + 1752; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word Thread_random_offset = 1744; + Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word Thread_random_offset = 1792; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1752; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1800; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -7369,9 +7745,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -7445,7 +7821,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -7471,10 +7847,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM64) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_X64) && defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 80; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 16; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word Code_elements_start_offset = 144; @@ -7580,9 +7960,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 12; @@ -7671,6 +8050,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -7690,126 +8085,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 32; + SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 40; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 28; + SuspendState_then_callback_offset = 36; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1584; + 1632; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1592; + 1640; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1704; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1752; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1672; + Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1712; + Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1624; + 1672; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1600; + 1648; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -7830,49 +8229,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1608; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1656; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1616; + Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1632; + 1680; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1528; + Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1520; + Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1536; + Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1552; + Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1568; + Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1576; + Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -7883,18 +8289,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1640; + 1688; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word Thread_random_offset = 1680; + Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word Thread_random_offset = 1728; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1688; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1736; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -7989,8 +8395,8 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 16; @@ -8064,7 +8470,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 24; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 40; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -8090,10 +8496,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_X64) && defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_ARM64) && defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 80; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 16; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word Code_elements_start_offset = 144; @@ -8199,9 +8609,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 12; @@ -8290,6 +8699,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -8309,126 +8734,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 32; + SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 40; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 28; + SuspendState_then_callback_offset = 36; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1648; + 1696; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1656; + 1704; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1768; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1736; + Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1776; + Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1664; + 1712; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1720; + 1768; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -8449,49 +8878,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1672; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1720; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1680; + Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1592; + Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1584; + Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1600; + Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1616; + Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1632; + Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1640; + Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -8502,18 +8938,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1704; + 1752; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word Thread_random_offset = 1744; + Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word Thread_random_offset = 1792; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1752; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1800; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -8608,9 +9044,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 16; @@ -8684,7 +9120,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 24; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 40; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -8710,10 +9146,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_ARM64) && defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_RISCV32) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 56; static constexpr dart::compiler::target::word Function_usage_counter_offset = 72; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 16; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 4; static constexpr dart::compiler::target::word Array_elements_start_offset = 12; static constexpr dart::compiler::target::word Array_element_size = 4; static constexpr dart::compiler::target::word Code_elements_start_offset = 76; @@ -8819,9 +9259,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word Code_instructions_offset = 24; static constexpr dart::compiler::target::word Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 24; static constexpr dart::compiler::target::word Code_owner_offset = 28; static constexpr dart::compiler::target::word Context_num_variables_offset = 4; static constexpr dart::compiler::target::word Context_parent_offset = 8; @@ -8910,6 +9349,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word OneByteString_data_offset = 12; static constexpr dart::compiler::target::word PointerBase_data_offset = 4; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = 8; @@ -8928,124 +9383,128 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 4; static constexpr dart::compiler::target::word String_hash_offset = 8; static constexpr dart::compiler::target::word String_length_offset = 4; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 20; + SuspendState_error_callback_offset = 24; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 4; + 8; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 12; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 24; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 8; + SuspendState_function_data_offset = 16; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 28; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 12; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 16; + SuspendState_then_callback_offset = 20; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 380; + Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 832; + 856; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 836; + 860; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 272; + Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 288; + Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 292; + Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 296; + Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 200; -static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 872; +static constexpr dart::compiler::target::word Thread_api_top_scope_offset = 896; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 344; + Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 336; + Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 276; + Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 140; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 896; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 920; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 876; + Thread_double_truncate_round_supported_offset = 900; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 900; + Thread_service_extension_stream_offset = 924; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 316; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 228; + 336; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 248; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 320; + 340; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 232; + 252; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 360; + 380; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 356; + Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word Thread_end_offset = 52; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 252; + Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 852; + 876; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 256; + Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 264; + Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 324; + Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 372; + Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 368; + Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 364; + 384; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 376; + Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 840; + 864; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 868; + 892; static constexpr dart::compiler::target::word Thread_isolate_offset = 40; -static constexpr dart::compiler::target::word Thread_isolate_group_offset = 904; +static constexpr dart::compiler::target::word Thread_isolate_group_offset = 928; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 236; + Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 240; + Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 248; + Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 308; + Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 312; + Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 212; + Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 340; + Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -9066,49 +9525,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 208; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 212; static constexpr dart::compiler::target::word Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 844; + Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 868; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 848; + Thread_saved_shadow_call_stack_offset = 872; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 856; + 880; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 244; + Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 332; + Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 804; + Thread_suspend_state_await_entry_point_offset = 828; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 800; + Thread_suspend_state_init_async_entry_point_offset = 824; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 808; + Thread_suspend_state_return_async_entry_point_offset = 832; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 812; + Thread_suspend_state_return_async_not_future_entry_point_offset = 836; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 816; + Thread_suspend_state_init_async_star_entry_point_offset = 840; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 820; + Thread_suspend_state_yield_async_star_entry_point_offset = 844; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 824; + Thread_suspend_state_return_async_star_entry_point_offset = 848; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 828; + Thread_suspend_state_handle_exception_entry_point_offset = 852; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word Thread_top_offset = 48; @@ -9119,17 +9585,17 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 268; + Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word Thread_heap_base_offset = 36; -static constexpr dart::compiler::target::word Thread_callback_code_offset = 860; +static constexpr dart::compiler::target::word Thread_callback_code_offset = 884; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 864; -static constexpr dart::compiler::target::word Thread_random_offset = 880; + Thread_callback_stack_return_offset = 888; +static constexpr dart::compiler::target::word Thread_random_offset = 904; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 328; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 888; + Thread_jump_to_frame_entry_point_offset = 348; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 912; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -9222,9 +9688,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 728, 732, 736, -1, -1, 740, - 744, 748, -1, -1, -1, 752, 756, 760, 764, 768, 772, - 776, 780, -1, -1, -1, -1, 784, 788, 792, 796}; + -1, -1, -1, -1, -1, 752, 756, 760, -1, -1, 764, + 768, 772, -1, -1, -1, 776, 780, 784, 788, 792, 796, + 800, 804, -1, -1, -1, -1, 808, 812, 816, 820}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word ApiError_InstanceSize = 8; static constexpr dart::compiler::target::word Array_header_size = 12; @@ -9298,7 +9764,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 4; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 16; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 20; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 24; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 28; static constexpr dart::compiler::target::word String_InstanceSize = 12; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 8; static constexpr dart::compiler::target::word LoadingUnit_InstanceSize = 20; @@ -9323,10 +9789,14 @@ static constexpr dart::compiler::target::word #endif // defined(TARGET_ARCH_RISCV32) && !defined(DART_COMPRESSED_POINTERS) #if defined(TARGET_ARCH_RISCV64) && !defined(DART_COMPRESSED_POINTERS) +static constexpr dart::compiler::target::word Code_active_instructions_offset = + 112; static constexpr dart::compiler::target::word Function_usage_counter_offset = 112; static constexpr dart::compiler::target::word ICData_receivers_static_type_offset = 32; +static constexpr dart::compiler::target::word + SuspendState_frame_capacity_offset = 8; static constexpr dart::compiler::target::word Array_elements_start_offset = 24; static constexpr dart::compiler::target::word Array_element_size = 8; static constexpr dart::compiler::target::word Code_elements_start_offset = 144; @@ -9435,9 +9905,8 @@ static constexpr dart::compiler::target::word Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word Code_instructions_offset = 48; static constexpr dart::compiler::target::word Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word Code_saved_instructions_offset = - 48; static constexpr dart::compiler::target::word Code_owner_offset = 56; static constexpr dart::compiler::target::word Context_num_variables_offset = 8; static constexpr dart::compiler::target::word Context_parent_offset = 16; @@ -9526,6 +9995,22 @@ static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word OneByteString_data_offset = 16; static constexpr dart::compiler::target::word PointerBase_data_offset = 8; static constexpr dart::compiler::target::word Pointer_type_arguments_offset = @@ -9545,126 +10030,130 @@ static constexpr dart::compiler::target::word StreamInfo_enabled_offset = 8; static constexpr dart::compiler::target::word String_hash_offset = 4; static constexpr dart::compiler::target::word String_length_offset = 8; static constexpr dart::compiler::target::word SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word SuspendState_FrameSizeGrowthGap = + 2; static constexpr dart::compiler::target::word - SuspendState_error_callback_offset = 40; + SuspendState_error_callback_offset = 48; static constexpr dart::compiler::target::word SuspendState_frame_size_offset = - 8; + 16; static constexpr dart::compiler::target::word - SuspendState_function_data_offset = 24; -static constexpr dart::compiler::target::word SuspendState_payload_offset = 48; -static constexpr dart::compiler::target::word SuspendState_pc_offset = 16; + SuspendState_function_data_offset = 32; +static constexpr dart::compiler::target::word SuspendState_payload_offset = 56; +static constexpr dart::compiler::target::word SuspendState_pc_offset = 24; static constexpr dart::compiler::target::word - SuspendState_then_callback_offset = 32; + SuspendState_then_callback_offset = 40; static constexpr dart::compiler::target::word - Thread_AllocateArray_entry_point_offset = 736; + Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word Thread_active_exception_offset = - 1640; + 1688; static constexpr dart::compiler::target::word Thread_active_stacktrace_offset = - 1648; + 1696; static constexpr dart::compiler::target::word - Thread_array_write_barrier_entry_point_offset = 520; + Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - Thread_allocate_object_entry_point_offset = 552; + Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - Thread_allocate_object_parameterized_entry_point_offset = 560; + Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - Thread_allocate_object_slow_entry_point_offset = 568; + Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word Thread_api_top_scope_offset = - 1720; + 1768; static constexpr dart::compiler::target::word - Thread_auto_scope_native_wrapper_entry_point_offset = 664; + Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - Thread_bootstrap_native_wrapper_entry_point_offset = 648; + Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - Thread_call_to_runtime_entry_point_offset = 528; + Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word Thread_call_to_runtime_stub_offset = 256; -static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1760; +static constexpr dart::compiler::target::word Thread_dart_stream_offset = 1808; static constexpr dart::compiler::target::word Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - Thread_double_truncate_round_supported_offset = 1728; + Thread_double_truncate_round_supported_offset = 1776; static constexpr dart::compiler::target::word - Thread_service_extension_stream_offset = 1768; + Thread_service_extension_stream_offset = 1816; static constexpr dart::compiler::target::word Thread_optimize_entry_offset = - 608; -static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 432; + 648; +static constexpr dart::compiler::target::word Thread_optimize_stub_offset = 472; static constexpr dart::compiler::target::word Thread_deoptimize_entry_offset = - 616; + 656; static constexpr dart::compiler::target::word Thread_deoptimize_stub_offset = - 440; + 480; static constexpr dart::compiler::target::word Thread_double_abs_address_offset = - 696; + 736; static constexpr dart::compiler::target::word - Thread_double_negate_address_offset = 688; + Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word Thread_end_offset = 104; static constexpr dart::compiler::target::word - Thread_enter_safepoint_stub_offset = 480; + Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word Thread_execution_state_offset = - 1680; + 1728; static constexpr dart::compiler::target::word - Thread_exit_safepoint_stub_offset = 488; + Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_stub_offset = 504; + Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - Thread_call_native_through_safepoint_entry_point_offset = 624; + Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - Thread_float_absolute_address_offset = 720; + Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - Thread_float_negate_address_offset = 712; + Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word Thread_float_not_address_offset = - 704; + 744; static constexpr dart::compiler::target::word - Thread_float_zerow_address_offset = 728; + Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word Thread_global_object_pool_offset = - 1656; + 1704; static constexpr dart::compiler::target::word Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word Thread_exit_through_ffi_offset = - 1712; + 1760; static constexpr dart::compiler::target::word Thread_isolate_offset = 80; static constexpr dart::compiler::target::word Thread_isolate_group_offset = - 1776; + 1824; static constexpr dart::compiler::target::word Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_return_stub_offset = 448; + Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - Thread_lazy_deopt_from_throw_stub_offset = 456; + Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - Thread_lazy_specialize_type_test_stub_offset = 472; + Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - Thread_megamorphic_call_checked_entry_offset = 592; + Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_entry_offset = 600; + Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - Thread_switchable_call_miss_stub_offset = 400; + Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - Thread_no_scope_native_wrapper_entry_point_offset = 656; + Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -9685,49 +10174,56 @@ static constexpr dart::compiler::target::word Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word Thread_resume_stub_offset = 392; +static constexpr dart::compiler::target::word + Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word Thread_return_async_stub_offset = + 400; static constexpr dart::compiler::target::word Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - Thread_predefined_symbols_address_offset = 672; -static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1664; + Thread_predefined_symbols_address_offset = 712; +static constexpr dart::compiler::target::word Thread_resume_pc_offset = 1712; static constexpr dart::compiler::target::word - Thread_saved_shadow_call_stack_offset = 1672; + Thread_saved_shadow_call_stack_offset = 1720; static constexpr dart::compiler::target::word Thread_safepoint_state_offset = - 1688; + 1736; static constexpr dart::compiler::target::word - Thread_slow_type_test_stub_offset = 464; + Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - Thread_slow_type_test_entry_point_offset = 640; + Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word Thread_saved_stack_limit_offset = 112; static constexpr dart::compiler::target::word Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - Thread_suspend_state_await_entry_point_offset = 1584; + Thread_suspend_state_await_entry_point_offset = 1632; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_entry_point_offset = 1576; + Thread_suspend_state_init_async_entry_point_offset = 1624; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_entry_point_offset = 1592; + Thread_suspend_state_return_async_entry_point_offset = 1640; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_not_future_entry_point_offset = 1600; + Thread_suspend_state_return_async_not_future_entry_point_offset = 1648; static constexpr dart::compiler::target::word - Thread_suspend_state_init_async_star_entry_point_offset = 1608; + Thread_suspend_state_init_async_star_entry_point_offset = 1656; static constexpr dart::compiler::target::word - Thread_suspend_state_yield_async_star_entry_point_offset = 1616; + Thread_suspend_state_yield_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - Thread_suspend_state_return_async_star_entry_point_offset = 1624; + Thread_suspend_state_return_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - Thread_suspend_state_handle_exception_entry_point_offset = 1632; + Thread_suspend_state_handle_exception_entry_point_offset = 1680; static constexpr dart::compiler::target::word Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word Thread_top_offset = 96; @@ -9738,18 +10234,18 @@ static constexpr dart::compiler::target::word Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - Thread_write_barrier_entry_point_offset = 512; + Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word Thread_callback_code_offset = - 1696; + 1744; static constexpr dart::compiler::target::word - Thread_callback_stack_return_offset = 1704; -static constexpr dart::compiler::target::word Thread_random_offset = 1736; + Thread_callback_stack_return_offset = 1752; +static constexpr dart::compiler::target::word Thread_random_offset = 1784; static constexpr dart::compiler::target::word - Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1744; + Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word Thread_tsan_utils_offset = 1792; static constexpr dart::compiler::target::word TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word TsanUtils_setjmp_buffer_offset = @@ -9844,9 +10340,9 @@ static constexpr dart::compiler::target::word Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 1432, 1440, 1448, -1, -1, 1456, - 1464, 1472, -1, -1, -1, 1480, 1488, 1496, 1504, 1512, 1520, - 1528, 1536, -1, -1, -1, -1, 1544, 1552, 1560, 1568}; + -1, -1, -1, -1, -1, 1480, 1488, 1496, -1, -1, 1504, + 1512, 1520, -1, -1, -1, 1528, 1536, 1544, 1552, 1560, 1568, + 1576, 1584, -1, -1, -1, -1, 1592, 1600, 1608, 1616}; static constexpr dart::compiler::target::word AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word ApiError_InstanceSize = 16; static constexpr dart::compiler::target::word Array_header_size = 24; @@ -9920,7 +10416,7 @@ static constexpr dart::compiler::target::word Sentinel_InstanceSize = 8; static constexpr dart::compiler::target::word SingleTargetCache_InstanceSize = 32; static constexpr dart::compiler::target::word StackTrace_InstanceSize = 40; -static constexpr dart::compiler::target::word SuspendState_HeaderSize = 48; +static constexpr dart::compiler::target::word SuspendState_HeaderSize = 56; static constexpr dart::compiler::target::word String_InstanceSize = 16; static constexpr dart::compiler::target::word SubtypeTestCache_InstanceSize = 16; @@ -10073,9 +10569,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 28; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 4; @@ -10129,6 +10624,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 28; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 40; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 45; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 32; static constexpr dart::compiler::target::word @@ -10180,6 +10677,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 12; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 4; @@ -10202,6 +10715,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 8; static constexpr dart::compiler::target::word AOT_String_length_offset = 4; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 20; static constexpr dart::compiler::target::word @@ -10214,118 +10729,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 8; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 16; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 380; + AOT_Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 792; + AOT_Thread_active_exception_offset = 816; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 796; + AOT_Thread_active_stacktrace_offset = 820; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 272; + AOT_Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 288; + AOT_Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 292; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 296; + AOT_Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 200; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 832; + 856; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 344; + AOT_Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 336; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 276; + AOT_Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 140; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 856; + 880; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 836; + AOT_Thread_double_truncate_round_supported_offset = 860; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 860; + AOT_Thread_service_extension_stream_offset = 884; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 316; + 336; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 228; + 248; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 320; + AOT_Thread_deoptimize_entry_offset = 340; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 232; + AOT_Thread_deoptimize_stub_offset = 252; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 360; + AOT_Thread_double_abs_address_offset = 380; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 356; + AOT_Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 52; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 252; + AOT_Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 812; + AOT_Thread_execution_state_offset = 836; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 256; + AOT_Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 264; + AOT_Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 324; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 372; + AOT_Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 368; + AOT_Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 364; + AOT_Thread_float_not_address_offset = 384; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 376; + AOT_Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 800; + AOT_Thread_global_object_pool_offset = 824; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 828; + AOT_Thread_exit_through_ffi_offset = 852; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 40; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 864; + 888; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 236; + AOT_Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 240; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 248; + AOT_Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 308; + AOT_Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 312; + AOT_Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 212; + AOT_Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 340; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -10347,19 +10864,27 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 208; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 212; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 804; + AOT_Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 828; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 808; + AOT_Thread_saved_shadow_call_stack_offset = 832; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 816; + AOT_Thread_safepoint_state_offset = 840; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 244; + AOT_Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 332; + AOT_Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word @@ -10367,31 +10892,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 764; + AOT_Thread_suspend_state_await_entry_point_offset = 788; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 760; + AOT_Thread_suspend_state_init_async_entry_point_offset = 784; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 768; + AOT_Thread_suspend_state_return_async_entry_point_offset = 792; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 772; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 796; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 776; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 800; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 780; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 804; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 784; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 808; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 788; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 812; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 48; @@ -10403,19 +10928,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 268; + AOT_Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 36; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 820; + 844; static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 824; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 840; + AOT_Thread_callback_stack_return_offset = 848; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 864; static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 328; + AOT_Thread_jump_to_frame_entry_point_offset = 348; static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = - 848; + 872; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -10528,7 +11053,7 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 728, 732, 736, 740, 744, -1, 748, -1, 752, 756, -1, -1, -1, -1, -1, -1}; + 752, 756, 760, 764, 768, -1, 772, -1, 776, 780, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 8; @@ -10769,9 +11294,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -10825,6 +11349,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word @@ -10876,6 +11402,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -10898,6 +11440,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -10910,118 +11454,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1584; + AOT_Thread_active_exception_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1592; + AOT_Thread_active_stacktrace_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1704; + 1752; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1672; + AOT_Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1712; + AOT_Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1624; + AOT_Thread_execution_state_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1600; + AOT_Thread_global_object_pool_offset = 1648; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1656; + AOT_Thread_exit_through_ffi_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -11043,20 +11589,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1608; + 1656; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1616; + AOT_Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1632; + AOT_Thread_safepoint_state_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -11064,31 +11618,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1528; + AOT_Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1520; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1536; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1552; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1568; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1576; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -11100,19 +11654,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1640; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1680; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1688; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1728; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1736; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -11226,8 +11780,8 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -11471,9 +12025,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -11527,6 +12080,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word @@ -11578,6 +12133,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -11600,6 +12171,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -11612,118 +12185,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1648; + AOT_Thread_active_exception_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1656; + AOT_Thread_active_stacktrace_offset = 1704; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1768; + 1816; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1736; + AOT_Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1776; + AOT_Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1688; + AOT_Thread_execution_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1664; + AOT_Thread_global_object_pool_offset = 1712; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1720; + AOT_Thread_exit_through_ffi_offset = 1768; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -11745,20 +12320,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1672; + 1720; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1680; + AOT_Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1696; + AOT_Thread_safepoint_state_offset = 1744; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -11766,31 +12349,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1592; + AOT_Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1584; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1632; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1640; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -11802,19 +12385,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1704; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1744; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1752; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1792; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1800; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -11928,9 +12511,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -12170,9 +12753,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -12226,6 +12808,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word @@ -12277,6 +12861,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -12299,6 +12899,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 32; static constexpr dart::compiler::target::word @@ -12311,118 +12913,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 28; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1584; + AOT_Thread_active_exception_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1592; + AOT_Thread_active_stacktrace_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1704; + 1752; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1672; + AOT_Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1712; + AOT_Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1624; + AOT_Thread_execution_state_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1600; + AOT_Thread_global_object_pool_offset = 1648; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1656; + AOT_Thread_exit_through_ffi_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -12444,20 +13048,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1608; + 1656; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1616; + AOT_Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1632; + AOT_Thread_safepoint_state_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -12465,31 +13077,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1528; + AOT_Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1520; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1536; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1552; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1568; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1576; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -12501,19 +13113,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1640; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1680; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1688; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1728; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1736; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -12627,8 +13239,8 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -12868,9 +13480,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -12924,6 +13535,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word @@ -12975,6 +13588,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -12997,6 +13626,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 32; static constexpr dart::compiler::target::word @@ -13009,118 +13640,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 28; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1648; + AOT_Thread_active_exception_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1656; + AOT_Thread_active_stacktrace_offset = 1704; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1768; + 1816; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1736; + AOT_Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1776; + AOT_Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1688; + AOT_Thread_execution_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1664; + AOT_Thread_global_object_pool_offset = 1712; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1720; + AOT_Thread_exit_through_ffi_offset = 1768; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -13142,20 +13775,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1672; + 1720; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1680; + AOT_Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1696; + AOT_Thread_safepoint_state_offset = 1744; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -13163,31 +13804,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1592; + AOT_Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1584; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1632; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1640; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -13199,19 +13840,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1704; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1744; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1752; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1792; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1800; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -13325,9 +13966,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -13567,9 +14208,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 28; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 4; @@ -13623,6 +14263,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 28; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 40; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 45; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 32; static constexpr dart::compiler::target::word @@ -13674,6 +14316,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 12; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 4; @@ -13696,6 +14354,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 8; static constexpr dart::compiler::target::word AOT_String_length_offset = 4; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 20; static constexpr dart::compiler::target::word @@ -13708,118 +14368,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 8; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 16; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 380; + AOT_Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 832; + AOT_Thread_active_exception_offset = 856; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 836; + AOT_Thread_active_stacktrace_offset = 860; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 272; + AOT_Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 288; + AOT_Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 292; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 296; + AOT_Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 200; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 872; + 896; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 344; + AOT_Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 336; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 276; + AOT_Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 140; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 896; + 920; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 876; + AOT_Thread_double_truncate_round_supported_offset = 900; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 900; + AOT_Thread_service_extension_stream_offset = 924; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 316; + 336; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 228; + 248; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 320; + AOT_Thread_deoptimize_entry_offset = 340; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 232; + AOT_Thread_deoptimize_stub_offset = 252; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 360; + AOT_Thread_double_abs_address_offset = 380; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 356; + AOT_Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 52; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 252; + AOT_Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 852; + AOT_Thread_execution_state_offset = 876; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 256; + AOT_Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 264; + AOT_Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 324; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 372; + AOT_Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 368; + AOT_Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 364; + AOT_Thread_float_not_address_offset = 384; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 376; + AOT_Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 840; + AOT_Thread_global_object_pool_offset = 864; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 868; + AOT_Thread_exit_through_ffi_offset = 892; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 40; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 904; + 928; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 236; + AOT_Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 240; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 248; + AOT_Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 308; + AOT_Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 312; + AOT_Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 212; + AOT_Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 340; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -13841,19 +14503,27 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 208; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 212; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 844; + AOT_Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 868; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 848; + AOT_Thread_saved_shadow_call_stack_offset = 872; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 856; + AOT_Thread_safepoint_state_offset = 880; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 244; + AOT_Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 332; + AOT_Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word @@ -13861,31 +14531,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 804; + AOT_Thread_suspend_state_await_entry_point_offset = 828; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 800; + AOT_Thread_suspend_state_init_async_entry_point_offset = 824; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 808; + AOT_Thread_suspend_state_return_async_entry_point_offset = 832; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 812; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 836; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 816; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 840; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 820; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 844; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 824; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 848; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 828; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 852; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 48; @@ -13897,19 +14567,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 268; + AOT_Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 36; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 860; + 884; static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 864; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 880; + AOT_Thread_callback_stack_return_offset = 888; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 904; static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 328; + AOT_Thread_jump_to_frame_entry_point_offset = 348; static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = - 888; + 912; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -14022,9 +14692,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 728, 732, 736, -1, -1, 740, - 744, 748, -1, -1, -1, 752, 756, 760, 764, 768, 772, - 776, 780, -1, -1, -1, -1, 784, 788, 792, 796}; + -1, -1, -1, -1, -1, 752, 756, 760, -1, -1, 764, + 768, 772, -1, -1, -1, 776, 780, 784, 788, 792, 796, + 800, 804, -1, -1, -1, -1, 808, 812, 816, 820}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 8; @@ -14265,9 +14935,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -14321,6 +14990,8 @@ static constexpr dart::compiler::target::word AOT_Isolate_default_tag_offset = 56; static constexpr dart::compiler::target::word AOT_Isolate_finalizers_offset = 80; +static constexpr dart::compiler::target::word + AOT_Isolate_has_resumption_breakpoints_offset = 89; static constexpr dart::compiler::target::word AOT_Isolate_ic_miss_code_offset = 64; static constexpr dart::compiler::target::word @@ -14372,6 +15043,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -14394,6 +15081,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -14406,118 +15095,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1640; + AOT_Thread_active_exception_offset = 1688; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1648; + AOT_Thread_active_stacktrace_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1720; + 1768; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1760; + 1808; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1728; + AOT_Thread_double_truncate_round_supported_offset = 1776; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1768; + AOT_Thread_service_extension_stream_offset = 1816; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1680; + AOT_Thread_execution_state_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1656; + AOT_Thread_global_object_pool_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1712; + AOT_Thread_exit_through_ffi_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1776; + 1824; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -14539,20 +15230,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1672; + AOT_Thread_saved_shadow_call_stack_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1688; + AOT_Thread_safepoint_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -14560,31 +15259,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1584; + AOT_Thread_suspend_state_await_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1576; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1624; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1592; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1608; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1632; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1680; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -14596,19 +15295,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1696; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1704; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1736; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1744; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1752; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1784; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1792; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -14722,9 +15421,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 1432, 1440, 1448, -1, -1, 1456, - 1464, 1472, -1, -1, -1, 1480, 1488, 1496, 1504, 1512, 1520, - 1528, 1536, -1, -1, -1, -1, 1544, 1552, 1560, 1568}; + -1, -1, -1, -1, -1, 1480, 1488, 1496, -1, -1, 1504, + 1512, 1520, -1, -1, -1, 1528, 1536, 1544, 1552, 1560, 1568, + 1576, 1584, -1, -1, -1, -1, 1592, 1600, 1608, 1616}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -14961,9 +15660,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 28; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 4; @@ -15066,6 +15764,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 12; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 4; @@ -15088,6 +15802,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 8; static constexpr dart::compiler::target::word AOT_String_length_offset = 4; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 20; static constexpr dart::compiler::target::word @@ -15100,118 +15816,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 8; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 16; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 380; + AOT_Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 792; + AOT_Thread_active_exception_offset = 816; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 796; + AOT_Thread_active_stacktrace_offset = 820; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 272; + AOT_Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 288; + AOT_Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 292; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 296; + AOT_Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 200; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 832; + 856; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 344; + AOT_Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 336; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 276; + AOT_Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 140; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 856; + 880; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 836; + AOT_Thread_double_truncate_round_supported_offset = 860; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 860; + AOT_Thread_service_extension_stream_offset = 884; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 316; + 336; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 228; + 248; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 320; + AOT_Thread_deoptimize_entry_offset = 340; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 232; + AOT_Thread_deoptimize_stub_offset = 252; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 360; + AOT_Thread_double_abs_address_offset = 380; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 356; + AOT_Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 52; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 252; + AOT_Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 812; + AOT_Thread_execution_state_offset = 836; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 256; + AOT_Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 264; + AOT_Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 324; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 372; + AOT_Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 368; + AOT_Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 364; + AOT_Thread_float_not_address_offset = 384; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 376; + AOT_Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 800; + AOT_Thread_global_object_pool_offset = 824; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 828; + AOT_Thread_exit_through_ffi_offset = 852; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 40; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 864; + 888; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 236; + AOT_Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 240; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 248; + AOT_Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 308; + AOT_Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 312; + AOT_Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 212; + AOT_Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 340; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -15233,19 +15951,27 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 208; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 212; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 804; + AOT_Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 828; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 808; + AOT_Thread_saved_shadow_call_stack_offset = 832; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 816; + AOT_Thread_safepoint_state_offset = 840; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 244; + AOT_Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 332; + AOT_Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word @@ -15253,31 +15979,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 764; + AOT_Thread_suspend_state_await_entry_point_offset = 788; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 760; + AOT_Thread_suspend_state_init_async_entry_point_offset = 784; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 768; + AOT_Thread_suspend_state_return_async_entry_point_offset = 792; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 772; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 796; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 776; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 800; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 780; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 804; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 784; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 808; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 788; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 812; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 48; @@ -15289,19 +16015,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 268; + AOT_Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 36; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 820; + 844; static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 824; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 840; + AOT_Thread_callback_stack_return_offset = 848; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 864; static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 328; + AOT_Thread_jump_to_frame_entry_point_offset = 348; static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = - 848; + 872; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -15414,7 +16140,7 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 728, 732, 736, 740, 744, -1, 748, -1, 752, 756, -1, -1, -1, -1, -1, -1}; + 752, 756, 760, 764, 768, -1, 772, -1, 776, 780, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 8; @@ -15650,9 +16376,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -15755,6 +16480,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -15777,6 +16518,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -15789,118 +16532,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1584; + AOT_Thread_active_exception_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1592; + AOT_Thread_active_stacktrace_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1704; + 1752; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1672; + AOT_Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1712; + AOT_Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1624; + AOT_Thread_execution_state_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1600; + AOT_Thread_global_object_pool_offset = 1648; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1656; + AOT_Thread_exit_through_ffi_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -15922,20 +16667,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1608; + 1656; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1616; + AOT_Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1632; + AOT_Thread_safepoint_state_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -15943,31 +16696,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1528; + AOT_Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1520; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1536; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1552; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1568; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1576; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -15979,19 +16732,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1640; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1680; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1688; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1728; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1736; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -16105,8 +16858,8 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -16345,9 +17098,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -16450,6 +17202,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -16472,6 +17240,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -16484,118 +17254,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1648; + AOT_Thread_active_exception_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1656; + AOT_Thread_active_stacktrace_offset = 1704; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1768; + 1816; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1736; + AOT_Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1776; + AOT_Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1688; + AOT_Thread_execution_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1664; + AOT_Thread_global_object_pool_offset = 1712; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1720; + AOT_Thread_exit_through_ffi_offset = 1768; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -16617,20 +17389,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1672; + 1720; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1680; + AOT_Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1696; + AOT_Thread_safepoint_state_offset = 1744; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -16638,31 +17418,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1592; + AOT_Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1584; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1632; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1640; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -16674,19 +17454,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1704; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1744; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1752; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1792; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1800; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -16800,9 +17580,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -17037,9 +17817,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -17142,6 +17921,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -17164,6 +17959,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 32; static constexpr dart::compiler::target::word @@ -17176,118 +17973,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 28; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1584; + AOT_Thread_active_exception_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1592; + AOT_Thread_active_stacktrace_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1704; + 1752; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1672; + AOT_Thread_double_truncate_round_supported_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1712; + AOT_Thread_service_extension_stream_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1624; + AOT_Thread_execution_state_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1600; + AOT_Thread_global_object_pool_offset = 1648; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1656; + AOT_Thread_exit_through_ffi_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1720; + 1768; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -17309,20 +18108,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1608; + 1656; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1616; + AOT_Thread_saved_shadow_call_stack_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1632; + AOT_Thread_safepoint_state_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -17330,31 +18137,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1528; + AOT_Thread_suspend_state_await_entry_point_offset = 1576; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1520; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1568; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1536; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1584; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1544; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1592; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1552; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1600; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1560; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1608; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1568; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1616; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1576; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1624; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -17366,19 +18173,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1640; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1648; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1680; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1688; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1696; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1728; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1736; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -17492,8 +18299,8 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, -1, -1, 1464, 1472, - 1480, 1488, 1496, -1, 1504, 1512, -1, -1}; + 1480, 1488, 1496, 1504, -1, -1, 1512, 1520, + 1528, 1536, 1544, -1, 1552, 1560, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -17728,9 +18535,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 20; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -17833,6 +18639,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -17855,6 +18677,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 32; static constexpr dart::compiler::target::word @@ -17867,118 +18691,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 28; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1648; + AOT_Thread_active_exception_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1656; + AOT_Thread_active_stacktrace_offset = 1704; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1728; + 1776; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1768; + 1816; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1736; + AOT_Thread_double_truncate_round_supported_offset = 1784; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1776; + AOT_Thread_service_extension_stream_offset = 1824; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1688; + AOT_Thread_execution_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1664; + AOT_Thread_global_object_pool_offset = 1712; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1720; + AOT_Thread_exit_through_ffi_offset = 1768; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1784; + 1832; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -18000,20 +18826,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1672; + 1720; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1680; + AOT_Thread_saved_shadow_call_stack_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1696; + AOT_Thread_safepoint_state_offset = 1744; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -18021,31 +18855,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1592; + AOT_Thread_suspend_state_await_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1584; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1608; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1632; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1680; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1640; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1688; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -18057,19 +18891,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1704; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1712; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1744; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1752; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1760; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1792; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1800; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -18183,9 +19017,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - 1432, 1440, 1448, 1456, 1464, 1472, 1480, 1488, 1496, 1504, 1512, - 1520, 1528, 1536, 1544, -1, -1, -1, -1, 1552, 1560, -1, - -1, 1568, 1576, 1584, -1, -1, -1, -1, -1, -1}; + 1480, 1488, 1496, 1504, 1512, 1520, 1528, 1536, 1544, 1552, 1560, + 1568, 1576, 1584, 1592, -1, -1, -1, -1, 1600, 1608, -1, + -1, 1616, 1624, 1632, -1, -1, -1, -1, -1, -1}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; @@ -18420,9 +19254,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 4; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 16; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 20; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 24; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 28; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 4; @@ -18525,6 +19358,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 188; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 112; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 504; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 528; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 500; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 516; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 508; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 512; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 524; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 520; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 12; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 4; @@ -18547,6 +19396,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 8; static constexpr dart::compiler::target::word AOT_String_length_offset = 4; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 4; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 20; static constexpr dart::compiler::target::word @@ -18559,118 +19410,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 8; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 16; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 380; + AOT_Thread_AllocateArray_entry_point_offset = 400; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 832; + AOT_Thread_active_exception_offset = 856; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 836; + AOT_Thread_active_stacktrace_offset = 860; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 272; + AOT_Thread_array_write_barrier_entry_point_offset = 292; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 280; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 300; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 184; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 284; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 304; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 188; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 288; + AOT_Thread_allocate_object_entry_point_offset = 308; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 192; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 292; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 312; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 196; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 296; + AOT_Thread_allocate_object_slow_entry_point_offset = 316; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 200; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 872; + 896; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 344; + AOT_Thread_async_exception_handler_stub_offset = 204; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 364; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 120; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 116; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 336; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 356; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 276; + AOT_Thread_call_to_runtime_entry_point_offset = 296; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 140; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 896; + 920; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 44; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 876; + AOT_Thread_double_truncate_round_supported_offset = 900; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 900; + AOT_Thread_service_extension_stream_offset = 924; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 316; + 336; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 228; + 248; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 320; + AOT_Thread_deoptimize_entry_offset = 340; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 232; + AOT_Thread_deoptimize_stub_offset = 252; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 360; + AOT_Thread_double_abs_address_offset = 380; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 356; + AOT_Thread_double_negate_address_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 52; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 252; + AOT_Thread_enter_safepoint_stub_offset = 272; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 852; + AOT_Thread_execution_state_offset = 876; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 256; + AOT_Thread_exit_safepoint_stub_offset = 276; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 260; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 280; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 264; + AOT_Thread_call_native_through_safepoint_stub_offset = 284; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 324; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 344; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 132; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 372; + AOT_Thread_float_absolute_address_offset = 392; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 368; + AOT_Thread_float_negate_address_offset = 388; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 364; + AOT_Thread_float_not_address_offset = 384; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 376; + AOT_Thread_float_zerow_address_offset = 396; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 840; + AOT_Thread_global_object_pool_offset = 864; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 136; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 868; + AOT_Thread_exit_through_ffi_offset = 892; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 40; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 904; + 928; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 64; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 236; + AOT_Thread_lazy_deopt_from_return_stub_offset = 256; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 240; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 260; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 248; + AOT_Thread_lazy_specialize_type_test_stub_offset = 268; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 80; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 308; + AOT_Thread_megamorphic_call_checked_entry_offset = 328; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 312; + AOT_Thread_switchable_call_miss_entry_offset = 332; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 212; + AOT_Thread_switchable_call_miss_stub_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 340; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 360; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 148; static constexpr dart::compiler::target::word @@ -18692,19 +19545,27 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 180; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 176; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 208; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 216; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 220; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 212; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 112; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 348; -static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 844; + AOT_Thread_predefined_symbols_address_offset = 368; +static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = 868; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 848; + AOT_Thread_saved_shadow_call_stack_offset = 872; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 856; + AOT_Thread_safepoint_state_offset = 880; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 244; + AOT_Thread_slow_type_test_stub_offset = 264; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 332; + AOT_Thread_slow_type_test_entry_point_offset = 352; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 28; static constexpr dart::compiler::target::word @@ -18712,31 +19573,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 60; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 304; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 324; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 208; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 228; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 300; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 320; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 204; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 224; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 76; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 804; + AOT_Thread_suspend_state_await_entry_point_offset = 828; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 800; + AOT_Thread_suspend_state_init_async_entry_point_offset = 824; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 808; + AOT_Thread_suspend_state_return_async_entry_point_offset = 832; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 812; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 836; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 816; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 840; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 820; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 844; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 824; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 848; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 828; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 852; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 48; @@ -18748,19 +19609,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 104; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 268; + AOT_Thread_write_barrier_entry_point_offset = 288; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 32; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 36; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 860; + 884; static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 864; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 880; + AOT_Thread_callback_stack_return_offset = 888; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 904; static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 328; + AOT_Thread_jump_to_frame_entry_point_offset = 348; static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = - 888; + 912; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -18873,9 +19734,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 4, 12, 8, 16}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 728, 732, 736, -1, -1, 740, - 744, 748, -1, -1, -1, 752, 756, 760, 764, 768, 772, - 776, 780, -1, -1, -1, -1, 784, 788, 792, 796}; + -1, -1, -1, -1, -1, 752, 756, 760, -1, -1, 764, + 768, 772, -1, -1, -1, 776, 780, 784, 788, 792, 796, + 800, 804, -1, -1, -1, -1, 808, 812, 816, 820}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 12; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 8; @@ -19111,9 +19972,8 @@ static constexpr dart::compiler::target::word AOT_Closure_instantiator_type_arguments_offset = 8; static constexpr dart::compiler::target::word AOT_ClosureData_default_type_arguments_kind_offset = 32; +static constexpr dart::compiler::target::word AOT_Code_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_object_pool_offset = 40; -static constexpr dart::compiler::target::word - AOT_Code_saved_instructions_offset = 48; static constexpr dart::compiler::target::word AOT_Code_owner_offset = 56; static constexpr dart::compiler::target::word AOT_Context_num_variables_offset = 8; @@ -19216,6 +20076,22 @@ static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 376; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 224; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_await_offset = 1008; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_handle_exception_offset = 1056; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_offset = 1000; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_init_async_star_offset = 1032; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_offset = 1016; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 1024; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_return_async_star_offset = 1048; +static constexpr dart::compiler::target::word + AOT_ObjectStore_suspend_state_yield_async_star_offset = 1040; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 16; static constexpr dart::compiler::target::word AOT_PointerBase_data_offset = 8; @@ -19238,6 +20114,8 @@ static constexpr dart::compiler::target::word AOT_String_hash_offset = 4; static constexpr dart::compiler::target::word AOT_String_length_offset = 8; static constexpr dart::compiler::target::word AOT_SubtypeTestCache_cache_offset = 8; +static constexpr dart::compiler::target::word + AOT_SuspendState_FrameSizeGrowthGap = 0; static constexpr dart::compiler::target::word AOT_SuspendState_error_callback_offset = 40; static constexpr dart::compiler::target::word @@ -19250,118 +20128,120 @@ static constexpr dart::compiler::target::word AOT_SuspendState_pc_offset = 16; static constexpr dart::compiler::target::word AOT_SuspendState_then_callback_offset = 32; static constexpr dart::compiler::target::word - AOT_Thread_AllocateArray_entry_point_offset = 736; + AOT_Thread_AllocateArray_entry_point_offset = 776; static constexpr dart::compiler::target::word - AOT_Thread_active_exception_offset = 1640; + AOT_Thread_active_exception_offset = 1688; static constexpr dart::compiler::target::word - AOT_Thread_active_stacktrace_offset = 1648; + AOT_Thread_active_stacktrace_offset = 1696; static constexpr dart::compiler::target::word - AOT_Thread_array_write_barrier_entry_point_offset = 520; + AOT_Thread_array_write_barrier_entry_point_offset = 560; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 536; + AOT_Thread_allocate_mint_with_fpu_regs_entry_point_offset = 576; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_with_fpu_regs_stub_offset = 344; static constexpr dart::compiler::target::word - AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 544; + AOT_Thread_allocate_mint_without_fpu_regs_entry_point_offset = 584; static constexpr dart::compiler::target::word AOT_Thread_allocate_mint_without_fpu_regs_stub_offset = 352; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_entry_point_offset = 552; + AOT_Thread_allocate_object_entry_point_offset = 592; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_stub_offset = 360; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_parameterized_entry_point_offset = 560; + AOT_Thread_allocate_object_parameterized_entry_point_offset = 600; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_parameterized_stub_offset = 368; static constexpr dart::compiler::target::word - AOT_Thread_allocate_object_slow_entry_point_offset = 568; + AOT_Thread_allocate_object_slow_entry_point_offset = 608; static constexpr dart::compiler::target::word AOT_Thread_allocate_object_slow_stub_offset = 376; static constexpr dart::compiler::target::word AOT_Thread_api_top_scope_offset = - 1720; + 1768; static constexpr dart::compiler::target::word - AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 664; + AOT_Thread_async_exception_handler_stub_offset = 384; +static constexpr dart::compiler::target::word + AOT_Thread_auto_scope_native_wrapper_entry_point_offset = 704; static constexpr dart::compiler::target::word AOT_Thread_bool_false_offset = 216; static constexpr dart::compiler::target::word AOT_Thread_bool_true_offset = 208; static constexpr dart::compiler::target::word - AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 648; + AOT_Thread_bootstrap_native_wrapper_entry_point_offset = 688; static constexpr dart::compiler::target::word - AOT_Thread_call_to_runtime_entry_point_offset = 528; + AOT_Thread_call_to_runtime_entry_point_offset = 568; static constexpr dart::compiler::target::word AOT_Thread_call_to_runtime_stub_offset = 256; static constexpr dart::compiler::target::word AOT_Thread_dart_stream_offset = - 1760; + 1808; static constexpr dart::compiler::target::word AOT_Thread_dispatch_table_array_offset = 88; static constexpr dart::compiler::target::word - AOT_Thread_double_truncate_round_supported_offset = 1728; + AOT_Thread_double_truncate_round_supported_offset = 1776; static constexpr dart::compiler::target::word - AOT_Thread_service_extension_stream_offset = 1768; + AOT_Thread_service_extension_stream_offset = 1816; static constexpr dart::compiler::target::word AOT_Thread_optimize_entry_offset = - 608; + 648; static constexpr dart::compiler::target::word AOT_Thread_optimize_stub_offset = - 432; + 472; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_entry_offset = 616; + AOT_Thread_deoptimize_entry_offset = 656; static constexpr dart::compiler::target::word - AOT_Thread_deoptimize_stub_offset = 440; + AOT_Thread_deoptimize_stub_offset = 480; static constexpr dart::compiler::target::word - AOT_Thread_double_abs_address_offset = 696; + AOT_Thread_double_abs_address_offset = 736; static constexpr dart::compiler::target::word - AOT_Thread_double_negate_address_offset = 688; + AOT_Thread_double_negate_address_offset = 728; static constexpr dart::compiler::target::word AOT_Thread_end_offset = 104; static constexpr dart::compiler::target::word - AOT_Thread_enter_safepoint_stub_offset = 480; + AOT_Thread_enter_safepoint_stub_offset = 520; static constexpr dart::compiler::target::word - AOT_Thread_execution_state_offset = 1680; + AOT_Thread_execution_state_offset = 1728; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_stub_offset = 488; + AOT_Thread_exit_safepoint_stub_offset = 528; static constexpr dart::compiler::target::word - AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 496; + AOT_Thread_exit_safepoint_ignore_unwind_in_progress_stub_offset = 536; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_stub_offset = 504; + AOT_Thread_call_native_through_safepoint_stub_offset = 544; static constexpr dart::compiler::target::word - AOT_Thread_call_native_through_safepoint_entry_point_offset = 624; + AOT_Thread_call_native_through_safepoint_entry_point_offset = 664; static constexpr dart::compiler::target::word AOT_Thread_fix_allocation_stub_code_offset = 240; static constexpr dart::compiler::target::word AOT_Thread_fix_callers_target_code_offset = 232; static constexpr dart::compiler::target::word - AOT_Thread_float_absolute_address_offset = 720; + AOT_Thread_float_absolute_address_offset = 760; static constexpr dart::compiler::target::word - AOT_Thread_float_negate_address_offset = 712; + AOT_Thread_float_negate_address_offset = 752; static constexpr dart::compiler::target::word - AOT_Thread_float_not_address_offset = 704; + AOT_Thread_float_not_address_offset = 744; static constexpr dart::compiler::target::word - AOT_Thread_float_zerow_address_offset = 728; + AOT_Thread_float_zerow_address_offset = 768; static constexpr dart::compiler::target::word - AOT_Thread_global_object_pool_offset = 1656; + AOT_Thread_global_object_pool_offset = 1704; static constexpr dart::compiler::target::word AOT_Thread_invoke_dart_code_stub_offset = 248; static constexpr dart::compiler::target::word - AOT_Thread_exit_through_ffi_offset = 1712; + AOT_Thread_exit_through_ffi_offset = 1760; static constexpr dart::compiler::target::word AOT_Thread_isolate_offset = 80; static constexpr dart::compiler::target::word AOT_Thread_isolate_group_offset = - 1776; + 1824; static constexpr dart::compiler::target::word AOT_Thread_field_table_values_offset = 128; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_return_stub_offset = 448; + AOT_Thread_lazy_deopt_from_return_stub_offset = 488; static constexpr dart::compiler::target::word - AOT_Thread_lazy_deopt_from_throw_stub_offset = 456; + AOT_Thread_lazy_deopt_from_throw_stub_offset = 496; static constexpr dart::compiler::target::word - AOT_Thread_lazy_specialize_type_test_stub_offset = 472; + AOT_Thread_lazy_specialize_type_test_stub_offset = 512; static constexpr dart::compiler::target::word AOT_Thread_marking_stack_block_offset = 160; static constexpr dart::compiler::target::word - AOT_Thread_megamorphic_call_checked_entry_offset = 592; + AOT_Thread_megamorphic_call_checked_entry_offset = 632; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_entry_offset = 600; + AOT_Thread_switchable_call_miss_entry_offset = 640; static constexpr dart::compiler::target::word - AOT_Thread_switchable_call_miss_stub_offset = 400; + AOT_Thread_switchable_call_miss_stub_offset = 440; static constexpr dart::compiler::target::word - AOT_Thread_no_scope_native_wrapper_entry_point_offset = 656; + AOT_Thread_no_scope_native_wrapper_entry_point_offset = 696; static constexpr dart::compiler::target::word AOT_Thread_late_initialization_error_shared_with_fpu_regs_stub_offset = 272; static constexpr dart::compiler::target::word @@ -19383,20 +20263,28 @@ static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_with_fpu_regs_stub_offset = 336; static constexpr dart::compiler::target::word AOT_Thread_range_error_shared_without_fpu_regs_stub_offset = 328; +static constexpr dart::compiler::target::word AOT_Thread_resume_stub_offset = + 392; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_not_future_stub_offset = 408; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_star_stub_offset = 416; +static constexpr dart::compiler::target::word + AOT_Thread_return_async_stub_offset = 400; static constexpr dart::compiler::target::word AOT_Thread_object_null_offset = 200; static constexpr dart::compiler::target::word - AOT_Thread_predefined_symbols_address_offset = 672; + AOT_Thread_predefined_symbols_address_offset = 712; static constexpr dart::compiler::target::word AOT_Thread_resume_pc_offset = - 1664; + 1712; static constexpr dart::compiler::target::word - AOT_Thread_saved_shadow_call_stack_offset = 1672; + AOT_Thread_saved_shadow_call_stack_offset = 1720; static constexpr dart::compiler::target::word - AOT_Thread_safepoint_state_offset = 1688; + AOT_Thread_safepoint_state_offset = 1736; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_stub_offset = 464; + AOT_Thread_slow_type_test_stub_offset = 504; static constexpr dart::compiler::target::word - AOT_Thread_slow_type_test_entry_point_offset = 640; + AOT_Thread_slow_type_test_entry_point_offset = 680; static constexpr dart::compiler::target::word AOT_Thread_stack_limit_offset = 56; static constexpr dart::compiler::target::word @@ -19404,31 +20292,31 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_Thread_stack_overflow_flags_offset = 120; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 584; + AOT_Thread_stack_overflow_shared_with_fpu_regs_entry_point_offset = 624; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 392; + AOT_Thread_stack_overflow_shared_with_fpu_regs_stub_offset = 432; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 576; + AOT_Thread_stack_overflow_shared_without_fpu_regs_entry_point_offset = 616; static constexpr dart::compiler::target::word - AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 384; + AOT_Thread_stack_overflow_shared_without_fpu_regs_stub_offset = 424; static constexpr dart::compiler::target::word AOT_Thread_store_buffer_block_offset = 152; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_await_entry_point_offset = 1584; + AOT_Thread_suspend_state_await_entry_point_offset = 1632; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_entry_point_offset = 1576; + AOT_Thread_suspend_state_init_async_entry_point_offset = 1624; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_entry_point_offset = 1592; + AOT_Thread_suspend_state_return_async_entry_point_offset = 1640; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1600; + AOT_Thread_suspend_state_return_async_not_future_entry_point_offset = 1648; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1608; + AOT_Thread_suspend_state_init_async_star_entry_point_offset = 1656; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1616; + AOT_Thread_suspend_state_yield_async_star_entry_point_offset = 1664; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1624; + AOT_Thread_suspend_state_return_async_star_entry_point_offset = 1672; static constexpr dart::compiler::target::word - AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1632; + AOT_Thread_suspend_state_handle_exception_entry_point_offset = 1680; static constexpr dart::compiler::target::word AOT_Thread_top_exit_frame_info_offset = 144; static constexpr dart::compiler::target::word AOT_Thread_top_offset = 96; @@ -19440,19 +20328,19 @@ static constexpr dart::compiler::target::word AOT_Thread_unboxed_double_runtime_arg_offset = 192; static constexpr dart::compiler::target::word AOT_Thread_vm_tag_offset = 176; static constexpr dart::compiler::target::word - AOT_Thread_write_barrier_entry_point_offset = 512; + AOT_Thread_write_barrier_entry_point_offset = 552; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_mask_offset = 64; static constexpr dart::compiler::target::word AOT_Thread_heap_base_offset = 72; static constexpr dart::compiler::target::word AOT_Thread_callback_code_offset = - 1696; -static constexpr dart::compiler::target::word - AOT_Thread_callback_stack_return_offset = 1704; -static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1736; -static constexpr dart::compiler::target::word - AOT_Thread_jump_to_frame_entry_point_offset = 632; -static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = 1744; +static constexpr dart::compiler::target::word + AOT_Thread_callback_stack_return_offset = 1752; +static constexpr dart::compiler::target::word AOT_Thread_random_offset = 1784; +static constexpr dart::compiler::target::word + AOT_Thread_jump_to_frame_entry_point_offset = 672; +static constexpr dart::compiler::target::word AOT_Thread_tsan_utils_offset = + 1792; static constexpr dart::compiler::target::word AOT_TsanUtils_setjmp_function_offset = 0; static constexpr dart::compiler::target::word @@ -19566,9 +20454,9 @@ static constexpr dart::compiler::target::word AOT_Code_entry_point_offset[] = { 8, 24, 16, 32}; static constexpr dart::compiler::target::word AOT_Thread_write_barrier_wrappers_thread_offset[] = { - -1, -1, -1, -1, -1, 1432, 1440, 1448, -1, -1, 1456, - 1464, 1472, -1, -1, -1, 1480, 1488, 1496, 1504, 1512, 1520, - 1528, 1536, -1, -1, -1, -1, 1544, 1552, 1560, 1568}; + -1, -1, -1, -1, -1, 1480, 1488, 1496, -1, -1, 1504, + 1512, 1520, -1, -1, -1, 1528, 1536, 1544, 1552, 1560, 1568, + 1576, 1584, -1, -1, -1, -1, 1592, 1600, 1608, 1616}; static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize = 24; static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 16; diff --git a/runtime/vm/compiler/runtime_offsets_list.h b/runtime/vm/compiler/runtime_offsets_list.h index b631b58ba26..d4b23a48d99 100644 --- a/runtime/vm/compiler/runtime_offsets_list.h +++ b/runtime/vm/compiler/runtime_offsets_list.h @@ -111,8 +111,8 @@ FIELD(Closure, hash_offset) \ FIELD(Closure, instantiator_type_arguments_offset) \ FIELD(ClosureData, default_type_arguments_kind_offset) \ + FIELD(Code, instructions_offset) \ FIELD(Code, object_pool_offset) \ - FIELD(Code, saved_instructions_offset) \ FIELD(Code, owner_offset) \ FIELD(Context, num_variables_offset) \ FIELD(Context, parent_offset) \ @@ -149,6 +149,7 @@ FIELD(Isolate, current_tag_offset) \ FIELD(Isolate, default_tag_offset) \ FIELD(Isolate, finalizers_offset) \ + NOT_IN_PRODUCT(FIELD(Isolate, has_resumption_breakpoints_offset)) \ FIELD(Isolate, ic_miss_code_offset) \ FIELD(IsolateGroup, object_store_offset) \ FIELD(IsolateGroup, shared_class_table_offset) \ @@ -176,6 +177,14 @@ FIELD(ObjectStore, int_type_offset) \ FIELD(ObjectStore, string_type_offset) \ FIELD(ObjectStore, type_type_offset) \ + FIELD(ObjectStore, suspend_state_await_offset) \ + FIELD(ObjectStore, suspend_state_handle_exception_offset) \ + FIELD(ObjectStore, suspend_state_init_async_offset) \ + FIELD(ObjectStore, suspend_state_init_async_star_offset) \ + FIELD(ObjectStore, suspend_state_return_async_offset) \ + FIELD(ObjectStore, suspend_state_return_async_not_future_offset) \ + FIELD(ObjectStore, suspend_state_return_async_star_offset) \ + FIELD(ObjectStore, suspend_state_yield_async_star_offset) \ FIELD(OneByteString, data_offset) \ FIELD(PointerBase, data_offset) \ FIELD(Pointer, type_arguments_offset) \ @@ -189,6 +198,7 @@ FIELD(String, hash_offset) \ FIELD(String, length_offset) \ FIELD(SubtypeTestCache, cache_offset) \ + FIELD(SuspendState, FrameSizeGrowthGap) \ FIELD(SuspendState, error_callback_offset) \ FIELD(SuspendState, frame_size_offset) \ FIELD(SuspendState, function_data_offset) \ @@ -210,6 +220,7 @@ FIELD(Thread, allocate_object_slow_entry_point_offset) \ FIELD(Thread, allocate_object_slow_stub_offset) \ FIELD(Thread, api_top_scope_offset) \ + FIELD(Thread, async_exception_handler_stub_offset) \ FIELD(Thread, auto_scope_native_wrapper_entry_point_offset) \ FIELD(Thread, bool_false_offset) \ FIELD(Thread, bool_true_offset) \ @@ -263,6 +274,10 @@ FIELD(Thread, null_cast_error_shared_without_fpu_regs_stub_offset) \ FIELD(Thread, range_error_shared_with_fpu_regs_stub_offset) \ FIELD(Thread, range_error_shared_without_fpu_regs_stub_offset) \ + FIELD(Thread, resume_stub_offset) \ + FIELD(Thread, return_async_not_future_stub_offset) \ + FIELD(Thread, return_async_star_stub_offset) \ + FIELD(Thread, return_async_stub_offset) \ \ FIELD(Thread, object_null_offset) \ FIELD(Thread, predefined_symbols_address_offset) \ @@ -459,8 +474,10 @@ #define JIT_OFFSETS_LIST(FIELD, ARRAY, SIZEOF, ARRAY_SIZEOF, PAYLOAD_SIZEOF, \ RANGE, CONSTANT) \ + FIELD(Code, active_instructions_offset) \ FIELD(Function, usage_counter_offset) \ - FIELD(ICData, receivers_static_type_offset) + FIELD(ICData, receivers_static_type_offset) \ + FIELD(SuspendState, frame_capacity_offset) #define AOT_OFFSETS_LIST(FIELD, ARRAY, SIZEOF, ARRAY_SIZEOF, PAYLOAD_SIZEOF, \ RANGE, CONSTANT) \ diff --git a/runtime/vm/compiler/stub_code_compiler.cc b/runtime/vm/compiler/stub_code_compiler.cc index bd7219fdae2..213650a96dd 100644 --- a/runtime/vm/compiler/stub_code_compiler.cc +++ b/runtime/vm/compiler/stub_code_compiler.cc @@ -1274,9 +1274,34 @@ static intptr_t SuspendStateFpOffset() { compiler::target::kWordSize; } +static void CallDartCoreLibraryFunction( + Assembler* assembler, + intptr_t entry_point_offset_in_thread, + intptr_t function_offset_in_object_store, + bool uses_args_desc = false) { + if (FLAG_precompiled_mode) { + __ Call(Address(THR, entry_point_offset_in_thread)); + } else { + __ LoadIsolateGroup(FUNCTION_REG); + __ LoadFromOffset( + FUNCTION_REG, + Address(FUNCTION_REG, target::IsolateGroup::object_store_offset())); + __ LoadFromOffset(FUNCTION_REG, + Address(FUNCTION_REG, function_offset_in_object_store)); + __ LoadCompressedFieldFromOffset(CODE_REG, FUNCTION_REG, + target::Function::code_offset()); + if (!uses_args_desc) { + // Load a GC-safe value for the arguments descriptor (unused but tagged). + __ LoadImmediate(ARGS_DESC_REG, 0); + } + __ Call(FieldAddress(FUNCTION_REG, target::Function::entry_point_offset())); + } +} + void StubCodeCompiler::GenerateSuspendStub( Assembler* assembler, - intptr_t suspend_entry_point_offset) { + intptr_t suspend_entry_point_offset_in_thread, + intptr_t suspend_function_offset_in_object_store) { const Register kArgument = SuspendStubABI::kArgumentReg; const Register kTemp = SuspendStubABI::kTempReg; const Register kFrameSize = SuspendStubABI::kFrameSizeReg; @@ -1284,7 +1309,8 @@ void StubCodeCompiler::GenerateSuspendStub( const Register kFunctionData = SuspendStubABI::kFunctionDataReg; const Register kSrcFrame = SuspendStubABI::kSrcFrameReg; const Register kDstFrame = SuspendStubABI::kDstFrameReg; - Label alloc_slow_case, alloc_done, init_done, old_gen_object, call_await; + Label alloc_slow_case, alloc_done, init_done, resize_suspend_state, + old_gen_object, call_dart; #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_ARM64) SPILLS_LR_TO_FRAME({}); // Simulate entering the caller (Dart) frame. @@ -1300,10 +1326,29 @@ void StubCodeCompiler::GenerateSuspendStub( __ EnterStubFrame(); __ CompareClassId(kSuspendState, kSuspendStateCid, kTemp); - __ BranchIf(EQUAL, &init_done); - __ MoveRegister(kFunctionData, kSuspendState); + if (FLAG_precompiled_mode) { + __ BranchIf(EQUAL, &init_done); + } else { + Label alloc_suspend_state; + __ BranchIf(NOT_EQUAL, &alloc_suspend_state); + + __ CompareWithMemoryValue( + kFrameSize, + FieldAddress(kSuspendState, + target::SuspendState::frame_capacity_offset())); + __ BranchIf(UNSIGNED_GREATER, &resize_suspend_state); + + __ StoreToOffset( + kFrameSize, + FieldAddress(kSuspendState, target::SuspendState::frame_size_offset())); + __ Jump(&init_done); + + __ Bind(&alloc_suspend_state); + } + __ Comment("Allocate SuspendState"); + __ MoveRegister(kFunctionData, kSuspendState); // Check for allocation tracing. NOT_IN_PRODUCT( @@ -1312,6 +1357,7 @@ void StubCodeCompiler::GenerateSuspendStub( // Compute the rounded instance size. const intptr_t fixed_size_plus_alignment_padding = (target::SuspendState::HeaderSize() + + target::SuspendState::FrameSizeGrowthGap() * target::kWordSize + target::ObjectAlignment::kObjectAlignment - 1); __ AddImmediate(kTemp, kFrameSize, fixed_size_plus_alignment_padding); __ AndImmediate(kTemp, -target::ObjectAlignment::kObjectAlignment); @@ -1329,6 +1375,16 @@ void StubCodeCompiler::GenerateSuspendStub( __ SubRegisters(kTemp, kSuspendState); __ AddImmediate(kSuspendState, kHeapObjectTag); + if (!FLAG_precompiled_mode) { + // Use rounded object size to calculate and save frame capacity. + __ AddImmediate(kTemp, kTemp, -target::SuspendState::payload_offset()); + __ StoreToOffset( + kTemp, FieldAddress(kSuspendState, + target::SuspendState::frame_capacity_offset())); + // Restore rounded object size. + __ AddImmediate(kTemp, kTemp, target::SuspendState::payload_offset()); + } + // Calculate the size tag. { Label size_tag_overflow, done; @@ -1381,8 +1437,8 @@ void StubCodeCompiler::GenerateSuspendStub( __ Bind(&alloc_done); __ Comment("Save SuspendState to frame"); - __ LoadFromOffset(kTemp, Address(FPREG, kSavedCallerFpSlotFromFp * - compiler::target::kWordSize)); + __ LoadFromOffset( + kTemp, Address(FPREG, kSavedCallerFpSlotFromFp * target::kWordSize)); __ StoreToOffset(kSuspendState, Address(kTemp, SuspendStateFpOffset())); __ Bind(&init_done); @@ -1437,22 +1493,32 @@ void StubCodeCompiler::GenerateSuspendStub( } #endif - // Push arguments for _SuspendState._await* method. + // Push arguments for suspend Dart function. __ PushRegistersInOrder({kSuspendState, kArgument}); // Write barrier. __ BranchIfBit(kSuspendState, target::ObjectAlignment::kNewObjectBitPosition, ZERO, &old_gen_object); - __ Bind(&call_await); - __ Comment("Call _SuspendState._await method"); - __ Call(Address(THR, suspend_entry_point_offset)); + __ Bind(&call_dart); + __ Comment("Call suspend Dart function"); + CallDartCoreLibraryFunction(assembler, suspend_entry_point_offset_in_thread, + suspend_function_offset_in_object_store); __ LeaveStubFrame(); + #if !defined(TARGET_ARCH_X64) && !defined(TARGET_ARCH_IA32) - // Drop caller frame on all architectures except x86 which needs to maintain - // call/return balance to avoid performance regressions. + // Drop caller frame on all architectures except x86 (X64/IA32) which + // needs to maintain call/return balance to avoid performance regressions. __ LeaveDartFrame(); +#elif defined(TARGET_ARCH_X64) + // Restore PP in JIT mode on x64 as epilogue following SuspendStub call + // will only unwind frame and return. + if (!FLAG_precompiled_mode) { + __ LoadFromOffset( + PP, Address(FPREG, target::frame_layout.saved_caller_pp_from_fp * + target::kWordSize)); + } #endif __ Ret(); @@ -1476,6 +1542,24 @@ void StubCodeCompiler::GenerateSuspendStub( __ PopRegister(kArgument); // Restore argument. __ Jump(&alloc_done); + __ Bind(&resize_suspend_state); + __ Comment("Resize SuspendState"); + // Save argument and frame size. + __ PushRegistersInOrder({kArgument, kFrameSize}); + __ PushObject(NullObject()); // Make space on stack for the return value. + __ SmiTag(kFrameSize); + // Pass frame size and old suspend state to runtime entry. + __ PushRegistersInOrder({kFrameSize, kSuspendState}); + // It's okay to call runtime for resizing SuspendState objects + // as it can only happen in the unoptimized code if expression + // stack grows between suspends, or once after OSR transition. + __ CallRuntime(kAllocateSuspendStateRuntimeEntry, 2); + __ Drop(2); // Drop arguments + __ PopRegister(kSuspendState); // Get result. + __ PopRegister(kFrameSize); // Restore frame size. + __ PopRegister(kArgument); // Restore argument. + __ Jump(&alloc_done); + __ Bind(&old_gen_object); __ Comment("Old gen SuspendState slow case"); { @@ -1492,30 +1576,35 @@ void StubCodeCompiler::GenerateSuspendStub( #endif rt.Call(kEnsureRememberedAndMarkingDeferredRuntimeEntry, 2); } - __ Jump(&call_await); + __ Jump(&call_dart); } void StubCodeCompiler::GenerateAwaitStub(Assembler* assembler) { GenerateSuspendStub(assembler, - target::Thread::suspend_state_await_entry_point_offset()); + target::Thread::suspend_state_await_entry_point_offset(), + target::ObjectStore::suspend_state_await_offset()); } void StubCodeCompiler::GenerateYieldAsyncStarStub(Assembler* assembler) { GenerateSuspendStub( assembler, - target::Thread::suspend_state_yield_async_star_entry_point_offset()); + target::Thread::suspend_state_yield_async_star_entry_point_offset(), + target::ObjectStore::suspend_state_yield_async_star_offset()); } void StubCodeCompiler::GenerateInitSuspendableFunctionStub( Assembler* assembler, - intptr_t init_entry_point_offset) { + intptr_t init_entry_point_offset_in_thread, + intptr_t init_function_offset_in_object_store) { const Register kTypeArgs = InitSuspendableFunctionStubABI::kTypeArgsReg; __ EnterStubFrame(); __ LoadObject(ARGS_DESC_REG, ArgumentsDescriptorBoxed(/*type_args_len=*/1, /*num_arguments=*/0)); __ PushRegister(kTypeArgs); - __ Call(Address(THR, init_entry_point_offset)); + CallDartCoreLibraryFunction(assembler, init_entry_point_offset_in_thread, + init_function_offset_in_object_store, + /*uses_args_desc=*/true); __ LeaveStubFrame(); // Set :suspend_state in the caller frame. @@ -1526,13 +1615,15 @@ void StubCodeCompiler::GenerateInitSuspendableFunctionStub( void StubCodeCompiler::GenerateInitAsyncStub(Assembler* assembler) { GenerateInitSuspendableFunctionStub( - assembler, target::Thread::suspend_state_init_async_entry_point_offset()); + assembler, target::Thread::suspend_state_init_async_entry_point_offset(), + target::ObjectStore::suspend_state_init_async_offset()); } void StubCodeCompiler::GenerateInitAsyncStarStub(Assembler* assembler) { GenerateInitSuspendableFunctionStub( assembler, - target::Thread::suspend_state_init_async_star_entry_point_offset()); + target::Thread::suspend_state_init_async_star_entry_point_offset(), + target::ObjectStore::suspend_state_init_async_star_offset()); } void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { @@ -1544,7 +1635,7 @@ void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { const Register kResumePc = ResumeStubABI::kResumePcReg; const Register kException = ResumeStubABI::kExceptionReg; const Register kStackTrace = ResumeStubABI::kStackTraceReg; - Label rethrow_exception; + Label call_runtime; // Top of the stack on entry: // ... [SuspendState] [value] [exception] [stackTrace] [ReturnAddress] @@ -1563,6 +1654,15 @@ void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { __ Breakpoint(); __ Bind(&okay); } + { + Label okay; + __ LoadFromOffset( + kTemp, FieldAddress(kSuspendState, target::SuspendState::pc_offset())); + __ CompareImmediate(kTemp, 0); + __ BranchIf(NOT_EQUAL, &okay); + __ Breakpoint(); + __ Bind(&okay); + } #endif __ LoadFromOffset( @@ -1582,16 +1682,48 @@ void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { __ Bind(&okay); } #endif + if (!FLAG_precompiled_mode) { + // Copy Code object (part of the fixed frame which is not copied below) + // and restore pool pointer. + __ MoveRegister(kTemp, kSuspendState); + __ AddRegisters(kTemp, kFrameSize); + __ LoadFromOffset( + CODE_REG, + Address(kTemp, + target::SuspendState::payload_offset() - kHeapObjectTag + + target::frame_layout.code_from_fp * target::kWordSize)); + __ StoreToOffset( + CODE_REG, + Address(FPREG, target::frame_layout.code_from_fp * target::kWordSize)); +#if !defined(TARGET_ARCH_IA32) + __ LoadPoolPointer(PP); +#endif + } // Do not copy fixed frame between the first local and FP. __ AddImmediate(kFrameSize, (target::frame_layout.first_local_from_fp + 1) * target::kWordSize); __ SubRegisters(SPREG, kFrameSize); __ Comment("Copy frame from SuspendState"); + intptr_t num_saved_regs = 0; + if (kSrcFrame == THR) { + __ PushRegister(THR); + ++num_saved_regs; + } + if (kDstFrame == CODE_REG) { + __ PushRegister(CODE_REG); + ++num_saved_regs; + } __ AddImmediate(kSrcFrame, kSuspendState, target::SuspendState::payload_offset() - kHeapObjectTag); - __ MoveRegister(kDstFrame, SPREG); + __ AddImmediate(kDstFrame, SPREG, num_saved_regs * target::kWordSize); __ CopyMemoryWords(kSrcFrame, kDstFrame, kFrameSize, kTemp); + if (kDstFrame == CODE_REG) { + __ PopRegister(CODE_REG); + } + if (kSrcFrame == THR) { + __ PopRegister(THR); + } __ Comment("Transfer control"); @@ -1600,11 +1732,6 @@ void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { __ StoreZero(FieldAddress(kSuspendState, target::SuspendState::pc_offset()), kTemp); - __ LoadFromOffset(kException, - Address(FPREG, param_offset + 2 * target::kWordSize)); - __ CompareObject(kException, NullObject()); - __ BranchIf(NOT_EQUAL, &rethrow_exception); - #if defined(TARGET_ARCH_X64) || defined(TARGET_ARCH_IA32) // Adjust resume PC to skip extra epilogue generated on x86 // right after the call to suspend stub in order to maintain @@ -1612,41 +1739,78 @@ void StubCodeCompiler::GenerateResumeStub(Assembler* assembler) { __ AddImmediate(kResumePc, SuspendStubABI::kResumePcDistance); #endif + static_assert((kException != CODE_REG) && (kException != PP), + "should not interfere"); + __ LoadFromOffset(kException, + Address(FPREG, param_offset + 2 * target::kWordSize)); + __ CompareObject(kException, NullObject()); + __ BranchIf(NOT_EQUAL, &call_runtime); + + if (!FLAG_precompiled_mode) { + // Check if Code is disabled. + __ LoadFromOffset( + kTemp, FieldAddress(CODE_REG, target::Code::instructions_offset())); + __ CompareWithMemoryValue( + kTemp, + FieldAddress(CODE_REG, target::Code::active_instructions_offset())); + __ BranchIf(NOT_EQUAL, &call_runtime); + +#if !defined(PRODUCT) + // Check if there is a breakpoint at resumption. + __ LoadIsolate(kTemp); + __ LoadFromOffset( + kTemp, + Address(kTemp, target::Isolate::has_resumption_breakpoints_offset()), + kUnsignedByte); + __ CompareImmediate(kTemp, 0); + __ BranchIf(NOT_EQUAL, &call_runtime); +#endif + } + __ LoadFromOffset(CallingConventions::kReturnReg, Address(FPREG, param_offset + 3 * target::kWordSize)); __ Jump(kResumePc); - __ Comment("Rethrow exception"); - __ Bind(&rethrow_exception); + __ Comment("Call runtime to throw exception or deopt"); + __ Bind(&call_runtime); __ LoadFromOffset(kStackTrace, Address(FPREG, param_offset + 1 * target::kWordSize)); + static_assert((kStackTrace != CODE_REG) && (kStackTrace != PP), + "should not interfere"); - // Adjust stack/LR/RA as if suspended Dart function called + // Set return address as if suspended Dart function called // stub with kResumePc as a return address. -#if defined(TARGET_ARCH_IA32) || defined(TARGET_ARCH_X64) - __ PushRegister(kResumePc); -#elif defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_ARM64) - RESTORES_RETURN_ADDRESS_FROM_REGISTER_TO_LR(__ MoveRegister(LR, kResumePc)); -#elif defined(TARGET_ARCH_RISCV32) || defined(TARGET_ARCH_RISCV64) - __ MoveRegister(RA, kResumePc); -#else -#error Unknown target -#endif + __ SetReturnAddress(kResumePc); + if (!FLAG_precompiled_mode) { + __ LoadFromOffset(CODE_REG, THR, target::Thread::resume_stub_offset()); + } #if !defined(TARGET_ARCH_IA32) __ set_constant_pool_allowed(false); #endif __ EnterStubFrame(); __ PushObject(NullObject()); // Make room for (unused) result. __ PushRegistersInOrder({kException, kStackTrace}); - __ CallRuntime(kReThrowRuntimeEntry, /*argument_count=*/2); - __ Breakpoint(); + __ CallRuntime(kResumeFrameRuntimeEntry, /*argument_count=*/2); + + if (FLAG_precompiled_mode) { + __ Breakpoint(); + } else { + __ LeaveStubFrame(); + __ LoadFromOffset(CallingConventions::kReturnReg, + Address(FPREG, param_offset + 3 * target::kWordSize)); + // Lazy deoptimize. + __ Ret(); + } } -void StubCodeCompiler::GenerateReturnStub(Assembler* assembler, - intptr_t return_entry_point_offset) { +void StubCodeCompiler::GenerateReturnStub( + Assembler* assembler, + intptr_t return_entry_point_offset_in_thread, + intptr_t return_function_offset_in_object_store, + intptr_t return_stub_offset_in_thread) { const Register kSuspendState = ReturnStubABI::kSuspendStateReg; #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_ARM64) @@ -1654,11 +1818,23 @@ void StubCodeCompiler::GenerateReturnStub(Assembler* assembler, #endif __ LoadFromOffset(kSuspendState, Address(FPREG, SuspendStateFpOffset())); +#ifdef DEBUG + { + Label okay; + __ CompareObject(kSuspendState, NullObject()); + __ BranchIf(NOT_EQUAL, &okay); + __ Breakpoint(); + __ Bind(&okay); + } +#endif __ LeaveDartFrame(); - + if (!FLAG_precompiled_mode) { + __ LoadFromOffset(CODE_REG, THR, return_stub_offset_in_thread); + } __ EnterStubFrame(); __ PushRegistersInOrder({kSuspendState, CallingConventions::kReturnReg}); - __ Call(Address(THR, return_entry_point_offset)); + CallDartCoreLibraryFunction(assembler, return_entry_point_offset_in_thread, + return_function_offset_in_object_store); __ LeaveStubFrame(); __ Ret(); } @@ -1666,20 +1842,26 @@ void StubCodeCompiler::GenerateReturnStub(Assembler* assembler, void StubCodeCompiler::GenerateReturnAsyncStub(Assembler* assembler) { GenerateReturnStub( assembler, - target::Thread::suspend_state_return_async_entry_point_offset()); + target::Thread::suspend_state_return_async_entry_point_offset(), + target::ObjectStore::suspend_state_return_async_offset(), + target::Thread::return_async_stub_offset()); } void StubCodeCompiler::GenerateReturnAsyncNotFutureStub(Assembler* assembler) { GenerateReturnStub( assembler, target::Thread:: - suspend_state_return_async_not_future_entry_point_offset()); + suspend_state_return_async_not_future_entry_point_offset(), + target::ObjectStore::suspend_state_return_async_not_future_offset(), + target::Thread::return_async_not_future_stub_offset()); } void StubCodeCompiler::GenerateReturnAsyncStarStub(Assembler* assembler) { GenerateReturnStub( assembler, - target::Thread::suspend_state_return_async_star_entry_point_offset()); + target::Thread::suspend_state_return_async_star_entry_point_offset(), + target::ObjectStore::suspend_state_return_async_star_offset(), + target::Thread::return_async_star_stub_offset()); } void StubCodeCompiler::GenerateAsyncExceptionHandlerStub(Assembler* assembler) { @@ -1701,12 +1883,17 @@ void StubCodeCompiler::GenerateAsyncExceptionHandlerStub(Assembler* assembler) { __ BranchIf(EQUAL, &rethrow_exception); __ LeaveDartFrame(); + if (!FLAG_precompiled_mode) { + __ LoadFromOffset(CODE_REG, THR, + target::Thread::async_exception_handler_stub_offset()); + } __ EnterStubFrame(); __ PushRegistersInOrder( {kSuspendState, kExceptionObjectReg, kStackTraceObjectReg}); - __ Call(Address( - THR, - target::Thread::suspend_state_handle_exception_entry_point_offset())); + CallDartCoreLibraryFunction( + assembler, + target::Thread::suspend_state_handle_exception_entry_point_offset(), + target::ObjectStore::suspend_state_handle_exception_offset()); __ LeaveStubFrame(); __ Ret(); @@ -1717,6 +1904,10 @@ void StubCodeCompiler::GenerateAsyncExceptionHandlerStub(Assembler* assembler) { __ Comment("Rethrow exception"); __ Bind(&rethrow_exception); __ LeaveDartFrame(); + if (!FLAG_precompiled_mode) { + __ LoadFromOffset(CODE_REG, THR, + target::Thread::async_exception_handler_stub_offset()); + } __ EnterStubFrame(); __ PushObject(NullObject()); // Make room for (unused) result. __ PushRegistersInOrder({kExceptionObjectReg, kStackTraceObjectReg}); diff --git a/runtime/vm/compiler/stub_code_compiler.h b/runtime/vm/compiler/stub_code_compiler.h index 7cd39e17794..e4da7fac537 100644 --- a/runtime/vm/compiler/stub_code_compiler.h +++ b/runtime/vm/compiler/stub_code_compiler.h @@ -199,13 +199,19 @@ class StubCodeCompiler : public AllStatic { static void GenerateRangeError(Assembler* assembler, bool with_fpu_regs); - static void GenerateSuspendStub(Assembler* assembler, - intptr_t suspend_entry_point_offset); + static void GenerateSuspendStub( + Assembler* assembler, + intptr_t suspend_entry_point_offset_in_thread, + intptr_t suspend_function_offset_in_object_store); static void GenerateInitSuspendableFunctionStub( Assembler* assembler, - intptr_t init_entry_point_offset); - static void GenerateReturnStub(Assembler* assembler, - intptr_t return_entry_point_offset); + intptr_t init_entry_point_offset_in_thread, + intptr_t init_function_offset_in_object_store); + static void GenerateReturnStub( + Assembler* assembler, + intptr_t return_entry_point_offset_in_thread, + intptr_t return_function_offset_in_object_store, + intptr_t return_stub_offset_in_thread); }; } // namespace compiler diff --git a/runtime/vm/constants_arm.h b/runtime/vm/constants_arm.h index 7b0d4ce55e8..224f96994d4 100644 --- a/runtime/vm/constants_arm.h +++ b/runtime/vm/constants_arm.h @@ -560,6 +560,7 @@ struct ResumeStubABI { // Registers for control transfer. // (the 2nd part, can reuse registers from the 1st part) static const Register kResumePcReg = R1; + // Can also reuse kSuspendStateReg but should not conflict with CODE_REG/PP. static const Register kExceptionReg = R3; static const Register kStackTraceReg = R4; }; diff --git a/runtime/vm/constants_arm64.h b/runtime/vm/constants_arm64.h index 0cd27b69152..fea118eefc2 100644 --- a/runtime/vm/constants_arm64.h +++ b/runtime/vm/constants_arm64.h @@ -394,6 +394,7 @@ struct ResumeStubABI { // Registers for control transfer. // (the 2nd part, can reuse registers from the 1st part) static const Register kResumePcReg = R1; + // Can also reuse kSuspendStateReg but should not conflict with CODE_REG/PP. static const Register kExceptionReg = R3; static const Register kStackTraceReg = R4; }; diff --git a/runtime/vm/constants_ia32.h b/runtime/vm/constants_ia32.h index 47f2797fa54..d1412855b89 100644 --- a/runtime/vm/constants_ia32.h +++ b/runtime/vm/constants_ia32.h @@ -276,7 +276,7 @@ struct SuspendStubABI { // Number of bytes to skip after // suspend stub return address in order to resume. // IA32: mov esp, ebp; pop ebp; ret - static const intptr_t kResumePcDistance = 5; + static const intptr_t kResumePcDistance = 4; }; // ABI for InitSuspendableFunctionStub (InitAsyncStub, InitAsyncStarStub). @@ -290,13 +290,16 @@ struct ResumeStubABI { static const Register kTempReg = EDX; // Registers for the frame copying (the 1st part). static const Register kFrameSizeReg = ECX; + // Can reuse THR. static const Register kSrcFrameReg = ESI; + // Can reuse CODE_REG. static const Register kDstFrameReg = EDI; // Registers for control transfer. // (the 2nd part, can reuse registers from the 1st part) static const Register kResumePcReg = ECX; - static const Register kExceptionReg = ESI; - static const Register kStackTraceReg = EDI; + // Can also reuse kSuspendStateReg but should not conflict with CODE_REG. + static const Register kExceptionReg = EAX; + static const Register kStackTraceReg = EBX; }; // ABI for ReturnStub (ReturnAsyncStub, ReturnAsyncNotFutureStub, diff --git a/runtime/vm/constants_riscv.h b/runtime/vm/constants_riscv.h index 435c5f80de2..c18f4134ce9 100644 --- a/runtime/vm/constants_riscv.h +++ b/runtime/vm/constants_riscv.h @@ -404,6 +404,7 @@ struct ResumeStubABI { // Registers for control transfer. // (the 2nd part, can reuse registers from the 1st part) static const Register kResumePcReg = T2; + // Can also reuse kSuspendStateReg but should not conflict with CODE_REG/PP. static const Register kExceptionReg = T3; static const Register kStackTraceReg = T4; }; diff --git a/runtime/vm/constants_x64.h b/runtime/vm/constants_x64.h index c2a11628cc6..119f08c3c03 100644 --- a/runtime/vm/constants_x64.h +++ b/runtime/vm/constants_x64.h @@ -368,6 +368,7 @@ struct ResumeStubABI { // Registers for control transfer. // (the 2nd part, can reuse registers from the 1st part) static const Register kResumePcReg = RCX; + // Can also reuse kSuspendStateReg but should not conflict with CODE_REG/PP. static const Register kExceptionReg = RSI; static const Register kStackTraceReg = RDI; }; diff --git a/runtime/vm/debugger.cc b/runtime/vm/debugger.cc index 4e4f9a174b8..1a83328d3e9 100644 --- a/runtime/vm/debugger.cc +++ b/runtime/vm/debugger.cc @@ -282,7 +282,8 @@ ActivationFrame::ActivationFrame(Kind kind) desc_indices_(8), pc_desc_(PcDescriptors::ZoneHandle()) {} -ActivationFrame::ActivationFrame(const Closure& async_activation) +ActivationFrame::ActivationFrame(const Closure& async_activation, + CallerClosureFinder* caller_closure_finder) : pc_(0), fp_(0), sp_(0), @@ -306,6 +307,17 @@ ActivationFrame::ActivationFrame(const Closure& async_activation) pc_desc_(PcDescriptors::ZoneHandle()) { // Extract the function and the code from the asynchronous activation. function_ = async_activation.function(); + if (caller_closure_finder->IsCompactAsyncCallback(function_)) { + const auto& suspend_state = SuspendState::Handle( + caller_closure_finder->GetSuspendStateFromAsyncCallback( + async_activation)); + if (suspend_state.pc() != 0) { + pc_ = suspend_state.pc(); + code_ = suspend_state.GetCodeObject(); + function_ = code_.function(); + return; + } + } // Force-optimize functions should not be debuggable. ASSERT(!function_.ForceOptimize()); function_.EnsureHasCompiledUnoptimizedCode(); @@ -752,16 +764,24 @@ ObjectPtr ActivationFrame::GetAsyncContextVariable(const String& name) { ObjectPtr ActivationFrame::GetAsyncAwaiter( CallerClosureFinder* caller_closure_finder) { - if (fp() != 0 && !function_.IsNull() && - (function_.IsAsyncClosure() || function_.IsAsyncGenClosure())) { - // Look up caller's closure on the stack. - ObjectPtr* last_caller_obj = reinterpret_cast(GetCallerSp()); - Closure& closure = Closure::Handle(); - closure = StackTraceUtils::FindClosureInFrame(last_caller_obj, function_); + if (fp() != 0 && !function_.IsNull()) { + if (function_.IsCompactAsyncFunction() || + function_.IsCompactAsyncStarFunction()) { + const auto& suspend_state = Object::Handle(GetSuspendStateVar()); + if (suspend_state.IsSuspendState()) { + return caller_closure_finder->FindCallerFromSuspendState( + SuspendState::Cast(suspend_state)); + } + } else if (function_.IsAsyncClosure() || function_.IsAsyncGenClosure()) { + // Look up caller's closure on the stack. + ObjectPtr* last_caller_obj = reinterpret_cast(GetCallerSp()); + Closure& closure = Closure::Handle(); + closure = StackTraceUtils::FindClosureInFrame(last_caller_obj, function_); - if (!closure.IsNull() && caller_closure_finder->IsRunningAsync(closure)) { - closure = caller_closure_finder->FindCaller(closure); - return closure.ptr(); + if (!closure.IsNull() && caller_closure_finder->IsRunningAsync(closure)) { + closure = caller_closure_finder->FindCaller(closure); + return closure.ptr(); + } } } @@ -774,16 +794,13 @@ bool ActivationFrame::HandlesException(const Instance& exc_obj) { return false; } intptr_t try_index = TryIndex(); - if (try_index < 0) { + const auto& handlers = ExceptionHandlers::Handle(code().exception_handlers()); + ASSERT(!handlers.IsNull()); + if ((try_index < 0) && !handlers.has_async_handler()) { return false; } - ExceptionHandlers& handlers = ExceptionHandlers::Handle(); Array& handled_types = Array::Handle(); AbstractType& type = Type::Handle(); - const bool is_async = - function().IsAsyncClosure() || function().IsAsyncGenClosure(); - handlers = code().exception_handlers(); - ASSERT(!handlers.IsNull()); intptr_t num_handlers_checked = 0; while (try_index != kInvalidTryIndex) { // Detect circles in the exception handler data. @@ -812,7 +829,8 @@ bool ActivationFrame::HandlesException(const Instance& exc_obj) { } // Async functions might have indirect exception handlers in the form of // `Future.catchError`. Check the Closure's _FutureListeners. - if (fp() != 0 && is_async) { + if ((fp() != 0) && + (function().IsAsyncClosure() || function().IsAsyncGenClosure())) { CallerClosureFinder caller_closure_finder(Thread::Current()->zone()); ObjectPtr* last_caller_obj = reinterpret_cast(GetCallerSp()); Closure& closure = Closure::Handle( @@ -825,6 +843,17 @@ bool ActivationFrame::HandlesException(const Instance& exc_obj) { futureOrListener = caller_closure_finder.GetFutureFutureListener(futureOrListener); return caller_closure_finder.HasCatchError(futureOrListener); + } else if ((fp() != 0) && function().IsCompactAsyncFunction()) { + CallerClosureFinder caller_closure_finder(Thread::Current()->zone()); + auto& suspend_state = Object::Handle(GetSuspendStateVar()); + if (!suspend_state.IsSuspendState()) { + return false; + } + Object& futureOrListener = + Object::Handle(SuspendState::Cast(suspend_state).function_data()); + futureOrListener = + caller_closure_finder.GetFutureFutureListener(futureOrListener); + return caller_closure_finder.HasCatchError(futureOrListener); } return false; @@ -1074,6 +1103,19 @@ ClosurePtr ActivationFrame::GetClosure() { return Closure::Cast(param).ptr(); } +ObjectPtr ActivationFrame::GetSuspendStateVar() { + ASSERT(function().IsSuspendableFunction()); + return GetStackVar(VariableIndex(SuspendState::kSuspendStateVarIndex)); +} + +ObjectPtr ActivationFrame::GetSuspendableFunctionData() { + Object& suspend_state = Object::Handle(GetSuspendStateVar()); + if (suspend_state.IsSuspendState()) { + return SuspendState::Cast(suspend_state).function_data(); + } + return suspend_state.ptr(); +} + ObjectPtr ActivationFrame::GetStackVar(VariableIndex variable_index) { const intptr_t slot_index = runtime_frame_layout.FrameSlotForVariableIndex(variable_index.value()); @@ -1660,6 +1702,13 @@ bool Debugger::SetupStepOverAsyncSuspension(const char** error) { } return false; } + if (top_frame->function().IsCompactAsyncFunction() || + top_frame->function().IsCompactAsyncStarFunction()) { + const auto& function_data = + Object::Handle(top_frame->GetSuspendableFunctionData()); + SetBreakpointAtResumption(function_data); + return true; + } Object& closure = Object::Handle(top_frame->GetAsyncOperation()); ASSERT(!closure.IsNull()); ASSERT(closure.IsInstance()); @@ -2057,6 +2106,20 @@ DebuggerStackTrace* DebuggerStackTrace::CollectAwaiterReturn() { if (caller_closure_finder.IsRunningAsync(closure)) { break; } + } else if (function.IsCompactAsyncFunction() || + function.IsCompactAsyncStarFunction()) { + ActivationFrame* activation = CollectDartFrame( + isolate, frame->pc(), frame, code, Object::null_array(), 0, + ActivationFrame::kAsyncActivation); + ASSERT(activation != nullptr); + stack_trace->AddActivation(activation); + stack_has_async_function = true; + // Grab the awaiter. + async_activation ^= activation->GetAsyncAwaiter(&caller_closure_finder); + // Bail if we've reach the end of sync execution stack. + if (Object::Handle(activation->GetSuspendStateVar()).IsSuspendState()) { + break; + } } else { stack_trace->AddActivation(CollectDartFrame( isolate, frame->pc(), frame, code, Object::null_array(), 0)); @@ -2094,7 +2157,9 @@ DebuggerStackTrace* DebuggerStackTrace::CollectAwaiterReturn() { } intptr_t deopt_frame_offset = it.GetDeoptFpOffset(); - if (function.IsAsyncClosure() || function.IsAsyncGenClosure()) { + if (function.IsAsyncClosure() || function.IsAsyncGenClosure() || + function.IsCompactAsyncFunction() || + function.IsCompactAsyncStarFunction()) { ActivationFrame* activation = CollectDartFrame( isolate, it.pc(), frame, inlined_code, deopt_frame, deopt_frame_offset, ActivationFrame::kAsyncActivation); @@ -2125,7 +2190,8 @@ DebuggerStackTrace* DebuggerStackTrace::CollectAwaiterReturn() { // Append the awaiter return call stack. while (!async_activation.IsNull() && async_activation.context() != Object::null()) { - ActivationFrame* activation = new (zone) ActivationFrame(async_activation); + ActivationFrame* activation = + new (zone) ActivationFrame(async_activation, &caller_closure_finder); if (activation->function().IsAsyncClosure() || activation->function().IsAsyncGenClosure()) { activation->ExtractTokenPositionFromAsyncClosure(); @@ -3107,6 +3173,39 @@ Breakpoint* Debugger::BreakpointAtActivation(const Instance& closure) { return NULL; } +void Debugger::SetBreakpointAtResumption(const Object& function_data) { + ASSERT(!function_data.IsNull()); + ASSERT(function_data.IsInstance()); + breakpoints_at_resumption_.Add(function_data.ptr()); + isolate_->set_has_resumption_breakpoints(true); +} + +void Debugger::ResumptionBreakpoint() { + ASSERT(!breakpoints_at_resumption_.is_empty()); + ASSERT(isolate_->has_resumption_breakpoints()); + + ActivationFrame* top_frame = TopDartFrame(); + ASSERT(top_frame->function().IsSuspendableFunction()); + const auto& function_data = + Object::Handle(top_frame->GetSuspendableFunctionData()); + + for (intptr_t i = 0, n = breakpoints_at_resumption_.length(); i < n; ++i) { + if (breakpoints_at_resumption_[i] == function_data.ptr()) { + breakpoints_at_resumption_.RemoveAt(i); + if (breakpoints_at_resumption_.is_empty()) { + isolate_->set_has_resumption_breakpoints(false); + } + if (FLAG_verbose_debug) { + OS::PrintErr( + "ResumptionBreakpoint - hit a breakpoint, continue single " + "stepping\n"); + } + EnterSingleStepMode(); + return; + } + } +} + Breakpoint* Debugger::SetBreakpointAtLine(const String& script_url, intptr_t line_number) { // Prevent future tests from calling this function in the wrong @@ -3352,6 +3451,9 @@ void Debugger::VisitObjectPointers(ObjectPointerVisitor* visitor) { loc = loc->next(); } visitor->VisitPointer(reinterpret_cast(&top_frame_awaiter_)); + for (intptr_t i = 0, n = breakpoints_at_resumption_.length(); i < n; ++i) { + visitor->VisitPointer(&breakpoints_at_resumption_[i]); + } } void Debugger::Pause(ServiceEvent* event) { @@ -3487,7 +3589,9 @@ void Debugger::HandleSteppingRequest(DebuggerStackTrace* stack_trace, } else if (resume_action_ == kStepOut) { if (FLAG_async_debugger) { if (stack_trace->FrameAt(0)->function().IsAsyncClosure() || - stack_trace->FrameAt(0)->function().IsAsyncGenClosure()) { + stack_trace->FrameAt(0)->function().IsAsyncGenClosure() || + stack_trace->FrameAt(0)->function().IsCompactAsyncFunction() || + stack_trace->FrameAt(0)->function().IsCompactAsyncStarFunction()) { CallerClosureFinder caller_closure_finder(Thread::Current()->zone()); // Request to step out of an async/async* closure. const Object& async_op = Object::Handle( @@ -3880,25 +3984,29 @@ void Debugger::SignalPausedEvent(ActivationFrame* top_frame, Breakpoint* bpt) { static bool IsAtAsyncJump(ActivationFrame* top_frame) { Zone* zone = Thread::Current()->zone(); - Object& closure_or_null = - Object::Handle(zone, top_frame->GetAsyncOperation()); - if (!closure_or_null.IsNull()) { + if (!top_frame->function().IsCompactAsyncFunction() && + !top_frame->function().IsCompactAsyncStarFunction()) { + Object& closure_or_null = + Object::Handle(zone, top_frame->GetAsyncOperation()); + if (closure_or_null.IsNull()) { + return false; + } ASSERT(top_frame->function().IsAsyncClosure() || top_frame->function().IsAsyncGenClosure()); ASSERT(closure_or_null.IsInstance()); ASSERT(Instance::Cast(closure_or_null).IsClosure()); - const auto& pc_descriptors = - PcDescriptors::Handle(zone, top_frame->code().pc_descriptors()); - if (pc_descriptors.IsNull()) { - return false; - } - const TokenPosition looking_for = top_frame->TokenPos(); - PcDescriptors::Iterator it(pc_descriptors, UntaggedPcDescriptors::kOther); - while (it.MoveNext()) { - if (it.TokenPos() == looking_for && - it.YieldIndex() != UntaggedPcDescriptors::kInvalidYieldIndex) { - return true; - } + } + const auto& pc_descriptors = + PcDescriptors::Handle(zone, top_frame->code().pc_descriptors()); + if (pc_descriptors.IsNull()) { + return false; + } + const TokenPosition looking_for = top_frame->TokenPos(); + PcDescriptors::Iterator it(pc_descriptors, UntaggedPcDescriptors::kOther); + while (it.MoveNext()) { + if (it.TokenPos() == looking_for && + it.YieldIndex() != UntaggedPcDescriptors::kInvalidYieldIndex) { + return true; } } return false; @@ -3964,7 +4072,8 @@ ErrorPtr Debugger::PauseStepping() { if (FLAG_lazy_async_stacks) { // async and async* functions always contain synthetic async_ops. if ((frame->function().IsAsyncFunction() || - frame->function().IsAsyncGenerator())) { + frame->function().IsAsyncGenerator()) && + !frame->function().IsSuspendableFunction()) { ASSERT(!frame->GetSavedCurrentContext().IsNull()); ASSERT(frame->GetSavedCurrentContext().num_variables() > Context::kAsyncFutureIndex); @@ -4003,6 +4112,14 @@ ErrorPtr Debugger::PauseStepping() { return Error::null(); } + // TODO(dartbug.com/48378): Consider aligning async/async* functions + // with regular function wrt the first stop in the function prologue. + if ((frame->function().IsCompactAsyncFunction() || + frame->function().IsCompactAsyncStarFunction()) && + frame->GetSuspendStateVar() == Object::null()) { + return Error::null(); + } + // We are stopping in this frame at the token pos. last_stepping_fp_ = frame->fp(); last_stepping_pos_ = frame->TokenPos(); @@ -4612,7 +4729,18 @@ void Debugger::MaybeAsyncStepInto(const Closure& async_op) { } void Debugger::AsyncStepInto(const Closure& async_op) { - SetBreakpointAtActivation(async_op, true); + Zone* zone = Thread::Current()->zone(); + CallerClosureFinder caller_closure_finder(zone); + if (caller_closure_finder.IsCompactAsyncCallback( + Function::Handle(zone, async_op.function()))) { + const auto& suspend_state = SuspendState::Handle( + zone, caller_closure_finder.GetSuspendStateFromAsyncCallback(async_op)); + const auto& function_data = + Object::Handle(zone, suspend_state.function_data()); + SetBreakpointAtResumption(function_data); + } else { + SetBreakpointAtActivation(async_op, true); + } Continue(); } diff --git a/runtime/vm/debugger.h b/runtime/vm/debugger.h index 0c95bd3f89e..47e701f156e 100644 --- a/runtime/vm/debugger.h +++ b/runtime/vm/debugger.h @@ -326,7 +326,8 @@ class ActivationFrame : public ZoneAllocated { explicit ActivationFrame(Kind kind); - explicit ActivationFrame(const Closure& async_activation); + ActivationFrame(const Closure& async_activation, + CallerClosureFinder* caller_closure_finder); uword pc() const { return pc_; } uword fp() const { return fp_; } @@ -388,6 +389,8 @@ class ActivationFrame : public ZoneAllocated { const Context& GetSavedCurrentContext(); ObjectPtr GetAsyncOperation(); + ObjectPtr GetSuspendStateVar(); + ObjectPtr GetSuspendableFunctionData(); TypeArgumentsPtr BuildParameters( const GrowableObjectArray& param_names, @@ -816,6 +819,13 @@ class Debugger { // Callback to the debugger to continue frame rewind, post-deoptimization. void RewindPostDeopt(); + // Sets breakpoint at resumption of a suspendable function + // with given function data (such as _Future or _AsyncStarStreamController). + void SetBreakpointAtResumption(const Object& function_data); + + // Check breakpoints at frame resumption. Called from generated code. + void ResumptionBreakpoint(); + private: ErrorPtr PauseRequest(ServiceEvent::EventKind kind); @@ -968,6 +978,10 @@ class Debugger { Dart_ExceptionPauseInfo exc_pause_info_; + // Holds function data corresponding to suspendable + // function which should be stopped when resumed. + MallocGrowableArray breakpoints_at_resumption_; + friend class Isolate; friend class BreakpointLocation; DISALLOW_COPY_AND_ASSIGN(Debugger); diff --git a/runtime/vm/exceptions.cc b/runtime/vm/exceptions.cc index 8d08c18ed8d..23e9aa240c9 100644 --- a/runtime/vm/exceptions.cc +++ b/runtime/vm/exceptions.cc @@ -580,14 +580,15 @@ static void JumpToExceptionHandler(Thread* thread, uword frame_pointer, const Object& exception_object, const Object& stacktrace_object) { + bool clear_deopt = false; uword remapped_pc = thread->pending_deopts().RemapExceptionPCForDeopt( - program_counter, frame_pointer); + program_counter, frame_pointer, &clear_deopt); thread->set_active_exception(exception_object); thread->set_active_stacktrace(stacktrace_object); thread->set_resume_pc(remapped_pc); uword run_exception_pc = StubCode::RunExceptionHandler().EntryPoint(); Exceptions::JumpToFrame(thread, run_exception_pc, stack_pointer, - frame_pointer, false /* do not clear deopt */); + frame_pointer, clear_deopt); } NO_SANITIZE_SAFE_STACK // This function manipulates the safestack pointer. diff --git a/runtime/vm/isolate.h b/runtime/vm/isolate.h index ffb8a648f44..7aec9f660cb 100644 --- a/runtime/vm/isolate.h +++ b/runtime/vm/isolate.h @@ -1150,6 +1150,16 @@ class Isolate : public BaseIsolate, public IntrusiveDListEntry { return OFFSET_OF(Isolate, single_step_); } + void set_has_resumption_breakpoints(bool value) { + has_resumption_breakpoints_ = value; + } + bool has_resumption_breakpoints() const { + return has_resumption_breakpoints_; + } + static intptr_t has_resumption_breakpoints_offset() { + return OFFSET_OF(Isolate, has_resumption_breakpoints_); + } + bool ResumeRequest() const { return LoadIsolateFlagsBit(); } // Lets the embedder know that a service message resulted in a resume request. void SetResumeRequest() { @@ -1554,6 +1564,7 @@ class Isolate : public BaseIsolate, public IntrusiveDListEntry { // shutdown to prevent usage of dangling pointers. GrowableObjectArrayPtr finalizers_; bool single_step_ = false; + bool has_resumption_breakpoints_ = false; bool is_system_isolate_ = false; // End accessed from generated code. diff --git a/runtime/vm/isolate_reload.cc b/runtime/vm/isolate_reload.cc index 1386624ec8c..f182dcede5f 100644 --- a/runtime/vm/isolate_reload.cc +++ b/runtime/vm/isolate_reload.cc @@ -1882,11 +1882,13 @@ class InvalidationCollector : public ObjectVisitor { GrowableArray* functions, GrowableArray* kernel_infos, GrowableArray* fields, + GrowableArray* suspend_states, GrowableArray* instances) : zone_(zone), functions_(functions), kernel_infos_(kernel_infos), fields_(fields), + suspend_states_(suspend_states), instances_(instances) {} virtual ~InvalidationCollector() {} @@ -1904,6 +1906,12 @@ class InvalidationCollector : public ObjectVisitor { zone_, static_cast(obj))); } else if (cid == kFieldCid) { fields_->Add(&Field::Handle(zone_, static_cast(obj))); + } else if (cid == kSuspendStateCid) { + const auto& suspend_state = + SuspendState::Handle(zone_, static_cast(obj)); + if (suspend_state.pc() != 0) { + suspend_states_->Add(&suspend_state); + } } else if (cid > kNumPredefinedCids) { instances_->Add(&Instance::Handle(zone_, static_cast(obj))); } @@ -1914,6 +1922,7 @@ class InvalidationCollector : public ObjectVisitor { GrowableArray* const functions_; GrowableArray* const kernel_infos_; GrowableArray* const fields_; + GrowableArray* const suspend_states_; GrowableArray* const instances_; }; @@ -1928,16 +1937,18 @@ void ProgramReloadContext::RunInvalidationVisitors() { GrowableArray functions(4 * KB); GrowableArray kernel_infos(KB); GrowableArray fields(4 * KB); + GrowableArray suspend_states(4 * KB); GrowableArray instances(4 * KB); { HeapIterationScope iteration(thread); InvalidationCollector visitor(zone, &functions, &kernel_infos, &fields, - &instances); + &suspend_states, &instances); iteration.IterateObjects(&visitor); } InvalidateKernelInfos(zone, kernel_infos); + InvalidateSuspendStates(zone, suspend_states); InvalidateFunctions(zone, functions); InvalidateFields(zone, fields, instances); } @@ -2028,6 +2039,55 @@ void ProgramReloadContext::InvalidateFunctions( } } +void ProgramReloadContext::InvalidateSuspendStates( + Zone* zone, + const GrowableArray& suspend_states) { + TIMELINE_SCOPE(InvalidateSuspendStates); + auto thread = Thread::Current(); + HANDLESCOPE(thread); + + CallSiteResetter resetter(zone); + Code& code = Code::Handle(zone); + Function& function = Function::Handle(zone); + + SafepointWriteRwLocker ml(thread, thread->isolate_group()->program_lock()); + for (intptr_t i = 0, n = suspend_states.length(); i < n; ++i) { + const SuspendState& suspend_state = *suspend_states[i]; + ASSERT(suspend_state.pc() != 0); + code = suspend_state.GetCodeObject(); + ASSERT(!code.IsNull()); + if (code.is_optimized() && !code.is_force_optimized()) { + function = code.function(); + // Before disabling [code], function needs to + // switch to unoptimized code first. + function.SwitchToLazyCompiledUnoptimizedCode(); + // Disable [code] in order to trigger lazy deoptimization. + // Unless [code] is compiled for OSR, it may be already + // disabled in SwitchToLazyCompiledUnoptimizedCode. + if (!code.IsDisabled()) { + code.DisableDartCode(); + } + // Reset switchable calls and caches for unoptimized + // code (if any), as it is going to be used to continue + // execution of the suspended function. + code = function.unoptimized_code(); + if (!code.IsNull()) { + resetter.ResetSwitchableCalls(code); + resetter.ResetCaches(code); + } + } else { + function = code.function(); + // ResetSwitchableCalls uses ICData array, which + // can be cleared along with the code in InvalidateFunctions + // during previous hot reloads. + // Rebuild an unoptimized code in order to recreate ICData array. + function.EnsureHasCompiledUnoptimizedCode(); + resetter.ResetSwitchableCalls(code); + resetter.ResetCaches(code); + } + } +} + // Finds fields that are initialized or have a value that does not conform to // the field's static type, setting Field::needs_load_guard(). Accessors for // such fields are compiled with additional checks to handle lazy initialization diff --git a/runtime/vm/isolate_reload.h b/runtime/vm/isolate_reload.h index 939f512b84f..07978e4ed2b 100644 --- a/runtime/vm/isolate_reload.h +++ b/runtime/vm/isolate_reload.h @@ -281,7 +281,6 @@ class IsolateGroupReloadContext { friend class Class; // AddStaticFieldMapping, AddEnumBecomeMapping. friend class Library; friend class ObjectLocator; - friend class MarkFunctionsForRecompilation; // IsDirty. friend class ReasonForCancelling; friend class ProgramReloadContext; friend class IsolateGroup; // GetClassSizeForHeapWalkAt @@ -356,6 +355,9 @@ class ProgramReloadContext { const GrowableArray& kernel_infos); void InvalidateFunctions(Zone* zone, const GrowableArray& functions); + void InvalidateSuspendStates( + Zone* zone, + const GrowableArray& suspend_states); void InvalidateFields(Zone* zone, const GrowableArray& fields, const GrowableArray& instances); @@ -411,7 +413,6 @@ class ProgramReloadContext { friend class Class; // AddStaticFieldMapping, AddEnumBecomeMapping. friend class Library; friend class ObjectLocator; - friend class MarkFunctionsForRecompilation; // IsDirty. friend class ReasonForCancelling; friend class IsolateGroupReloadContext; }; diff --git a/runtime/vm/kernel_loader.cc b/runtime/vm/kernel_loader.cc index 5cb7d4fd284..ee8d3a63037 100644 --- a/runtime/vm/kernel_loader.cc +++ b/runtime/vm/kernel_loader.cc @@ -2037,9 +2037,6 @@ void KernelLoader::LoadProcedure(const Library& library, FunctionNodeHelper function_node_helper(&helper_); function_node_helper.ReadUntilIncluding(FunctionNodeHelper::kDartAsyncMarker); if (function_node_helper.async_marker_ == FunctionNodeHelper::kAsync) { - if (!FLAG_precompiled_mode) { - FATAL("Compact async functions are only supported in AOT mode."); - } function.set_modifier(UntaggedFunction::kAsync); function.set_is_debuggable(true); function.set_is_inlinable(false); @@ -2047,9 +2044,6 @@ void KernelLoader::LoadProcedure(const Library& library, ASSERT(function.IsCompactAsyncFunction()); } else if (function_node_helper.async_marker_ == FunctionNodeHelper::kAsyncStar) { - if (!FLAG_precompiled_mode) { - FATAL("Compact async* functions are only supported in AOT mode."); - } function.set_modifier(UntaggedFunction::kAsyncGen); function.set_is_debuggable(true); function.set_is_inlinable(false); diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc index 3526a5c946f..10239f2580d 100644 --- a/runtime/vm/object.cc +++ b/runtime/vm/object.cc @@ -26055,12 +26055,22 @@ SuspendStatePtr SuspendState::New(intptr_t frame_size, const Instance& function_data, Heap::Space space) { SuspendState& result = SuspendState::Handle(); + const intptr_t instance_size = SuspendState::InstanceSize( + frame_size + SuspendState::FrameSizeGrowthGap()); { - ObjectPtr raw = Object::Allocate( - SuspendState::kClassId, SuspendState::InstanceSize(frame_size), space, - SuspendState::ContainsCompressedPointers()); + ObjectPtr raw = + Object::Allocate(SuspendState::kClassId, instance_size, space, + SuspendState::ContainsCompressedPointers()); NoSafepointScope no_safepoint; result ^= raw; +#if !defined(DART_PRECOMPILED_RUNTIME) + // Include heap object alignment overhead into the frame capacity. + const intptr_t frame_capacity = + instance_size - SuspendState::payload_offset(); + ASSERT(SuspendState::InstanceSize(frame_capacity) == instance_size); + ASSERT(frame_size <= frame_capacity); + result.set_frame_capacity(frame_capacity); +#endif result.set_frame_size(frame_size); result.set_pc(0); result.set_function_data(function_data); @@ -26068,6 +26078,13 @@ SuspendStatePtr SuspendState::New(intptr_t frame_size, return result.ptr(); } +#if !defined(DART_PRECOMPILED_RUNTIME) +void SuspendState::set_frame_capacity(intptr_t frame_capcity) const { + ASSERT(frame_capcity >= 0); + StoreNonPointer(&untag()->frame_capacity_, frame_capcity); +} +#endif + void SuspendState::set_frame_size(intptr_t frame_size) const { ASSERT(frame_size >= 0); StoreNonPointer(&untag()->frame_size_, frame_size); @@ -26094,8 +26111,10 @@ CodePtr SuspendState::GetCodeObject() const { ASSERT(code != Code::null()); return code; #else - UNIMPLEMENTED(); - return Code::null(); + ObjectPtr code = *(reinterpret_cast( + untag()->payload() + untag()->frame_size_ + + runtime_frame_layout.code_from_fp * kWordSize)); + return Code::RawCast(code); #endif // defined(DART_PRECOMPILED_RUNTIME) } diff --git a/runtime/vm/object.h b/runtime/vm/object.h index 06fae2d3788..bf48abd59d5 100644 --- a/runtime/vm/object.h +++ b/runtime/vm/object.h @@ -6404,9 +6404,14 @@ class Code : public Object { return code->untag()->instructions(); } - static intptr_t saved_instructions_offset() { + static intptr_t instructions_offset() { return OFFSET_OF(UntaggedCode, instructions_); } +#if !defined(DART_PRECOMPILED_RUNTIME) + static intptr_t active_instructions_offset() { + return OFFSET_OF(UntaggedCode, active_instructions_); + } +#endif using EntryKind = CodeEntryKind; @@ -11813,20 +11818,31 @@ class SuspendState : public Instance { static intptr_t HeaderSize() { return sizeof(UntaggedSuspendState); } static intptr_t UnroundedSize(SuspendStatePtr ptr) { - return UnroundedSize(ptr->untag()->frame_size_); + return UnroundedSize(ptr->untag()->frame_capacity()); } - static intptr_t UnroundedSize(intptr_t frame_size) { - return HeaderSize() + frame_size; + static intptr_t UnroundedSize(intptr_t frame_capacity) { + return HeaderSize() + frame_capacity; } static intptr_t InstanceSize() { ASSERT_EQUAL(sizeof(UntaggedSuspendState), OFFSET_OF_RETURNED_VALUE(UntaggedSuspendState, payload)); return 0; } - static intptr_t InstanceSize(intptr_t frame_size) { - return RoundedAllocationSize(UnroundedSize(frame_size)); + static intptr_t InstanceSize(intptr_t frame_capacity) { + return RoundedAllocationSize(UnroundedSize(frame_capacity)); } + // Number of extra words reserved for growth of frame size + // during SuspendState allocation. Frames do not grow in AOT. + static intptr_t FrameSizeGrowthGap() { + return ONLY_IN_PRECOMPILED(0) NOT_IN_PRECOMPILED(2); + } + +#if !defined(DART_PRECOMPILED_RUNTIME) + static intptr_t frame_capacity_offset() { + return OFFSET_OF(UntaggedSuspendState, frame_capacity_); + } +#endif static intptr_t frame_size_offset() { return OFFSET_OF(UntaggedSuspendState, frame_size_); } @@ -11848,16 +11864,23 @@ class SuspendState : public Instance { const Instance& function_data, Heap::Space space = Heap::kNew); - InstancePtr function_data() const { return untag()->function_data(); } uword pc() const { return untag()->pc_; } + InstancePtr function_data() const { + return untag()->function_data(); + } // Returns Code object corresponding to the suspended function. CodePtr GetCodeObject() const; private: +#if !defined(DART_PRECOMPILED_RUNTIME) + void set_frame_capacity(intptr_t frame_capcity) const; +#endif void set_frame_size(intptr_t frame_size) const; void set_pc(uword pc) const; void set_function_data(const Instance& function_data) const; + void set_then_callback(const Closure& then_callback) const; + void set_error_callback(const Closure& error_callback) const; FINAL_HEAP_OBJECT_IMPLEMENTATION(SuspendState, Instance); friend class Class; diff --git a/runtime/vm/object_reload.cc b/runtime/vm/object_reload.cc index 85f66537878..d939b4aad65 100644 --- a/runtime/vm/object_reload.cc +++ b/runtime/vm/object_reload.cc @@ -146,7 +146,8 @@ void CallSiteResetter::ResetSwitchableCalls(const Code& code) { descriptors_ = code.pc_descriptors(); PcDescriptors::Iterator iter(descriptors_, UntaggedPcDescriptors::kIcCall); while (iter.MoveNext()) { - FATAL1("%s has IC calls but no ic_data_array\n", object_.ToCString()); + FATAL1("%s has IC calls but no ic_data_array\n", + function.ToFullyQualifiedCString()); } #endif return; diff --git a/runtime/vm/object_store.cc b/runtime/vm/object_store.cc index f2959f4e323..733ed33ff2e 100644 --- a/runtime/vm/object_store.cc +++ b/runtime/vm/object_store.cc @@ -250,6 +250,7 @@ void ObjectStore::InitKnownObjects() { String& function_name = String::Handle(zone); Function& function = Function::Handle(zone); + Field& field = Field::Handle(zone); function_name = async_lib.PrivateName(Symbols::AsyncStarMoveNextHelper()); ASSERT(!function_name.IsNull()); @@ -297,6 +298,10 @@ void ObjectStore::InitKnownObjects() { ASSERT(!function.IsNull()); set_async_star_stream_controller_add_stream(function); + field = cls.LookupFieldAllowPrivate(Symbols::asyncStarBody()); + ASSERT(!field.IsNull()); + set_async_star_stream_controller_async_star_body(field); + if (FLAG_async_debugger) { // Disable debugging and inlining of all functions on the // _AsyncStarStreamController class. diff --git a/runtime/vm/object_store.h b/runtime/vm/object_store.h index 674d1b4180f..e1089870aa2 100644 --- a/runtime/vm/object_store.h +++ b/runtime/vm/object_store.h @@ -180,6 +180,7 @@ class ObjectPointerVisitor; RW(Function, suspend_state_handle_exception) \ RW(Class, async_star_stream_controller) \ RW(Class, stream_class) \ + RW(Field, async_star_stream_controller_async_star_body) \ ARW_RELAXED(Smi, future_timeout_future_index) \ ARW_RELAXED(Smi, future_wait_future_index) \ RW(CompressedStackMaps, canonicalized_stack_map_entries) \ diff --git a/runtime/vm/pending_deopts.cc b/runtime/vm/pending_deopts.cc index 46ae03648b0..c3d7cd2907f 100644 --- a/runtime/vm/pending_deopts.cc +++ b/runtime/vm/pending_deopts.cc @@ -73,7 +73,17 @@ void PendingDeopts::ClearPendingDeoptsAtOrBelow(uword fp, ClearReason reason) { } uword PendingDeopts::RemapExceptionPCForDeopt(uword program_counter, - uword frame_pointer) { + uword frame_pointer, + bool* clear_deopt) { + *clear_deopt = false; + // Do not attempt to deopt at async exception handler as it doesn't + // belong to the function code. Async handler never continues execution + // in the same frame - it either rethrows exception to the caller or + // tail calls Dart handler, leaving the function frame before the call. + if (program_counter == StubCode::AsyncExceptionHandler().EntryPoint()) { + *clear_deopt = true; + return program_counter; + } // Check if the target frame is scheduled for lazy deopt. for (intptr_t i = 0; i < pending_deopts_->length(); i++) { if ((*pending_deopts_)[i].fp() == frame_pointer) { diff --git a/runtime/vm/pending_deopts.h b/runtime/vm/pending_deopts.h index 778dba2ed8e..27f16eb899e 100644 --- a/runtime/vm/pending_deopts.h +++ b/runtime/vm/pending_deopts.h @@ -40,7 +40,9 @@ class PendingDeopts { uword FindPendingDeopt(uword fp); void ClearPendingDeoptsBelow(uword fp, ClearReason reason); void ClearPendingDeoptsAtOrBelow(uword fp, ClearReason reason); - uword RemapExceptionPCForDeopt(uword program_counter, uword frame_pointer); + uword RemapExceptionPCForDeopt(uword program_counter, + uword frame_pointer, + bool* clear_deopt); private: MallocGrowableArray* pending_deopts_; diff --git a/runtime/vm/raw_object.cc b/runtime/vm/raw_object.cc index 07b74a2cb8d..4d87ab1edb1 100644 --- a/runtime/vm/raw_object.cc +++ b/runtime/vm/raw_object.cc @@ -174,8 +174,8 @@ intptr_t UntaggedObject::HeapSizeFromClass(uword tags) const { case kSuspendStateCid: { const SuspendStatePtr raw_suspend_state = static_cast(this); - intptr_t frame_size = raw_suspend_state->untag()->frame_size_; - instance_size = SuspendState::InstanceSize(frame_size); + intptr_t frame_capacity = raw_suspend_state->untag()->frame_capacity(); + instance_size = SuspendState::InstanceSize(frame_capacity); break; } case kTypeArgumentsCid: { @@ -658,7 +658,7 @@ intptr_t UntaggedSuspendState::VisitSuspendStatePointers( } } - return SuspendState::InstanceSize(raw_obj->untag()->frame_size_); + return SuspendState::InstanceSize(raw_obj->untag()->frame_capacity()); } bool UntaggedCode::ContainsPC(const ObjectPtr raw_obj, uword pc) { diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h index eb60d2780de..abc979e5648 100644 --- a/runtime/vm/raw_object.h +++ b/runtime/vm/raw_object.h @@ -3307,6 +3307,7 @@ class UntaggedStackTrace : public UntaggedInstance { class UntaggedSuspendState : public UntaggedInstance { RAW_HEAP_OBJECT_IMPLEMENTATION(SuspendState); + NOT_IN_PRECOMPILED(intptr_t frame_capacity_); intptr_t frame_size_; uword pc_; @@ -3324,6 +3325,14 @@ class UntaggedSuspendState : public UntaggedInstance { public: uword pc() const { return pc_; } + intptr_t frame_capacity() const { +#if defined(DART_PRECOMPILED_RUNTIME) + return frame_size_; +#else + return frame_capacity_; +#endif + } + static intptr_t payload_offset() { return OFFSET_OF_RETURNED_VALUE(UntaggedSuspendState, payload); } diff --git a/runtime/vm/runtime_entry.cc b/runtime/vm/runtime_entry.cc index a3fcc075c9d..caa9315a932 100644 --- a/runtime/vm/runtime_entry.cc +++ b/runtime/vm/runtime_entry.cc @@ -711,15 +711,36 @@ DEFINE_RUNTIME_ENTRY(CloneContext, 1) { // Allocate a SuspendState object. // Arg0: frame size. -// Arg1: function data. +// Arg1: existing SuspendState object or function data. // Return value: newly allocated object. DEFINE_RUNTIME_ENTRY(AllocateSuspendState, 2) { - const Smi& frame_size = Smi::CheckedHandle(zone, arguments.ArgAt(0)); - const Instance& function_data = - Instance::CheckedHandle(zone, arguments.ArgAt(1)); - const SuspendState& result = SuspendState::Handle( - zone, SuspendState::New(frame_size.Value(), function_data, - SpaceForRuntimeAllocation())); + const intptr_t frame_size = + Smi::CheckedHandle(zone, arguments.ArgAt(0)).Value(); + const Object& previous_state = Object::Handle(zone, arguments.ArgAt(1)); + SuspendState& result = SuspendState::Handle(zone); + if (previous_state.IsSuspendState()) { + const auto& suspend_state = SuspendState::Cast(previous_state); + const auto& function_data = + Instance::Handle(zone, suspend_state.function_data()); + ObjectStore* object_store = thread->isolate_group()->object_store(); + if (function_data.GetClassId() == + Class::Handle(zone, object_store->async_star_stream_controller()) + .id()) { + // Reset _AsyncStarStreamController.asyncStarBody to null in order + // to create a new callback closure during next yield. + // The new callback closure will capture the reallocated SuspendState. + function_data.SetField( + Field::Handle( + zone, + object_store->async_star_stream_controller_async_star_body()), + Object::null_object()); + } + result = SuspendState::New(frame_size, function_data, + SpaceForRuntimeAllocation()); + } else { + result = SuspendState::New(frame_size, Instance::Cast(previous_state), + SpaceForRuntimeAllocation()); + } arguments.SetReturn(result); } @@ -3111,6 +3132,20 @@ const char* DeoptReasonToCString(ICData::DeoptReasonId deopt_reason) { } } +static bool IsSuspendedFrame(Zone* zone, + const Function& function, + StackFrame* frame) { + if (!function.IsSuspendableFunction()) { + return false; + } + auto& suspend_state = Object::Handle( + zone, *reinterpret_cast(LocalVarAddress( + frame->fp(), runtime_frame_layout.FrameSlotForVariableIndex( + SuspendState::kSuspendStateVarIndex)))); + return suspend_state.IsSuspendState() && + (SuspendState::Cast(suspend_state).pc() != 0); +} + void DeoptimizeAt(Thread* mutator_thread, const Code& optimized_code, StackFrame* frame) { @@ -3136,7 +3171,12 @@ void DeoptimizeAt(Thread* mutator_thread, function.SwitchToUnoptimizedCode(); } - if (frame->IsMarkedForLazyDeopt()) { + if (IsSuspendedFrame(zone, function, frame)) { + // Frame is suspended and going to be removed from the stack. + if (FLAG_trace_deoptimization) { + THR_Print("Not deoptimizing suspended frame, fp=%" Pp "\n", frame->fp()); + } + } else if (frame->IsMarkedForLazyDeopt()) { // Deopt already scheduled. if (FLAG_trace_deoptimization) { THR_Print("Lazy deopt already scheduled for fp=%" Pp "\n", frame->fp()); @@ -3408,6 +3448,52 @@ DEFINE_RUNTIME_ENTRY(RewindPostDeopt, 0) { UNREACHABLE(); } +// Handle slow path actions for the resumed frame after it was +// copied back to the stack: +// 1) deoptimization; +// 2) breakpoint at resumption; +// 3) throwing an exception. +// +// Arg0: exception +// Arg1: stack trace +DEFINE_RUNTIME_ENTRY(ResumeFrame, 2) { + const Instance& exception = Instance::CheckedHandle(zone, arguments.ArgAt(0)); + const Instance& stacktrace = + Instance::CheckedHandle(zone, arguments.ArgAt(1)); + +#if !defined(DART_PRECOMPILED_RUNTIME) +#if !defined(PRODUCT) + if (isolate->has_resumption_breakpoints()) { + isolate->debugger()->ResumptionBreakpoint(); + } +#endif + + DartFrameIterator iterator(thread, + StackFrameIterator::kNoCrossThreadIteration); + StackFrame* frame = iterator.NextFrame(); + ASSERT(frame->IsDartFrame()); + ASSERT(Function::Handle(zone, frame->LookupDartFunction()) + .IsSuspendableFunction()); + const Code& caller_code = Code::Handle(zone, frame->LookupDartCode()); + if (caller_code.IsDisabled() && caller_code.is_optimized() && + !caller_code.is_force_optimized()) { + const uword deopt_pc = frame->pc(); + thread->pending_deopts().AddPendingDeopt(frame->fp(), deopt_pc); + frame->MarkForLazyDeopt(); + + if (FLAG_trace_deoptimization) { + THR_Print("Lazy deopt scheduled for resumed frame fp=%" Pp ", pc=%" Pp + "\n", + frame->fp(), deopt_pc); + } + } +#endif + + if (!exception.IsNull()) { + Exceptions::ReThrow(thread, exception, stacktrace); + } +} + void OnEveryRuntimeEntryCall(Thread* thread, const char* runtime_call_name, bool can_lazy_deopt) { diff --git a/runtime/vm/runtime_entry_list.h b/runtime/vm/runtime_entry_list.h index 685c56d300e..90a51a99b32 100644 --- a/runtime/vm/runtime_entry_list.h +++ b/runtime/vm/runtime_entry_list.h @@ -62,6 +62,7 @@ namespace dart { V(LateFieldAssignedDuringInitializationError) \ V(LateFieldNotInitializedError) \ V(CompileFunction) \ + V(ResumeFrame) \ V(SwitchableCallMiss) \ V(NotLoaded) diff --git a/runtime/vm/symbols.h b/runtime/vm/symbols.h index 7eb6d2d6894..f0fe6a8eb31 100644 --- a/runtime/vm/symbols.h +++ b/runtime/vm/symbols.h @@ -457,6 +457,7 @@ class ObjectPointerVisitor; V(_yieldAsyncStar, "_yieldAsyncStar") \ V(add, "add") \ V(addStream, "addStream") \ + V(asyncStarBody, "asyncStarBody") \ V(callback, "callback") \ V(capture_length, ":capture_length") \ V(capture_start_index, ":capture_start_index") \ diff --git a/runtime/vm/thread.h b/runtime/vm/thread.h index dc5b90bb4ae..4d95cb45bb7 100644 --- a/runtime/vm/thread.h +++ b/runtime/vm/thread.h @@ -129,6 +129,14 @@ class Thread; StubCode::AllocateObjectParameterized().ptr(), nullptr) \ V(CodePtr, allocate_object_slow_stub_, StubCode::AllocateObjectSlow().ptr(), \ nullptr) \ + V(CodePtr, async_exception_handler_stub_, \ + StubCode::AsyncExceptionHandler().ptr(), nullptr) \ + V(CodePtr, resume_stub_, StubCode::Resume().ptr(), nullptr) \ + V(CodePtr, return_async_stub_, StubCode::ReturnAsync().ptr(), nullptr) \ + V(CodePtr, return_async_not_future_stub_, \ + StubCode::ReturnAsyncNotFuture().ptr(), nullptr) \ + V(CodePtr, return_async_star_stub_, StubCode::ReturnAsyncStar().ptr(), \ + nullptr) \ V(CodePtr, stack_overflow_shared_without_fpu_regs_stub_, \ StubCode::StackOverflowSharedWithoutFPURegs().ptr(), nullptr) \ V(CodePtr, stack_overflow_shared_with_fpu_regs_stub_, \ diff --git a/runtime/vm/type_testing_stubs_test.cc b/runtime/vm/type_testing_stubs_test.cc index 2a0f8e97ffe..8be06b0bccb 100644 --- a/runtime/vm/type_testing_stubs_test.cc +++ b/runtime/vm/type_testing_stubs_test.cc @@ -1140,6 +1140,8 @@ ISOLATE_UNIT_TEST_CASE(TTS_Future) { (() => 3) as int Function()?; )"; + SetupCoreLibrariesForUnitTest(); + const auto& class_future = Class::Handle(IsolateGroup::Current()->object_store()->future_class()); diff --git a/sdk/lib/_internal/vm/lib/async_patch.dart b/sdk/lib/_internal/vm/lib/async_patch.dart index d6f6c74335e..238cbb6aef0 100644 --- a/sdk/lib/_internal/vm/lib/async_patch.dart +++ b/sdk/lib/_internal/vm/lib/async_patch.dart @@ -110,6 +110,7 @@ void _asyncStarMoveNextHelper(var stream) { class _AsyncStarStreamController { @pragma("vm:entry-point") StreamController controller; + @pragma("vm:entry-point") Function? asyncStarBody; bool isAdding = false; bool onListenReceived = false; diff --git a/tests/language/async/await_test.dart b/tests/language/async/await_test.dart index 07c3dadc23e..e7920d60121 100644 --- a/tests/language/async/await_test.dart +++ b/tests/language/async/await_test.dart @@ -2,7 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -library async_await_test; +// VMOptions= +// VMOptions=--optimization-counter-threshold=5 import "package:expect/expect.dart"; import "package:async_helper/async_helper.dart"; diff --git a/tests/language/await/future_test.dart b/tests/language/await/future_test.dart index 10314a44ab6..76546984cba 100644 --- a/tests/language/await/future_test.dart +++ b/tests/language/await/future_test.dart @@ -2,6 +2,7 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// VMOptions= // VMOptions=--optimization-counter-threshold=5 import 'package:expect/expect.dart'; diff --git a/tests/language_2/async/await_test.dart b/tests/language_2/async/await_test.dart index f8b79d224c1..fd3f3f9646a 100644 --- a/tests/language_2/async/await_test.dart +++ b/tests/language_2/async/await_test.dart @@ -4,7 +4,8 @@ // @dart = 2.9 -library async_await_test; +// VMOptions= +// VMOptions=--optimization-counter-threshold=5 import "package:expect/expect.dart"; import "package:async_helper/async_helper.dart"; diff --git a/tests/language_2/await/future_test.dart b/tests/language_2/await/future_test.dart index c927f6f178c..4b9c8d36236 100644 --- a/tests/language_2/await/future_test.dart +++ b/tests/language_2/await/future_test.dart @@ -4,6 +4,7 @@ // @dart = 2.9 +// VMOptions= // VMOptions=--optimization-counter-threshold=5 import 'package:expect/expect.dart';