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 1159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1170 | 1170 |
1171 // Calculates the allocation limit based on a given growing factor and a | 1171 // Calculates the allocation limit based on a given growing factor and a |
1172 // given old generation size. | 1172 // given old generation size. |
1173 intptr_t CalculateOldGenerationAllocationLimit(double factor, | 1173 intptr_t CalculateOldGenerationAllocationLimit(double factor, |
1174 intptr_t old_gen_size); | 1174 intptr_t old_gen_size); |
1175 | 1175 |
1176 // Sets the allocation limit to trigger the next full garbage collection. | 1176 // Sets the allocation limit to trigger the next full garbage collection. |
1177 void SetOldGenerationAllocationLimit(intptr_t old_gen_size, double gc_speed, | 1177 void SetOldGenerationAllocationLimit(intptr_t old_gen_size, double gc_speed, |
1178 double mutator_speed); | 1178 double mutator_speed); |
1179 | 1179 |
| 1180 // Decrease the allocation limit if the new limit based on the given |
| 1181 // parameters is lower than the current limit. |
| 1182 void DampenOldGenerationAllocationLimit(intptr_t old_gen_size, |
| 1183 double gc_speed, |
| 1184 double mutator_speed); |
| 1185 |
1180 // Indicates whether inline bump-pointer allocation has been disabled. | 1186 // Indicates whether inline bump-pointer allocation has been disabled. |
1181 bool inline_allocation_disabled() { return inline_allocation_disabled_; } | 1187 bool inline_allocation_disabled() { return inline_allocation_disabled_; } |
1182 | 1188 |
1183 // Switch whether inline bump-pointer allocation should be used. | 1189 // Switch whether inline bump-pointer allocation should be used. |
1184 void EnableInlineAllocation(); | 1190 void EnableInlineAllocation(); |
1185 void DisableInlineAllocation(); | 1191 void DisableInlineAllocation(); |
1186 | 1192 |
1187 // Implements the corresponding V8 API function. | 1193 // Implements the corresponding V8 API function. |
1188 bool IdleNotification(double deadline_in_seconds); | 1194 bool IdleNotification(double deadline_in_seconds); |
1189 bool IdleNotification(int idle_time_in_ms); | 1195 bool IdleNotification(int idle_time_in_ms); |
(...skipping 1636 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2826 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2832 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2827 | 2833 |
2828 private: | 2834 private: |
2829 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2835 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2830 }; | 2836 }; |
2831 #endif // DEBUG | 2837 #endif // DEBUG |
2832 } | 2838 } |
2833 } // namespace v8::internal | 2839 } // namespace v8::internal |
2834 | 2840 |
2835 #endif // V8_HEAP_HEAP_H_ | 2841 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |