| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_HEAP_HEAP_H_ | 5 #ifndef V8_HEAP_HEAP_H_ |
| 6 #define V8_HEAP_HEAP_H_ | 6 #define V8_HEAP_HEAP_H_ |
| 7 | 7 |
| 8 #include <cmath> | 8 #include <cmath> |
| 9 #include <map> | 9 #include <map> |
| 10 | 10 |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 V(NameDictionary, public_symbol_table, PublicSymbolTable) \ | 185 V(NameDictionary, public_symbol_table, PublicSymbolTable) \ |
| 186 V(NameDictionary, api_symbol_table, ApiSymbolTable) \ | 186 V(NameDictionary, api_symbol_table, ApiSymbolTable) \ |
| 187 V(NameDictionary, api_private_symbol_table, ApiPrivateSymbolTable) \ | 187 V(NameDictionary, api_private_symbol_table, ApiPrivateSymbolTable) \ |
| 188 V(Object, script_list, ScriptList) \ | 188 V(Object, script_list, ScriptList) \ |
| 189 V(UnseededNumberDictionary, code_stubs, CodeStubs) \ | 189 V(UnseededNumberDictionary, code_stubs, CodeStubs) \ |
| 190 V(FixedArray, materialized_objects, MaterializedObjects) \ | 190 V(FixedArray, materialized_objects, MaterializedObjects) \ |
| 191 V(FixedArray, microtask_queue, MicrotaskQueue) \ | 191 V(FixedArray, microtask_queue, MicrotaskQueue) \ |
| 192 V(FixedArray, detached_contexts, DetachedContexts) \ | 192 V(FixedArray, detached_contexts, DetachedContexts) \ |
| 193 V(ArrayList, retained_maps, RetainedMaps) \ | 193 V(ArrayList, retained_maps, RetainedMaps) \ |
| 194 V(WeakHashTable, weak_object_to_code_table, WeakObjectToCodeTable) \ | 194 V(WeakHashTable, weak_object_to_code_table, WeakObjectToCodeTable) \ |
| 195 V(WeakHashTable, stack_frame_cache, StackFrameCache) \ |
| 195 /* weak_new_space_object_to_code_list is an array of weak cells, where */ \ | 196 /* weak_new_space_object_to_code_list is an array of weak cells, where */ \ |
| 196 /* slots with even indices refer to the weak object, and the subsequent */ \ | 197 /* slots with even indices refer to the weak object, and the subsequent */ \ |
| 197 /* slots refer to the code with the reference to the weak object. */ \ | 198 /* slots refer to the code with the reference to the weak object. */ \ |
| 198 V(ArrayList, weak_new_space_object_to_code_list, \ | 199 V(ArrayList, weak_new_space_object_to_code_list, \ |
| 199 WeakNewSpaceObjectToCodeList) \ | 200 WeakNewSpaceObjectToCodeList) \ |
| 200 /* List to hold onto feedback vectors that we need for code coverage */ \ | 201 /* List to hold onto feedback vectors that we need for code coverage */ \ |
| 201 V(Object, code_coverage_list, CodeCoverageList) \ | 202 V(Object, code_coverage_list, CodeCoverageList) \ |
| 202 V(Object, weak_stack_trace_list, WeakStackTraceList) \ | 203 V(Object, weak_stack_trace_list, WeakStackTraceList) \ |
| 203 V(Object, noscript_shared_function_infos, NoScriptSharedFunctionInfos) \ | 204 V(Object, noscript_shared_function_infos, NoScriptSharedFunctionInfos) \ |
| 204 V(FixedArray, serialized_templates, SerializedTemplates) \ | 205 V(FixedArray, serialized_templates, SerializedTemplates) \ |
| (...skipping 710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 915 inline bool DeoptMaybeTenuredAllocationSites(); | 916 inline bool DeoptMaybeTenuredAllocationSites(); |
| 916 | 917 |
| 917 void AddWeakNewSpaceObjectToCodeDependency(Handle<HeapObject> obj, | 918 void AddWeakNewSpaceObjectToCodeDependency(Handle<HeapObject> obj, |
| 918 Handle<WeakCell> code); | 919 Handle<WeakCell> code); |
| 919 | 920 |
| 920 void AddWeakObjectToCodeDependency(Handle<HeapObject> obj, | 921 void AddWeakObjectToCodeDependency(Handle<HeapObject> obj, |
| 921 Handle<DependentCode> dep); | 922 Handle<DependentCode> dep); |
| 922 | 923 |
| 923 DependentCode* LookupWeakObjectToCodeDependency(Handle<HeapObject> obj); | 924 DependentCode* LookupWeakObjectToCodeDependency(Handle<HeapObject> obj); |
| 924 | 925 |
| 926 void SetStackFrameCache(WeakHashTable* table); |
| 927 |
| 925 void CompactWeakFixedArrays(); | 928 void CompactWeakFixedArrays(); |
| 926 | 929 |
| 927 void AddRetainedMap(Handle<Map> map); | 930 void AddRetainedMap(Handle<Map> map); |
| 928 | 931 |
| 929 // This event is triggered after successful allocation of a new object made | 932 // This event is triggered after successful allocation of a new object made |
| 930 // by runtime. Allocations of target space for object evacuation do not | 933 // by runtime. Allocations of target space for object evacuation do not |
| 931 // trigger the event. In order to track ALL allocations one must turn off | 934 // trigger the event. In order to track ALL allocations one must turn off |
| 932 // FLAG_inline_new and FLAG_use_allocation_folding. | 935 // FLAG_inline_new and FLAG_use_allocation_folding. |
| 933 inline void OnAllocationEvent(HeapObject* object, int size_in_bytes); | 936 inline void OnAllocationEvent(HeapObject* object, int size_in_bytes); |
| 934 | 937 |
| (...skipping 1684 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2619 friend class LargeObjectSpace; | 2622 friend class LargeObjectSpace; |
| 2620 friend class NewSpace; | 2623 friend class NewSpace; |
| 2621 friend class PagedSpace; | 2624 friend class PagedSpace; |
| 2622 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); | 2625 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); |
| 2623 }; | 2626 }; |
| 2624 | 2627 |
| 2625 } // namespace internal | 2628 } // namespace internal |
| 2626 } // namespace v8 | 2629 } // namespace v8 |
| 2627 | 2630 |
| 2628 #endif // V8_HEAP_HEAP_H_ | 2631 #endif // V8_HEAP_HEAP_H_ |
| OLD | NEW |