Revert "[vm] Unify hash codes in type objects"
This reverts commit e82a2230fddad0754fcf70eff3255d7b2f7ecd1f.
Reason for revert: g3 failures
Original change's description:
> [vm] Unify hash codes in type objects
>
> TEST=ci
>
> Change-Id: I53d2268c3aab6fc4583c3201051b68f8fc05d56d
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/305361
> Commit-Queue: Alexander Markov <alexmarkov@google.com>
> Reviewed-by: Ryan Macnak <rmacnak@google.com>
Change-Id: If22c8ed05cd23eb5c62c7a431311827a480263a6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/305540
Auto-Submit: Alexander Markov <alexmarkov@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
diff --git a/runtime/lib/object.cc b/runtime/lib/object.cc
index d0fc8e9..28eead0 100644
--- a/runtime/lib/object.cc
+++ b/runtime/lib/object.cc
@@ -257,6 +257,14 @@
return Bool::Get(type.IsEquivalent(other, TypeEquality::kSyntactical)).ptr();
}
+DEFINE_NATIVE_ENTRY(Type_getHashCode, 0, 1) {
+ const Type& type = Type::CheckedHandle(zone, arguments->NativeArgAt(0));
+ intptr_t hash_val = type.Hash();
+ ASSERT(hash_val > 0);
+ ASSERT(Smi::IsValid(hash_val));
+ return Smi::New(hash_val);
+}
+
DEFINE_NATIVE_ENTRY(Type_equality, 0, 2) {
const Type& type = Type::CheckedHandle(zone, arguments->NativeArgAt(0));
const Instance& other =
diff --git a/runtime/vm/bootstrap_natives.h b/runtime/vm/bootstrap_natives.h
index 9ac8677..cf772df 100644
--- a/runtime/vm/bootstrap_natives.h
+++ b/runtime/vm/bootstrap_natives.h
@@ -30,6 +30,7 @@
V(AbstractType_getHashCode, 1) \
V(AbstractType_toString, 1) \
V(Type_equality, 2) \
+ V(Type_getHashCode, 1) \
V(LibraryPrefix_isLoaded, 1) \
V(LibraryPrefix_setLoaded, 1) \
V(LibraryPrefix_loadingUnit, 1) \
diff --git a/runtime/vm/class_finalizer.cc b/runtime/vm/class_finalizer.cc
index 1424f8a..a7b0fa9 100644
--- a/runtime/vm/class_finalizer.cc
+++ b/runtime/vm/class_finalizer.cc
@@ -1076,7 +1076,10 @@
//
// Caching of the canonical hash codes happens for:
//
-// * UntaggedAbstractType::hash_
+// * UntaggedType::hash_
+// * UntaggedFunctionType::hash_
+// * UntaggedRecordType::hash_
+// * UntaggedTypeParameter::hash_
// * UntaggedTypeArguments::hash_
// * InstancePtr (weak table)
// * ArrayPtr (weak table)
@@ -1093,13 +1096,25 @@
class ClearTypeHashVisitor : public ObjectVisitor {
public:
explicit ClearTypeHashVisitor(Zone* zone)
- : type_(AbstractType::Handle(zone)),
+ : type_param_(TypeParameter::Handle(zone)),
+ type_(Type::Handle(zone)),
+ function_type_(FunctionType::Handle(zone)),
+ record_type_(RecordType::Handle(zone)),
type_args_(TypeArguments::Handle(zone)) {}
void VisitObject(ObjectPtr obj) override {
- if (obj->IsAbstractType()) {
+ if (obj->IsTypeParameter()) {
+ type_param_ ^= obj;
+ type_param_.SetHash(0);
+ } else if (obj->IsType()) {
type_ ^= obj;
type_.SetHash(0);
+ } else if (obj->IsFunctionType()) {
+ function_type_ ^= obj;
+ function_type_.SetHash(0);
+ } else if (obj->IsRecordType()) {
+ record_type_ ^= obj;
+ record_type_.SetHash(0);
} else if (obj->IsTypeArguments()) {
type_args_ ^= obj;
type_args_.SetHash(0);
@@ -1107,7 +1122,10 @@
}
private:
- AbstractType& type_;
+ TypeParameter& type_param_;
+ Type& type_;
+ FunctionType& function_type_;
+ RecordType& record_type_;
TypeArguments& type_args_;
};
diff --git a/runtime/vm/compiler/asm_intrinsifier_arm.cc b/runtime/vm/compiler/asm_intrinsifier_arm.cc
index 3a4839c..81b4c7a 100644
--- a/runtime/vm/compiler/asm_intrinsifier_arm.cc
+++ b/runtime/vm/compiler/asm_intrinsifier_arm.cc
@@ -1199,6 +1199,15 @@
__ Bind(normal_ir_body); // Hash not yet computed.
}
+void AsmIntrinsifier::Type_getHashCode(Assembler* assembler,
+ Label* normal_ir_body) {
+ __ ldr(R0, Address(SP, 0 * target::kWordSize));
+ __ ldr(R0, FieldAddress(R0, target::Type::hash_offset()));
+ __ cmp(R0, Operand(0));
+ READS_RETURN_ADDRESS_FROM_LR(__ bx(LR, NE));
+ __ Bind(normal_ir_body); // Hash not yet computed.
+}
+
void AsmIntrinsifier::Type_equality(Assembler* assembler,
Label* normal_ir_body) {
Label equal, not_equal, equiv_cids_may_be_generic, equiv_cids, check_legacy;
@@ -1262,7 +1271,7 @@
void AsmIntrinsifier::AbstractType_getHashCode(Assembler* assembler,
Label* normal_ir_body) {
__ ldr(R0, Address(SP, 0 * target::kWordSize));
- __ ldr(R0, FieldAddress(R0, target::AbstractType::hash_offset()));
+ __ ldr(R0, FieldAddress(R0, target::FunctionType::hash_offset()));
__ cmp(R0, Operand(0));
READS_RETURN_ADDRESS_FROM_LR(__ bx(LR, NE));
__ Bind(normal_ir_body); // Hash not yet computed.
diff --git a/runtime/vm/compiler/asm_intrinsifier_arm64.cc b/runtime/vm/compiler/asm_intrinsifier_arm64.cc
index ae4746f..aef8a16 100644
--- a/runtime/vm/compiler/asm_intrinsifier_arm64.cc
+++ b/runtime/vm/compiler/asm_intrinsifier_arm64.cc
@@ -1359,6 +1359,16 @@
__ Bind(normal_ir_body);
}
+void AsmIntrinsifier::Type_getHashCode(Assembler* assembler,
+ Label* normal_ir_body) {
+ __ ldr(R0, Address(SP, 0 * target::kWordSize));
+ __ LoadCompressedSmi(R0, FieldAddress(R0, target::Type::hash_offset()));
+ __ cbz(normal_ir_body, R0, kObjectBytes);
+ __ ret();
+ // Hash not yet computed.
+ __ Bind(normal_ir_body);
+}
+
void AsmIntrinsifier::Type_equality(Assembler* assembler,
Label* normal_ir_body) {
Label equal, not_equal, equiv_cids_may_be_generic, equiv_cids, check_legacy;
@@ -1423,7 +1433,7 @@
Label* normal_ir_body) {
__ ldr(R0, Address(SP, 0 * target::kWordSize));
__ LoadCompressedSmi(R0,
- FieldAddress(R0, target::AbstractType::hash_offset()));
+ FieldAddress(R0, target::FunctionType::hash_offset()));
__ cbz(normal_ir_body, R0, kObjectBytes);
__ ret();
// Hash not yet computed.
diff --git a/runtime/vm/compiler/asm_intrinsifier_ia32.cc b/runtime/vm/compiler/asm_intrinsifier_ia32.cc
index 448833b..740501fd 100644
--- a/runtime/vm/compiler/asm_intrinsifier_ia32.cc
+++ b/runtime/vm/compiler/asm_intrinsifier_ia32.cc
@@ -1342,6 +1342,17 @@
// Hash not yet computed.
}
+void AsmIntrinsifier::Type_getHashCode(Assembler* assembler,
+ Label* normal_ir_body) {
+ __ movl(EAX, Address(ESP, +1 * target::kWordSize)); // Type object.
+ __ movl(EAX, FieldAddress(EAX, target::Type::hash_offset()));
+ __ testl(EAX, EAX);
+ __ j(EQUAL, normal_ir_body, Assembler::kNearJump);
+ __ ret();
+ __ Bind(normal_ir_body);
+ // Hash not yet computed.
+}
+
void AsmIntrinsifier::Type_equality(Assembler* assembler,
Label* normal_ir_body) {
Label equal, not_equal, equiv_cids_may_be_generic, equiv_cids, check_legacy;
@@ -1405,8 +1416,8 @@
void AsmIntrinsifier::AbstractType_getHashCode(Assembler* assembler,
Label* normal_ir_body) {
- __ movl(EAX, Address(ESP, +1 * target::kWordSize)); // AbstractType object.
- __ movl(EAX, FieldAddress(EAX, target::AbstractType::hash_offset()));
+ __ movl(EAX, Address(ESP, +1 * target::kWordSize)); // FunctionType object.
+ __ movl(EAX, FieldAddress(EAX, target::FunctionType::hash_offset()));
__ testl(EAX, EAX);
__ j(EQUAL, normal_ir_body, Assembler::kNearJump);
__ ret();
diff --git a/runtime/vm/compiler/asm_intrinsifier_riscv.cc b/runtime/vm/compiler/asm_intrinsifier_riscv.cc
index 02745cd..5dba40c 100644
--- a/runtime/vm/compiler/asm_intrinsifier_riscv.cc
+++ b/runtime/vm/compiler/asm_intrinsifier_riscv.cc
@@ -1396,6 +1396,16 @@
__ Bind(normal_ir_body);
}
+void AsmIntrinsifier::Type_getHashCode(Assembler* assembler,
+ Label* normal_ir_body) {
+ __ lx(A0, Address(SP, 0 * target::kWordSize));
+ __ LoadCompressed(A0, FieldAddress(A0, target::Type::hash_offset()));
+ __ beqz(A0, normal_ir_body, Assembler::kNearJump);
+ __ ret();
+ // Hash not yet computed.
+ __ Bind(normal_ir_body);
+}
+
void AsmIntrinsifier::Type_equality(Assembler* assembler,
Label* normal_ir_body) {
Label equal, not_equal, equiv_cids_may_be_generic, equiv_cids, check_legacy;
@@ -1458,7 +1468,7 @@
void AsmIntrinsifier::AbstractType_getHashCode(Assembler* assembler,
Label* normal_ir_body) {
__ lx(A0, Address(SP, 0 * target::kWordSize));
- __ LoadCompressed(A0, FieldAddress(A0, target::AbstractType::hash_offset()));
+ __ LoadCompressed(A0, FieldAddress(A0, target::FunctionType::hash_offset()));
__ beqz(A0, normal_ir_body, Assembler::kNearJump);
__ ret();
// Hash not yet computed.
diff --git a/runtime/vm/compiler/asm_intrinsifier_x64.cc b/runtime/vm/compiler/asm_intrinsifier_x64.cc
index c1ed50d..51c2a6c 100644
--- a/runtime/vm/compiler/asm_intrinsifier_x64.cc
+++ b/runtime/vm/compiler/asm_intrinsifier_x64.cc
@@ -1248,6 +1248,19 @@
// Hash not yet computed.
}
+void AsmIntrinsifier::Type_getHashCode(Assembler* assembler,
+ Label* normal_ir_body) {
+ __ movq(RAX, Address(RSP, +1 * target::kWordSize)); // Type object.
+ __ LoadCompressedSmi(RAX, FieldAddress(RAX, target::Type::hash_offset()));
+ ASSERT(kSmiTag == 0);
+ ASSERT(kSmiTagShift == 1);
+ __ OBJ(test)(RAX, RAX);
+ __ j(ZERO, normal_ir_body, Assembler::kNearJump);
+ __ ret();
+ __ Bind(normal_ir_body);
+ // Hash not yet computed.
+}
+
void AsmIntrinsifier::Type_equality(Assembler* assembler,
Label* normal_ir_body) {
Label equal, not_equal, equiv_cids_may_be_generic, equiv_cids, check_legacy;
@@ -1311,9 +1324,9 @@
void AsmIntrinsifier::AbstractType_getHashCode(Assembler* assembler,
Label* normal_ir_body) {
- __ movq(RAX, Address(RSP, +1 * target::kWordSize)); // AbstractType object.
+ __ movq(RAX, Address(RSP, +1 * target::kWordSize)); // FunctionType object.
__ LoadCompressedSmi(RAX,
- FieldAddress(RAX, target::AbstractType::hash_offset()));
+ FieldAddress(RAX, target::FunctionType::hash_offset()));
ASSERT(kSmiTag == 0);
ASSERT(kSmiTagShift == 1);
__ OBJ(test)(RAX, RAX);
diff --git a/runtime/vm/compiler/recognized_methods_list.h b/runtime/vm/compiler/recognized_methods_list.h
index 0a409f2..96cdec6 100644
--- a/runtime/vm/compiler/recognized_methods_list.h
+++ b/runtime/vm/compiler/recognized_methods_list.h
@@ -374,6 +374,7 @@
V(_TwoByteString, ==, TwoByteString_equality, 0x4ea9ddc9) \
V(_AbstractType, get:hashCode, AbstractType_getHashCode, 0x75e0d454) \
V(_AbstractType, ==, AbstractType_equality, 0x465868ae) \
+ V(_Type, get:hashCode, Type_getHashCode, 0x75e0d454) \
V(_Type, ==, Type_equality, 0x465868ae) \
V(::, _getHash, Object_getHash, 0xc60ff758) \
diff --git a/runtime/vm/compiler/runtime_api.h b/runtime/vm/compiler/runtime_api.h
index 0f45b7f..e7e16f6 100644
--- a/runtime/vm/compiler/runtime_api.h
+++ b/runtime/vm/compiler/runtime_api.h
@@ -717,7 +717,6 @@
class AbstractType : public AllStatic {
public:
static word flags_offset();
- static word hash_offset();
static word type_test_stub_entry_point_offset();
static word InstanceSize();
FINAL_CLASS();
@@ -725,6 +724,7 @@
class Type : public AllStatic {
public:
+ static word hash_offset();
static word arguments_offset();
static word InstanceSize();
FINAL_CLASS();
@@ -732,6 +732,7 @@
class FunctionType : public AllStatic {
public:
+ static word hash_offset();
static word packed_parameter_counts_offset();
static word packed_type_parameter_counts_offset();
static word named_parameter_names_offset();
diff --git a/runtime/vm/compiler/runtime_offsets_extracted.h b/runtime/vm/compiler/runtime_offsets_extracted.h
index 065ddd3..c380896 100644
--- a/runtime/vm/compiler/runtime_offsets_extracted.h
+++ b/runtime/vm/compiler/runtime_offsets_extracted.h
@@ -113,7 +113,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -544,7 +543,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -567,16 +567,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -617,7 +618,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x2e8, 0x2ec, 0x2f0, 0x2f4, 0x2f8, -1, 0x2fc, -1,
0x300, 0x304, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -820,7 +821,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -1252,7 +1252,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -1276,16 +1277,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -1329,7 +1331,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x5d0, 0x5d8, 0x5e0, 0x5e8, -1, -1, 0x5f0, 0x5f8,
0x600, 0x608, 0x610, -1, 0x618, 0x620, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -1529,7 +1531,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -1960,7 +1961,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -1983,16 +1985,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -2032,7 +2035,7 @@
static constexpr dart::compiler::target::word
Thread_write_barrier_wrappers_thread_offset[] = {
0x2e8, 0x2ec, 0x2f0, 0x2f4, -1, -1, -1, 0x2f8};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -2235,7 +2238,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -2667,7 +2669,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -2691,16 +2694,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -2746,7 +2750,7 @@
0x610, 0x618, 0x620, 0x628, 0x630, 0x638, 0x640, -1,
-1, -1, -1, 0x648, 0x650, -1, -1, 0x658,
0x660, 0x668, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -2947,7 +2951,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x18;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -3380,7 +3383,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x24;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x20;
@@ -3404,16 +3408,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x20;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x28;
+ FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x24;
+ FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x1c;
+ FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x22;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x10;
static constexpr dart::compiler::target::word
@@ -3455,7 +3460,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x5d8, 0x5e0, 0x5e8, 0x5f0, -1, -1, 0x5f8, 0x600,
0x608, 0x610, 0x618, -1, 0x620, 0x628, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x18;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x10;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -3656,7 +3661,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x18;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -4089,7 +4093,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x24;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x20;
@@ -4113,16 +4118,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x20;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x28;
+ FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x24;
+ FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x1c;
+ FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x22;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x10;
static constexpr dart::compiler::target::word
@@ -4166,7 +4172,7 @@
0x618, 0x620, 0x628, 0x630, 0x638, 0x640, 0x648, -1,
-1, -1, -1, 0x650, 0x658, -1, -1, 0x660,
0x668, 0x670, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x18;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x10;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -4366,7 +4372,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -4797,7 +4802,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -4820,16 +4826,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -4871,7 +4878,7 @@
-1, -1, -1, -1, -1, 0x2e8, 0x2ec, 0x2f0, -1, -1, 0x2f4,
0x2f8, 0x2fc, -1, -1, -1, 0x300, 0x304, 0x308, 0x30c, 0x310, 0x314,
0x318, 0x31c, -1, -1, -1, -1, 0x320, 0x324, 0x328, 0x32c};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -5074,7 +5081,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -5506,7 +5512,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -5530,16 +5537,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -5584,7 +5592,7 @@
-1, -1, -1, -1, -1, 0x5d0, 0x5d8, 0x5e0, -1, -1, 0x5e8,
0x5f0, 0x5f8, -1, -1, -1, 0x600, 0x608, 0x610, 0x618, 0x620, 0x628,
0x630, 0x638, -1, -1, -1, -1, 0x640, 0x648, 0x650, 0x658};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -5783,7 +5791,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -6209,7 +6216,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -6232,16 +6240,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -6282,7 +6291,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x2e8, 0x2ec, 0x2f0, 0x2f4, 0x2f8, -1, 0x2fc, -1,
0x300, 0x304, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -6482,7 +6491,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -6909,7 +6917,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -6933,16 +6942,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -6986,7 +6996,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x5d0, 0x5d8, 0x5e0, 0x5e8, -1, -1, 0x5f0, 0x5f8,
0x600, 0x608, 0x610, -1, 0x618, 0x620, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -7183,7 +7193,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -7609,7 +7618,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -7632,16 +7642,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -7681,7 +7692,7 @@
static constexpr dart::compiler::target::word
Thread_write_barrier_wrappers_thread_offset[] = {
0x2e8, 0x2ec, 0x2f0, 0x2f4, -1, -1, -1, 0x2f8};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -7881,7 +7892,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -8308,7 +8318,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -8332,16 +8343,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -8387,7 +8399,7 @@
0x610, 0x618, 0x620, 0x628, 0x630, 0x638, 0x640, -1,
-1, -1, -1, 0x648, 0x650, -1, -1, 0x658,
0x660, 0x668, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -8585,7 +8597,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x18;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -9013,7 +9024,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x24;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x20;
@@ -9037,16 +9049,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x20;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x28;
+ FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x24;
+ FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x1c;
+ FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x22;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x10;
static constexpr dart::compiler::target::word
@@ -9088,7 +9101,7 @@
Thread_write_barrier_wrappers_thread_offset[] = {
0x5d8, 0x5e0, 0x5e8, 0x5f0, -1, -1, 0x5f8, 0x600,
0x608, 0x610, 0x618, -1, 0x620, 0x628, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x18;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x10;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -9286,7 +9299,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x18;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -9714,7 +9726,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x24;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x20;
@@ -9738,16 +9751,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x20;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x28;
+ FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x24;
+ FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x1c;
+ FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x22;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x10;
static constexpr dart::compiler::target::word
@@ -9791,7 +9805,7 @@
0x618, 0x620, 0x628, 0x630, 0x638, 0x640, 0x648, -1,
-1, -1, -1, 0x650, 0x658, -1, -1, 0x660,
0x668, 0x670, -1, -1, -1, -1, -1, -1};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x18;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x10;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -9988,7 +10002,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0xfffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x8;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x10;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -10414,7 +10427,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x8;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0xc;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x18;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x14;
@@ -10437,16 +10451,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x4;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x14;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x20;
+ FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x1c;
+ FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x14;
+ FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x1a;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0xc;
static constexpr dart::compiler::target::word
@@ -10488,7 +10503,7 @@
-1, -1, -1, -1, -1, 0x2e8, 0x2ec, 0x2f0, -1, -1, 0x2f4,
0x2f8, 0x2fc, -1, -1, -1, 0x300, 0x304, 0x308, 0x30c, 0x310, 0x314,
0x318, 0x31c, -1, -1, -1, -1, 0x320, 0x324, 0x328, 0x32c};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x14;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x10;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word Array_header_size = 0xc;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x8;
@@ -10688,7 +10703,6 @@
static constexpr dart::compiler::target::word TypeArguments_kMaxElements =
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AbstractType_flags_offset = 0x10;
-static constexpr dart::compiler::target::word AbstractType_hash_offset = 0x20;
static constexpr dart::compiler::target::word
AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word ArgumentsDescriptor_count_offset =
@@ -11115,7 +11129,8 @@
static constexpr dart::compiler::target::word TimelineStream_enabled_offset =
0x10;
static constexpr dart::compiler::target::word TwoByteString_data_offset = 0x10;
-static constexpr dart::compiler::target::word Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word Finalizer_type_arguments_offset =
0x30;
static constexpr dart::compiler::target::word Finalizer_callback_offset = 0x28;
@@ -11139,16 +11154,17 @@
static constexpr dart::compiler::target::word FinalizerEntry_value_offset = 0x8;
static constexpr dart::compiler::target::word NativeFinalizer_callback_offset =
0x28;
+static constexpr dart::compiler::target::word FunctionType_hash_offset = 0x40;
static constexpr dart::compiler::target::word
- FunctionType_named_parameter_names_offset = 0x40;
+ FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- FunctionType_parameter_types_offset = 0x38;
+ FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- FunctionType_type_parameters_offset = 0x28;
+ FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word TypeParameter_index_offset = 0x32;
static constexpr dart::compiler::target::word TypeArguments_hash_offset = 0x18;
static constexpr dart::compiler::target::word
@@ -11193,7 +11209,7 @@
-1, -1, -1, -1, -1, 0x5d0, 0x5d8, 0x5e0, -1, -1, 0x5e8,
0x5f0, 0x5f8, -1, -1, -1, 0x600, 0x608, 0x610, 0x618, 0x620, 0x628,
0x630, 0x638, -1, -1, -1, -1, 0x640, 0x648, 0x650, 0x658};
-static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x28;
+static constexpr dart::compiler::target::word AbstractType_InstanceSize = 0x20;
static constexpr dart::compiler::target::word ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word Array_header_size = 0x18;
static constexpr dart::compiler::target::word Bool_InstanceSize = 0x10;
@@ -11401,8 +11417,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x8;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x10;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word
@@ -11870,7 +11884,8 @@
AOT_TimelineStream_enabled_offset = 0x8;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0xc;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x18;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -11897,16 +11912,18 @@
0x4;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x20;
+ AOT_FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x1c;
+ AOT_FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x14;
+ AOT_FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x1a;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -11958,7 +11975,7 @@
0x2e8, 0x2ec, 0x2f0, 0x2f4, 0x2f8, -1, 0x2fc, -1,
0x300, 0x304, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x14;
+ 0x10;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0xc;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x8;
@@ -12184,8 +12201,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -12653,7 +12668,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -12680,16 +12696,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -12741,7 +12759,7 @@
0x5d0, 0x5d8, 0x5e0, 0x5e8, -1, -1, 0x5f0, 0x5f8,
0x600, 0x608, 0x610, -1, 0x618, 0x620, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -12970,8 +12988,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -13439,7 +13455,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -13466,16 +13483,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -13529,7 +13548,7 @@
-1, -1, -1, 0x648, 0x650, -1, -1, 0x658,
0x660, 0x668, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -13755,8 +13774,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x18;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -14226,7 +14243,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x24;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -14253,16 +14271,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x28;
+ AOT_FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x24;
+ AOT_FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x1c;
+ AOT_FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x22;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -14314,7 +14334,7 @@
0x5d8, 0x5e0, 0x5e8, 0x5f0, -1, -1, 0x5f8, 0x600,
0x608, 0x610, 0x618, -1, 0x620, 0x628, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x20;
+ 0x18;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x10;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -14540,8 +14560,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x18;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -15011,7 +15029,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x24;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -15038,16 +15057,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x28;
+ AOT_FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x24;
+ AOT_FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x1c;
+ AOT_FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x22;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -15101,7 +15122,7 @@
-1, -1, -1, 0x650, 0x658, -1, -1, 0x660,
0x668, 0x670, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x20;
+ 0x18;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x10;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -15327,8 +15348,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x8;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x10;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word
@@ -15796,7 +15815,8 @@
AOT_TimelineStream_enabled_offset = 0x8;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0xc;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x18;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -15823,16 +15843,18 @@
0x4;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x20;
+ AOT_FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x1c;
+ AOT_FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x14;
+ AOT_FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x1a;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -15885,7 +15907,7 @@
0x2f8, 0x2fc, -1, -1, -1, 0x300, 0x304, 0x308, 0x30c, 0x310, 0x314,
0x318, 0x31c, -1, -1, -1, -1, 0x320, 0x324, 0x328, 0x32c};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x14;
+ 0x10;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0xc;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x8;
@@ -16111,8 +16133,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -16580,7 +16600,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -16607,16 +16628,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -16669,7 +16692,7 @@
0x5f0, 0x5f8, -1, -1, -1, 0x600, 0x608, 0x610, 0x618, 0x620, 0x628,
0x630, 0x638, -1, -1, -1, -1, 0x640, 0x648, 0x650, 0x658};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -16894,8 +16917,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x8;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x10;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word
@@ -17357,7 +17378,8 @@
AOT_TimelineStream_enabled_offset = 0x8;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0xc;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x18;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -17384,16 +17406,18 @@
0x4;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x20;
+ AOT_FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x1c;
+ AOT_FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x14;
+ AOT_FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x1a;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -17445,7 +17469,7 @@
0x2e8, 0x2ec, 0x2f0, 0x2f4, 0x2f8, -1, 0x2fc, -1,
0x300, 0x304, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x14;
+ 0x10;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0xc;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x8;
@@ -17668,8 +17692,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -18131,7 +18153,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -18158,16 +18181,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -18219,7 +18244,7 @@
0x5d0, 0x5d8, 0x5e0, 0x5e8, -1, -1, 0x5f0, 0x5f8,
0x600, 0x608, 0x610, -1, 0x618, 0x620, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -18445,8 +18470,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -18908,7 +18931,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -18935,16 +18959,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -18998,7 +19024,7 @@
-1, -1, -1, 0x648, 0x650, -1, -1, 0x658,
0x660, 0x668, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -19221,8 +19247,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x18;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -19686,7 +19710,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x24;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -19713,16 +19738,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x28;
+ AOT_FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x24;
+ AOT_FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x1c;
+ AOT_FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x22;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -19774,7 +19801,7 @@
0x5d8, 0x5e0, 0x5e8, 0x5f0, -1, -1, 0x5f8, 0x600,
0x608, 0x610, 0x618, -1, 0x620, 0x628, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x20;
+ 0x18;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x10;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -19997,8 +20024,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x18;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -20462,7 +20487,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x1c;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x18;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x24;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -20489,16 +20515,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x28;
+ AOT_FunctionType_named_parameter_names_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x2c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x24;
+ AOT_FunctionType_parameter_types_offset = 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x1c;
+ AOT_FunctionType_type_parameters_offset = 0x18;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x22;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -20552,7 +20580,7 @@
-1, -1, -1, 0x650, 0x658, -1, -1, 0x660,
0x668, 0x670, -1, -1, -1, -1, -1, -1};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x20;
+ 0x18;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x10;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
@@ -20775,8 +20803,6 @@
0xfffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x8;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x10;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x4;
static constexpr dart::compiler::target::word
@@ -21238,7 +21264,8 @@
AOT_TimelineStream_enabled_offset = 0x8;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0xc;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x10;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x14;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x18;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -21265,16 +21292,18 @@
0x4;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x14;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x20;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x20;
+ AOT_FunctionType_named_parameter_names_offset = 0x1c;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x24;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x28;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x1c;
+ AOT_FunctionType_parameter_types_offset = 0x18;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x14;
+ AOT_FunctionType_type_parameters_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x1a;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -21327,7 +21356,7 @@
0x2f8, 0x2fc, -1, -1, -1, 0x300, 0x304, 0x308, 0x30c, 0x310, 0x314,
0x318, 0x31c, -1, -1, -1, -1, 0x320, 0x324, 0x328, 0x32c};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x14;
+ 0x10;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x8;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0xc;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x8;
@@ -21550,8 +21579,6 @@
0x7ffffffffffffff;
static constexpr dart::compiler::target::word AOT_AbstractType_flags_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_AbstractType_hash_offset =
- 0x20;
static constexpr dart::compiler::target::word
AOT_AbstractType_type_test_stub_entry_point_offset = 0x8;
static constexpr dart::compiler::target::word
@@ -22013,7 +22040,8 @@
AOT_TimelineStream_enabled_offset = 0x10;
static constexpr dart::compiler::target::word AOT_TwoByteString_data_offset =
0x10;
-static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_Type_arguments_offset = 0x20;
+static constexpr dart::compiler::target::word AOT_Type_hash_offset = 0x28;
static constexpr dart::compiler::target::word
AOT_Finalizer_type_arguments_offset = 0x30;
static constexpr dart::compiler::target::word AOT_Finalizer_callback_offset =
@@ -22040,16 +22068,18 @@
0x8;
static constexpr dart::compiler::target::word
AOT_NativeFinalizer_callback_offset = 0x28;
+static constexpr dart::compiler::target::word AOT_FunctionType_hash_offset =
+ 0x40;
static constexpr dart::compiler::target::word
- AOT_FunctionType_named_parameter_names_offset = 0x40;
+ AOT_FunctionType_named_parameter_names_offset = 0x38;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_parameter_counts_offset = 0x48;
static constexpr dart::compiler::target::word
AOT_FunctionType_packed_type_parameter_counts_offset = 0x4c;
static constexpr dart::compiler::target::word
- AOT_FunctionType_parameter_types_offset = 0x38;
+ AOT_FunctionType_parameter_types_offset = 0x30;
static constexpr dart::compiler::target::word
- AOT_FunctionType_type_parameters_offset = 0x28;
+ AOT_FunctionType_type_parameters_offset = 0x20;
static constexpr dart::compiler::target::word AOT_TypeParameter_index_offset =
0x32;
static constexpr dart::compiler::target::word AOT_TypeArguments_hash_offset =
@@ -22102,7 +22132,7 @@
0x5f0, 0x5f8, -1, -1, -1, 0x600, 0x608, 0x610, 0x618, 0x620, 0x628,
0x630, 0x638, -1, -1, -1, -1, 0x640, 0x648, 0x650, 0x658};
static constexpr dart::compiler::target::word AOT_AbstractType_InstanceSize =
- 0x28;
+ 0x20;
static constexpr dart::compiler::target::word AOT_ApiError_InstanceSize = 0x10;
static constexpr dart::compiler::target::word AOT_Array_header_size = 0x18;
static constexpr dart::compiler::target::word AOT_Bool_InstanceSize = 0x10;
diff --git a/runtime/vm/compiler/runtime_offsets_list.h b/runtime/vm/compiler/runtime_offsets_list.h
index b5b3a74..b62ddbd 100644
--- a/runtime/vm/compiler/runtime_offsets_list.h
+++ b/runtime/vm/compiler/runtime_offsets_list.h
@@ -103,7 +103,6 @@
CONSTANT(SubtypeTestCache, kTestResult) \
CONSTANT(TypeArguments, kMaxElements) \
FIELD(AbstractType, flags_offset) \
- FIELD(AbstractType, hash_offset) \
FIELD(AbstractType, type_test_stub_entry_point_offset) \
FIELD(ArgumentsDescriptor, count_offset) \
FIELD(ArgumentsDescriptor, size_offset) \
@@ -355,6 +354,7 @@
FIELD(TimelineStream, enabled_offset) \
FIELD(TwoByteString, data_offset) \
FIELD(Type, arguments_offset) \
+ FIELD(Type, hash_offset) \
FIELD(Finalizer, type_arguments_offset) \
FIELD(Finalizer, callback_offset) \
FIELD(FinalizerBase, all_entries_offset) \
@@ -368,6 +368,7 @@
FIELD(FinalizerEntry, token_offset) \
FIELD(FinalizerEntry, value_offset) \
FIELD(NativeFinalizer, callback_offset) \
+ FIELD(FunctionType, hash_offset) \
FIELD(FunctionType, named_parameter_names_offset) \
FIELD(FunctionType, packed_parameter_counts_offset) \
FIELD(FunctionType, packed_type_parameter_counts_offset) \
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index 99c2cab..eb22d0b 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -21601,7 +21601,10 @@
return false;
}
-uword AbstractType::ComputeHash() const {
+uword AbstractType::Hash() const {
+ // All subclasses should implement this appropriately, so the only value that
+ // should reach this implementation should be the null value.
+ ASSERT(IsNull());
// AbstractType is an abstract class.
UNREACHABLE();
return 0;
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 8fe8e8c..ca882cf 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -8528,9 +8528,6 @@
static intptr_t flags_offset() {
return OFFSET_OF(UntaggedAbstractType, flags_);
}
- static intptr_t hash_offset() {
- return OFFSET_OF(UntaggedAbstractType, hash_);
- }
bool IsFinalized() const {
const auto state = type_state();
@@ -8666,8 +8663,7 @@
// list and mark ambiguous triplets to be printed.
virtual void EnumerateURIs(URIs* uris) const;
- uword Hash() const;
- virtual uword ComputeHash() const;
+ virtual uword Hash() const;
// The name of this type's class, i.e. without the type argument names of this
// type.
@@ -8841,8 +8837,6 @@
const AbstractType& other_type,
TypeEquality kind) const;
- void SetHash(intptr_t value) const;
-
UntaggedAbstractType::TypeState type_state() const {
return static_cast<UntaggedAbstractType::TypeState>(
UntaggedAbstractType::TypeStateBits::decode(untag()->flags()));
@@ -8853,7 +8847,6 @@
HEAP_OBJECT_IMPLEMENTATION(AbstractType, Instance);
friend class Class;
- friend class ClearTypeHashVisitor;
friend class Function;
friend class TypeArguments;
};
@@ -8865,6 +8858,7 @@
static intptr_t arguments_offset() {
return OFFSET_OF(UntaggedType, arguments_);
}
+ static intptr_t hash_offset() { return OFFSET_OF(UntaggedType, hash_); }
virtual bool HasTypeClass() const {
ASSERT(type_class_id() != kIllegalCid);
return true;
@@ -8917,7 +8911,8 @@
virtual void PrintName(NameVisibility visibility,
BaseTextBuffer* printer) const;
- virtual uword ComputeHash() const;
+ virtual uword Hash() const;
+ uword ComputeHash() const;
static intptr_t InstanceSize() {
return RoundedAllocationSize(sizeof(UntaggedType));
@@ -8992,6 +8987,8 @@
Heap::Space space = Heap::kOld);
private:
+ void SetHash(intptr_t value) const;
+
// Takes an intptr_t since the cids of some classes are larger than will fit
// in ClassIdTagType. This allows us to guard against that case, instead of
// silently truncating the cid.
@@ -9002,6 +8999,7 @@
FINAL_HEAP_OBJECT_IMPLEMENTATION(Type, AbstractType);
friend class Class;
friend class TypeArguments;
+ friend class ClearTypeHashVisitor;
};
// A FunctionType represents the type of a function. It describes most of the
@@ -9022,6 +9020,9 @@
using PackedNumOptionalParameters =
UntaggedFunctionType::PackedNumOptionalParameters;
+ static intptr_t hash_offset() {
+ return OFFSET_OF(UntaggedFunctionType, hash_);
+ }
virtual bool HasTypeClass() const { return false; }
FunctionTypePtr ToNullability(Nullability value, Heap::Space space) const;
virtual classid_t type_class_id() const { return kIllegalCid; }
@@ -9057,7 +9058,8 @@
virtual void PrintName(NameVisibility visibility,
BaseTextBuffer* printer) const;
- virtual uword ComputeHash() const;
+ virtual uword Hash() const;
+ uword ComputeHash() const;
bool IsSubtypeOf(
const FunctionType& other,
@@ -9286,10 +9288,13 @@
static FunctionTypePtr Clone(const FunctionType& orig, Heap::Space space);
private:
+ void SetHash(intptr_t value) const;
+
static FunctionTypePtr New(Heap::Space space);
FINAL_HEAP_OBJECT_IMPLEMENTATION(FunctionType, AbstractType);
friend class Class;
+ friend class ClearTypeHashVisitor;
friend class Function;
};
@@ -9363,6 +9368,8 @@
virtual void PrintName(NameVisibility visibility,
BaseTextBuffer* printer) const;
+ virtual uword Hash() const;
+
// Returns type corresponding to [this] type parameter from the
// given [instantiator_type_arguments] and [function_type_arguments].
// Unlike InstantiateFrom, nullability of type parameter is not applied to
@@ -9391,7 +9398,8 @@
Nullability nullability);
private:
- virtual uword ComputeHash() const;
+ uword ComputeHash() const;
+ void SetHash(intptr_t value) const;
void set_owner(const Object& value) const;
@@ -9399,6 +9407,7 @@
FINAL_HEAP_OBJECT_IMPLEMENTATION(TypeParameter, AbstractType);
friend class Class;
+ friend class ClearTypeHashVisitor;
};
class Number : public Instance {
@@ -11037,6 +11046,7 @@
// names of the named fields.
class RecordType : public AbstractType {
public:
+ static intptr_t hash_offset() { return OFFSET_OF(UntaggedRecordType, hash_); }
virtual bool HasTypeClass() const { return false; }
RecordTypePtr ToNullability(Nullability value, Heap::Space space) const;
virtual classid_t type_class_id() const { return kIllegalCid; }
@@ -11072,7 +11082,8 @@
virtual void PrintName(NameVisibility visibility,
BaseTextBuffer* printer) const;
- virtual uword ComputeHash() const;
+ virtual uword Hash() const;
+ uword ComputeHash() const;
bool IsSubtypeOf(
const RecordType& other,
@@ -11103,6 +11114,8 @@
Heap::Space space = Heap::kOld);
private:
+ void SetHash(intptr_t value) const;
+
void set_shape(RecordShape shape) const;
void set_field_types(const Array& value) const;
@@ -11111,6 +11124,7 @@
FINAL_HEAP_OBJECT_IMPLEMENTATION(RecordType, AbstractType);
friend class Class;
friend class ClassFinalizer;
+ friend class ClearTypeHashVisitor;
friend class Record;
};
@@ -13039,7 +13053,7 @@
return array.At((index * kEntryLength) + kTargetFunctionIndex);
}
-inline uword AbstractType::Hash() const {
+inline uword Type::Hash() const {
ASSERT(IsFinalized());
intptr_t result = Smi::Value(untag()->hash());
if (result != 0) {
@@ -13048,7 +13062,37 @@
return ComputeHash();
}
-inline void AbstractType::SetHash(intptr_t value) const {
+inline void Type::SetHash(intptr_t value) const {
+ // This is only safe because we create a new Smi, which does not cause
+ // heap allocation.
+ untag()->set_hash(Smi::New(value));
+}
+
+inline uword FunctionType::Hash() const {
+ ASSERT(IsFinalized());
+ intptr_t result = Smi::Value(untag()->hash());
+ if (result != 0) {
+ return result;
+ }
+ return ComputeHash();
+}
+
+inline void FunctionType::SetHash(intptr_t value) const {
+ // This is only safe because we create a new Smi, which does not cause
+ // heap allocation.
+ untag()->set_hash(Smi::New(value));
+}
+
+inline uword RecordType::Hash() const {
+ ASSERT(IsFinalized());
+ intptr_t result = Smi::Value(untag()->hash());
+ if (result != 0) {
+ return result;
+ }
+ return ComputeHash();
+}
+
+inline void RecordType::SetHash(intptr_t value) const {
// This is only safe because we create a new Smi, which does not cause
// heap allocation.
untag()->set_hash(Smi::New(value));
@@ -13058,6 +13102,21 @@
return Array::LengthOf(field_types());
}
+inline uword TypeParameter::Hash() const {
+ ASSERT(IsFinalized());
+ intptr_t result = Smi::Value(untag()->hash());
+ if (result != 0) {
+ return result;
+ }
+ return ComputeHash();
+}
+
+inline void TypeParameter::SetHash(intptr_t value) const {
+ // This is only safe because we create a new Smi, which does not cause
+ // heap allocation.
+ untag()->set_hash(Smi::New(value));
+}
+
inline uword TypeArguments::Hash() const {
if (IsNull()) return kAllDynamicHash;
intptr_t result = Smi::Value(untag()->hash());
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h
index e8a22ff..6afa8d2 100644
--- a/runtime/vm/raw_object.h
+++ b/runtime/vm/raw_object.h
@@ -2643,7 +2643,6 @@
// Accessed from generated code.
std::atomic<uint32_t> flags_;
COMPRESSED_POINTER_FIELD(CodePtr, type_test_stub)
- COMPRESSED_POINTER_FIELD(SmiPtr, hash)
VISIT_FROM(type_test_stub)
uint32_t flags() const { return flags_.load(std::memory_order_relaxed); }
@@ -2683,7 +2682,8 @@
RAW_HEAP_OBJECT_IMPLEMENTATION(Type);
COMPRESSED_POINTER_FIELD(TypeArgumentsPtr, arguments)
- VISIT_TO(arguments)
+ COMPRESSED_POINTER_FIELD(SmiPtr, hash)
+ VISIT_TO(hash)
CompressedObjectPtr* to_snapshot(Snapshot::Kind kind) { return to(); }
@@ -2707,7 +2707,8 @@
COMPRESSED_POINTER_FIELD(AbstractTypePtr, result_type)
COMPRESSED_POINTER_FIELD(ArrayPtr, parameter_types)
COMPRESSED_POINTER_FIELD(ArrayPtr, named_parameter_names);
- VISIT_TO(named_parameter_names)
+ COMPRESSED_POINTER_FIELD(SmiPtr, hash)
+ VISIT_TO(hash)
AtomicBitFieldContainer<uint32_t> packed_parameter_counts_;
AtomicBitFieldContainer<uint16_t> packed_type_parameter_counts_;
@@ -2757,7 +2758,8 @@
COMPRESSED_SMI_FIELD(SmiPtr, shape)
COMPRESSED_POINTER_FIELD(ArrayPtr, field_types)
- VISIT_TO(field_types)
+ COMPRESSED_SMI_FIELD(SmiPtr, hash)
+ VISIT_TO(hash)
CompressedObjectPtr* to_snapshot(Snapshot::Kind kind) { return to(); }
};
@@ -2772,6 +2774,7 @@
private:
RAW_HEAP_OBJECT_IMPLEMENTATION(TypeParameter);
+ COMPRESSED_POINTER_FIELD(SmiPtr, hash)
// FunctionType or Smi (class id).
COMPRESSED_POINTER_FIELD(ObjectPtr, owner)
VISIT_TO(owner)
diff --git a/sdk/lib/_internal/vm/lib/type_patch.dart b/sdk/lib/_internal/vm/lib/type_patch.dart
index 2120f6a..cd48226 100644
--- a/sdk/lib/_internal/vm/lib/type_patch.dart
+++ b/sdk/lib/_internal/vm/lib/type_patch.dart
@@ -28,6 +28,11 @@
}
@pragma("vm:recognized", "asm-intrinsic")
+ @pragma("vm:exact-result-type", "dart:core#_Smi")
+ @pragma("vm:external-name", "Type_getHashCode")
+ external int get hashCode;
+
+ @pragma("vm:recognized", "asm-intrinsic")
@pragma("vm:exact-result-type", bool)
@pragma("vm:external-name", "Type_equality")
external bool operator ==(other);