Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 7ae525f2542006b869e886cf8bb89b48bb917e27..4cef17fba77e51afceb6b5ab6baae8924ca37ec0 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -11152,6 +11152,8 @@ class FunctionTemplateInfo: public TemplateInfo { |
DECL_BOOLEAN_ACCESSORS(do_not_cache) |
DECL_BOOLEAN_ACCESSORS(accept_any_receiver) |
+ DECL_ACCESSORS(cache_property, Object) |
+ |
DECLARE_CAST(FunctionTemplateInfo) |
// Dispatched behavior. |
@@ -11178,7 +11180,8 @@ class FunctionTemplateInfo: public TemplateInfo { |
kAccessCheckInfoOffset + kPointerSize; |
static const int kFlagOffset = kSharedFunctionInfoOffset + kPointerSize; |
static const int kLengthOffset = kFlagOffset + kPointerSize; |
- static const int kSize = kLengthOffset + kPointerSize; |
+ static const int kCachePropertyOffset = kLengthOffset + kPointerSize; |
+ static const int kSize = kCachePropertyOffset + kPointerSize; |
static Handle<SharedFunctionInfo> GetOrCreateSharedFunctionInfo( |
Isolate* isolate, Handle<FunctionTemplateInfo> info); |
@@ -11189,6 +11192,10 @@ class FunctionTemplateInfo: public TemplateInfo { |
bool IsTemplateFor(Map* map); |
inline bool instantiated(); |
+ // Helper function for cached accessors. |
+ static MaybeHandle<Name> TryGetCachePropertyName(Isolate* isolate, |
+ Handle<Object> getter); |
+ |
private: |
// Bit position in the flag, from least significant bit position. |
static const int kHiddenPrototypeBit = 0; |