| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index 99a8f59046793e78b22b85c70fb7d91f6faaf02c..4bdce590610c37dd6e49c38548e994a243002ac1 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -6477,8 +6477,8 @@ class SharedFunctionInfo: public HeapObject {
|
| inline void ReplaceCode(Code* code);
|
|
|
| // [optimized_code_map]: Map from native context to optimized code
|
| - // and a shared literals array or Smi(0) if none.
|
| - DECL_ACCESSORS(optimized_code_map, Object)
|
| + // and a shared literals array.
|
| + DECL_ACCESSORS(optimized_code_map, FixedArray)
|
|
|
| // Returns entry from optimized code map for specified context and OSR entry.
|
| // Note that {code == nullptr, literals == nullptr} indicates no matching
|
| @@ -6490,6 +6490,11 @@ class SharedFunctionInfo: public HeapObject {
|
| // Clear optimized code map.
|
| void ClearOptimizedCodeMap();
|
|
|
| + // We have a special root FixedArray with the right shape and values
|
| + // to represent the cleared optimized code map. This predicate checks
|
| + // if that root is installed.
|
| + inline bool OptimizedCodeMapIsCleared() const;
|
| +
|
| // Removes a specific optimized code object from the optimized code map.
|
| // In case of non-OSR the code reference is cleared from the cache entry but
|
| // the entry itself is left in the map in order to proceed sharing literals.
|
|
|