Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index d24451898061e709b49fe888e804404b48a5208b..7bc7306f9a9dfb23278b32fa2812c5038d456511 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -403,6 +403,7 @@ const int kStubMinorKeyBits = kSmiValueSize - kStubMajorKeyBits - 1; |
V(PROMISE_RESOLVE_THENABLE_JOB_INFO_TYPE) \ |
V(PROMISE_REACTION_JOB_INFO_TYPE) \ |
V(PROTOTYPE_INFO_TYPE) \ |
+ V(TUPLE3_TYPE) \ |
V(CONTEXT_EXTENSION_TYPE) \ |
V(MODULE_TYPE) \ |
\ |
@@ -527,6 +528,7 @@ const int kStubMinorKeyBits = kSmiValueSize - kStubMajorKeyBits - 1; |
V(DEBUG_INFO, DebugInfo, debug_info) \ |
V(BREAK_POINT_INFO, BreakPointInfo, break_point_info) \ |
V(PROTOTYPE_INFO, PrototypeInfo, prototype_info) \ |
+ V(TUPLE3, Tuple3, tuple3) \ |
V(MODULE, Module, module) \ |
V(CONTEXT_EXTENSION, ContextExtension, context_extension) |
@@ -704,6 +706,7 @@ enum InstanceType { |
TRANSITION_ARRAY_TYPE, |
PROPERTY_CELL_TYPE, |
PROTOTYPE_INFO_TYPE, |
+ TUPLE3_TYPE, |
CONTEXT_EXTENSION_TYPE, |
MODULE_TYPE, |
@@ -6810,6 +6813,26 @@ class PrototypeInfo : public Struct { |
DISALLOW_IMPLICIT_CONSTRUCTORS(PrototypeInfo); |
}; |
+class Tuple3 : public Struct { |
+ public: |
+ DECL_ACCESSORS(value1, Object) |
+ DECL_ACCESSORS(value2, Object) |
+ DECL_ACCESSORS(value3, Object) |
+ |
+ DECLARE_CAST(Tuple3) |
+ |
+ // Dispatched behavior. |
+ DECLARE_PRINTER(Tuple3) |
+ DECLARE_VERIFIER(Tuple3) |
+ |
+ static const int kValue1Offset = HeapObject::kHeaderSize; |
+ static const int kValue2Offset = kValue1Offset + kPointerSize; |
+ static const int kValue3Offset = kValue2Offset + kPointerSize; |
+ static const int kSize = kValue3Offset + kPointerSize; |
+ |
+ private: |
+ DISALLOW_IMPLICIT_CONSTRUCTORS(Tuple3); |
+}; |
// Pair used to store both a ScopeInfo and an extension object in the extension |
// slot of a block, catch, or with context. Needed in the rare case where a |