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 #include "src/heap/incremental-marking.h" | 5 #include "src/heap/incremental-marking.h" |
6 | 6 |
7 #include "src/code-stubs.h" | 7 #include "src/code-stubs.h" |
8 #include "src/compilation-cache.h" | 8 #include "src/compilation-cache.h" |
9 #include "src/conversions.h" | 9 #include "src/conversions.h" |
10 #include "src/heap/gc-idle-time-handler.h" | 10 #include "src/heap/gc-idle-time-handler.h" |
(...skipping 1158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1169 marking_speed_ * | 1169 marking_speed_ * |
1170 Max(allocated_, write_barriers_invoked_since_last_step_); | 1170 Max(allocated_, write_barriers_invoked_since_last_step_); |
1171 allocated_ = 0; | 1171 allocated_ = 0; |
1172 write_barriers_invoked_since_last_step_ = 0; | 1172 write_barriers_invoked_since_last_step_ = 0; |
1173 | 1173 |
1174 bytes_scanned_ += bytes_to_process; | 1174 bytes_scanned_ += bytes_to_process; |
1175 | 1175 |
1176 if (state_ == SWEEPING) { | 1176 if (state_ == SWEEPING) { |
1177 if (heap_->mark_compact_collector()->sweeping_in_progress() && | 1177 if (heap_->mark_compact_collector()->sweeping_in_progress() && |
1178 (heap_->mark_compact_collector()->IsSweepingCompleted() || | 1178 (heap_->mark_compact_collector()->IsSweepingCompleted() || |
1179 !heap_->concurrent_sweeping_enabled())) { | 1179 !FLAG_concurrent_sweeping)) { |
1180 heap_->mark_compact_collector()->EnsureSweepingCompleted(); | 1180 heap_->mark_compact_collector()->EnsureSweepingCompleted(); |
1181 } | 1181 } |
1182 if (!heap_->mark_compact_collector()->sweeping_in_progress()) { | 1182 if (!heap_->mark_compact_collector()->sweeping_in_progress()) { |
1183 bytes_scanned_ = 0; | 1183 bytes_scanned_ = 0; |
1184 StartMarking(); | 1184 StartMarking(); |
1185 } | 1185 } |
1186 } else if (state_ == MARKING) { | 1186 } else if (state_ == MARKING) { |
1187 bytes_processed = ProcessMarkingDeque(bytes_to_process); | 1187 bytes_processed = ProcessMarkingDeque(bytes_to_process); |
1188 if (heap_->mark_compact_collector()->marking_deque()->IsEmpty()) { | 1188 if (heap_->mark_compact_collector()->marking_deque()->IsEmpty()) { |
1189 if (completion == FORCE_COMPLETION || | 1189 if (completion == FORCE_COMPLETION || |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1242 void IncrementalMarking::IncrementIdleMarkingDelayCounter() { | 1242 void IncrementalMarking::IncrementIdleMarkingDelayCounter() { |
1243 idle_marking_delay_counter_++; | 1243 idle_marking_delay_counter_++; |
1244 } | 1244 } |
1245 | 1245 |
1246 | 1246 |
1247 void IncrementalMarking::ClearIdleMarkingDelayCounter() { | 1247 void IncrementalMarking::ClearIdleMarkingDelayCounter() { |
1248 idle_marking_delay_counter_ = 0; | 1248 idle_marking_delay_counter_ = 0; |
1249 } | 1249 } |
1250 } // namespace internal | 1250 } // namespace internal |
1251 } // namespace v8 | 1251 } // namespace v8 |
OLD | NEW |