| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index 874dcbc902ea0111d5f49b756f774df7c4b35af4..f9cdce715e56a583731279e6930a1be9dbb7ba8b 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -4051,6 +4051,12 @@ class SharedFunctionInfo: public HeapObject {
|
| // [code]: Function code.
|
| DECL_ACCESSORS(code, Code)
|
|
|
| + // [optimized_code_map]: Map from global context to optimized code
|
| + // or Smi 0 if none.
|
| + DECL_ACCESSORS(optimized_code_map, Object)
|
| +
|
| + Code* SearchOptimizedCodeMap(Context* global_context);
|
| +
|
| // [scope_info]: Scope info.
|
| DECL_ACCESSORS(scope_info, SerializedScopeInfo)
|
|
|
| @@ -4158,6 +4164,9 @@ class SharedFunctionInfo: public HeapObject {
|
| // IsInobjectSlackTrackingInProgress is false after this call.
|
| void CompleteInobjectSlackTracking();
|
|
|
| + // Invoked before pointers in SharedFunctionInfo are being marked.
|
| + inline void BeforeVisitingPointers();
|
| +
|
| // Clears the initial_map before the GC marking phase to ensure the reference
|
| // is weak. IsInobjectSlackTrackingInProgress is false after this call.
|
| void DetachInitialMap();
|
| @@ -4353,7 +4362,8 @@ class SharedFunctionInfo: public HeapObject {
|
| // Pointer fields.
|
| static const int kNameOffset = HeapObject::kHeaderSize;
|
| static const int kCodeOffset = kNameOffset + kPointerSize;
|
| - static const int kScopeInfoOffset = kCodeOffset + kPointerSize;
|
| + static const int kOptimizedCodeMapOffset = kCodeOffset + kPointerSize;
|
| + static const int kScopeInfoOffset = kOptimizedCodeMapOffset + kPointerSize;
|
| static const int kConstructStubOffset = kScopeInfoOffset + kPointerSize;
|
| static const int kInstanceClassNameOffset =
|
| kConstructStubOffset + kPointerSize;
|
|
|