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 910 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
921 void SetEmbedderHeapTracer(EmbedderHeapTracer* tracer); | 921 void SetEmbedderHeapTracer(EmbedderHeapTracer* tracer); |
922 | 922 |
923 void RegisterExternallyReferencedObject(Object** object); | 923 void RegisterExternallyReferencedObject(Object** object); |
924 | 924 |
925 // =========================================================================== | 925 // =========================================================================== |
926 // Getters to other components. ============================================== | 926 // Getters to other components. ============================================== |
927 // =========================================================================== | 927 // =========================================================================== |
928 | 928 |
929 GCTracer* tracer() { return tracer_; } | 929 GCTracer* tracer() { return tracer_; } |
930 | 930 |
| 931 MemoryAllocator* memory_allocator() { return memory_allocator_; } |
| 932 |
931 EmbedderHeapTracer* embedder_heap_tracer() { return embedder_heap_tracer_; } | 933 EmbedderHeapTracer* embedder_heap_tracer() { return embedder_heap_tracer_; } |
932 | 934 |
933 PromotionQueue* promotion_queue() { return &promotion_queue_; } | 935 PromotionQueue* promotion_queue() { return &promotion_queue_; } |
934 | 936 |
935 inline Isolate* isolate(); | 937 inline Isolate* isolate(); |
936 | 938 |
937 MarkCompactCollector* mark_compact_collector() { | 939 MarkCompactCollector* mark_compact_collector() { |
938 return mark_compact_collector_; | 940 return mark_compact_collector_; |
939 } | 941 } |
940 | 942 |
(...skipping 1202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2143 // Last time an idle notification happened. | 2145 // Last time an idle notification happened. |
2144 double last_idle_notification_time_; | 2146 double last_idle_notification_time_; |
2145 | 2147 |
2146 // Last time a garbage collection happened. | 2148 // Last time a garbage collection happened. |
2147 double last_gc_time_; | 2149 double last_gc_time_; |
2148 | 2150 |
2149 Scavenger* scavenge_collector_; | 2151 Scavenger* scavenge_collector_; |
2150 | 2152 |
2151 MarkCompactCollector* mark_compact_collector_; | 2153 MarkCompactCollector* mark_compact_collector_; |
2152 | 2154 |
| 2155 MemoryAllocator* memory_allocator_; |
| 2156 |
2153 StoreBuffer store_buffer_; | 2157 StoreBuffer store_buffer_; |
2154 | 2158 |
2155 IncrementalMarking* incremental_marking_; | 2159 IncrementalMarking* incremental_marking_; |
2156 | 2160 |
2157 GCIdleTimeHandler* gc_idle_time_handler_; | 2161 GCIdleTimeHandler* gc_idle_time_handler_; |
2158 | 2162 |
2159 MemoryReducer* memory_reducer_; | 2163 MemoryReducer* memory_reducer_; |
2160 | 2164 |
2161 ObjectStats* object_stats_; | 2165 ObjectStats* object_stats_; |
2162 | 2166 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2246 friend class IdleScavengeObserver; | 2250 friend class IdleScavengeObserver; |
2247 friend class IncrementalMarking; | 2251 friend class IncrementalMarking; |
2248 friend class IteratePromotedObjectsVisitor; | 2252 friend class IteratePromotedObjectsVisitor; |
2249 friend class MarkCompactCollector; | 2253 friend class MarkCompactCollector; |
2250 friend class MarkCompactMarkingVisitor; | 2254 friend class MarkCompactMarkingVisitor; |
2251 friend class NewSpace; | 2255 friend class NewSpace; |
2252 friend class ObjectStatsVisitor; | 2256 friend class ObjectStatsVisitor; |
2253 friend class Page; | 2257 friend class Page; |
2254 friend class Scavenger; | 2258 friend class Scavenger; |
2255 friend class StoreBuffer; | 2259 friend class StoreBuffer; |
| 2260 friend class TestMemoryAllocatorScope; |
2256 | 2261 |
2257 // The allocator interface. | 2262 // The allocator interface. |
2258 friend class Factory; | 2263 friend class Factory; |
2259 | 2264 |
2260 // The Isolate constructs us. | 2265 // The Isolate constructs us. |
2261 friend class Isolate; | 2266 friend class Isolate; |
2262 | 2267 |
2263 // Used in cctest. | 2268 // Used in cctest. |
2264 friend class HeapTester; | 2269 friend class HeapTester; |
2265 | 2270 |
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2656 friend class LargeObjectSpace; | 2661 friend class LargeObjectSpace; |
2657 friend class NewSpace; | 2662 friend class NewSpace; |
2658 friend class PagedSpace; | 2663 friend class PagedSpace; |
2659 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); | 2664 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); |
2660 }; | 2665 }; |
2661 | 2666 |
2662 } // namespace internal | 2667 } // namespace internal |
2663 } // namespace v8 | 2668 } // namespace v8 |
2664 | 2669 |
2665 #endif // V8_HEAP_HEAP_H_ | 2670 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |