| 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_INCREMENTAL_MARKING_H_ | 5 #ifndef V8_HEAP_INCREMENTAL_MARKING_H_ |
| 6 #define V8_HEAP_INCREMENTAL_MARKING_H_ | 6 #define V8_HEAP_INCREMENTAL_MARKING_H_ |
| 7 | 7 |
| 8 #include "src/cancelable-task.h" | 8 #include "src/cancelable-task.h" |
| 9 #include "src/execution.h" | 9 #include "src/execution.h" |
| 10 #include "src/heap/heap.h" | 10 #include "src/heap/heap.h" |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 187 inline void SetNewSpacePageFlags(MemoryChunk* chunk) { | 187 inline void SetNewSpacePageFlags(MemoryChunk* chunk) { |
| 188 SetNewSpacePageFlags(chunk, IsMarking()); | 188 SetNewSpacePageFlags(chunk, IsMarking()); |
| 189 } | 189 } |
| 190 | 190 |
| 191 bool IsCompacting() { return IsMarking() && is_compacting_; } | 191 bool IsCompacting() { return IsMarking() && is_compacting_; } |
| 192 | 192 |
| 193 void ActivateGeneratedStub(Code* stub); | 193 void ActivateGeneratedStub(Code* stub); |
| 194 | 194 |
| 195 void NotifyOfHighPromotionRate(); | 195 void NotifyOfHighPromotionRate(); |
| 196 | 196 |
| 197 void EnterNoMarkingScope() { no_marking_scope_depth_++; } | |
| 198 | |
| 199 void LeaveNoMarkingScope() { no_marking_scope_depth_--; } | |
| 200 | |
| 201 void NotifyIncompleteScanOfObject(int unscanned_bytes) { | 197 void NotifyIncompleteScanOfObject(int unscanned_bytes) { |
| 202 unscanned_bytes_of_large_object_ = unscanned_bytes; | 198 unscanned_bytes_of_large_object_ = unscanned_bytes; |
| 203 } | 199 } |
| 204 | 200 |
| 205 void ClearIdleMarkingDelayCounter(); | 201 void ClearIdleMarkingDelayCounter(); |
| 206 | 202 |
| 207 bool IsIdleMarkingDelayCounterLimitReached(); | 203 bool IsIdleMarkingDelayCounterLimitReached(); |
| 208 | 204 |
| 209 static void MarkObject(Heap* heap, HeapObject* object); | 205 static void MarkObject(Heap* heap, HeapObject* object); |
| 210 | 206 |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 284 int64_t old_generation_space_available_at_start_of_incremental_; | 280 int64_t old_generation_space_available_at_start_of_incremental_; |
| 285 int64_t old_generation_space_used_at_start_of_incremental_; | 281 int64_t old_generation_space_used_at_start_of_incremental_; |
| 286 int64_t bytes_rescanned_; | 282 int64_t bytes_rescanned_; |
| 287 bool should_hurry_; | 283 bool should_hurry_; |
| 288 int marking_speed_; | 284 int marking_speed_; |
| 289 intptr_t bytes_scanned_; | 285 intptr_t bytes_scanned_; |
| 290 intptr_t allocated_; | 286 intptr_t allocated_; |
| 291 intptr_t write_barriers_invoked_since_last_step_; | 287 intptr_t write_barriers_invoked_since_last_step_; |
| 292 size_t idle_marking_delay_counter_; | 288 size_t idle_marking_delay_counter_; |
| 293 | 289 |
| 294 int no_marking_scope_depth_; | |
| 295 | |
| 296 int unscanned_bytes_of_large_object_; | 290 int unscanned_bytes_of_large_object_; |
| 297 | 291 |
| 298 bool was_activated_; | 292 bool was_activated_; |
| 299 | 293 |
| 300 bool black_allocation_; | 294 bool black_allocation_; |
| 301 | 295 |
| 302 bool finalize_marking_completed_; | 296 bool finalize_marking_completed_; |
| 303 | 297 |
| 304 int incremental_marking_finalization_rounds_; | 298 int incremental_marking_finalization_rounds_; |
| 305 | 299 |
| 306 GCRequestType request_type_; | 300 GCRequestType request_type_; |
| 307 | 301 |
| 308 IncrementalMarkingJob incremental_marking_job_; | 302 IncrementalMarkingJob incremental_marking_job_; |
| 309 | 303 |
| 310 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); | 304 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); |
| 311 }; | 305 }; |
| 312 } // namespace internal | 306 } // namespace internal |
| 313 } // namespace v8 | 307 } // namespace v8 |
| 314 | 308 |
| 315 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ | 309 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ |
| OLD | NEW |