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 2097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2108 bool IsHighSurvivalRate() { return high_survival_rate_period_length_ > 0; } | 2108 bool IsHighSurvivalRate() { return high_survival_rate_period_length_ > 0; } |
2109 | 2109 |
2110 void ConfigureInitialOldGenerationSize(); | 2110 void ConfigureInitialOldGenerationSize(); |
2111 | 2111 |
2112 void SelectScavengingVisitorsTable(); | 2112 void SelectScavengingVisitorsTable(); |
2113 | 2113 |
2114 bool TryFinalizeIdleIncrementalMarking( | 2114 bool TryFinalizeIdleIncrementalMarking( |
2115 double idle_time_in_ms, size_t size_of_objects, | 2115 double idle_time_in_ms, size_t size_of_objects, |
2116 size_t mark_compact_speed_in_bytes_per_ms); | 2116 size_t mark_compact_speed_in_bytes_per_ms); |
2117 | 2117 |
| 2118 GCIdleTimeHandler::HeapState ComputeHeapState(bool is_long_idle_notification); |
| 2119 |
| 2120 bool PerformIdleTimeAction(GCIdleTimeAction action, |
| 2121 GCIdleTimeHandler::HeapState heap_state, |
| 2122 double deadline_in_ms, |
| 2123 bool is_long_idle_notification); |
| 2124 |
| 2125 void IdleNotificationEpilogue(GCIdleTimeAction action, |
| 2126 GCIdleTimeHandler::HeapState heap_state, |
| 2127 double start_ms, double deadline_in_ms, |
| 2128 bool is_long_idle_notification); |
| 2129 |
2118 void ClearObjectStats(bool clear_last_time_stats = false); | 2130 void ClearObjectStats(bool clear_last_time_stats = false); |
2119 | 2131 |
2120 inline void UpdateAllocationsHash(HeapObject* object); | 2132 inline void UpdateAllocationsHash(HeapObject* object); |
2121 inline void UpdateAllocationsHash(uint32_t value); | 2133 inline void UpdateAllocationsHash(uint32_t value); |
2122 inline void PrintAlloctionsHash(); | 2134 inline void PrintAlloctionsHash(); |
2123 | 2135 |
2124 // Object counts and used memory by InstanceType | 2136 // Object counts and used memory by InstanceType |
2125 size_t object_counts_[OBJECT_STATS_COUNT]; | 2137 size_t object_counts_[OBJECT_STATS_COUNT]; |
2126 size_t object_counts_last_time_[OBJECT_STATS_COUNT]; | 2138 size_t object_counts_last_time_[OBJECT_STATS_COUNT]; |
2127 size_t object_sizes_[OBJECT_STATS_COUNT]; | 2139 size_t object_sizes_[OBJECT_STATS_COUNT]; |
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2656 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2668 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2657 | 2669 |
2658 private: | 2670 private: |
2659 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2671 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2660 }; | 2672 }; |
2661 #endif // DEBUG | 2673 #endif // DEBUG |
2662 } | 2674 } |
2663 } // namespace v8::internal | 2675 } // namespace v8::internal |
2664 | 2676 |
2665 #endif // V8_HEAP_HEAP_H_ | 2677 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |