| Index: src/heap/heap.h
|
| diff --git a/src/heap/heap.h b/src/heap/heap.h
|
| index c97c1889d1614b63298828745d6b360594bcbea5..7a3e992e476ef28d66834191a95e738788f7e0d9 100644
|
| --- a/src/heap/heap.h
|
| +++ b/src/heap/heap.h
|
| @@ -189,6 +189,11 @@ using v8::MemoryPressureLevel;
|
| V(FixedArray, detached_contexts, DetachedContexts) \
|
| V(ArrayList, retained_maps, RetainedMaps) \
|
| V(WeakHashTable, weak_object_to_code_table, WeakObjectToCodeTable) \
|
| + /* weak_new_space_object_to_code_list is an array of weak cells, where */ \
|
| + /* slots with even indices refer to the weak object, and the subsequent */ \
|
| + /* slots refer to the code with the reference to the weak object. */ \
|
| + V(ArrayList, weak_new_space_object_to_code_list, \
|
| + WeakNewSpaceObjectToCodeList) \
|
| V(PropertyCell, array_protector, ArrayProtector) \
|
| V(Cell, is_concat_spreadable_protector, IsConcatSpreadableProtector) \
|
| V(PropertyCell, empty_property_cell, EmptyPropertyCell) \
|
| @@ -838,6 +843,9 @@ class Heap {
|
| return new_space_.IsAtMaximumCapacity() && maximum_size_scavenges_ == 0;
|
| }
|
|
|
| + void AddWeakNewSpaceObjectToCodeDependency(Handle<HeapObject> obj,
|
| + Handle<WeakCell> code);
|
| +
|
| void AddWeakObjectToCodeDependency(Handle<HeapObject> obj,
|
| Handle<DependentCode> dep);
|
|
|
| @@ -1096,6 +1104,8 @@ class Heap {
|
|
|
| // Write barrier support for object[offset] = o;
|
| inline void RecordWrite(Object* object, int offset, Object* o);
|
| + inline void RecordWriteIntoCode(Code* host, RelocInfo* rinfo, Object* target);
|
| + void RecordWriteIntoCodeSlow(Code* host, RelocInfo* rinfo, Object* target);
|
| inline void RecordFixedArrayElements(FixedArray* array, int offset,
|
| int length);
|
|
|
|
|