Chromium Code Reviews| 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 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 154 // This is the upper bound for how many times we allow finalization of | 154 // This is the upper bound for how many times we allow finalization of |
| 155 // incremental marking to be postponed. | 155 // incremental marking to be postponed. |
| 156 static const int kMaxIdleMarkingDelayCounter = 3; | 156 static const int kMaxIdleMarkingDelayCounter = 3; |
| 157 | 157 |
| 158 #ifndef DEBUG | 158 #ifndef DEBUG |
| 159 static const intptr_t kActivationThreshold = 8 * MB; | 159 static const intptr_t kActivationThreshold = 8 * MB; |
| 160 #else | 160 #else |
| 161 static const intptr_t kActivationThreshold = 0; | 161 static const intptr_t kActivationThreshold = 0; |
| 162 #endif | 162 #endif |
| 163 | 163 |
| 164 #ifdef V8_CONCURRENT_MARKING | |
| 165 static const MarkBit::AccessMode kAtomicity = MarkBit::AccessMode::ATOMIC; | |
|
Hannes Payer (out of office)
2017/05/03 10:08:53
I am not sure if this is the right mechanism here.
ulan
2017/05/03 12:09:30
As discussed offline, in future we will have two I
| |
| 166 #else | |
| 167 static const MarkBit::AccessMode kAtomicity = MarkBit::AccessMode::NON_ATOMIC; | |
| 168 #endif | |
| 169 | |
| 164 void FinalizeSweeping(); | 170 void FinalizeSweeping(); |
| 165 | 171 |
| 166 size_t Step(size_t bytes_to_process, CompletionAction action, | 172 size_t Step(size_t bytes_to_process, CompletionAction action, |
| 167 ForceCompletionAction completion, StepOrigin step_origin); | 173 ForceCompletionAction completion, StepOrigin step_origin); |
| 168 | 174 |
| 169 inline void RestartIfNotMarking(); | 175 inline void RestartIfNotMarking(); |
| 170 | 176 |
| 171 static void RecordWriteFromCode(HeapObject* obj, Object** slot, | 177 static void RecordWriteFromCode(HeapObject* obj, Object** slot, |
| 172 Isolate* isolate); | 178 Isolate* isolate); |
| 173 | 179 |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 320 | 326 |
| 321 Observer new_generation_observer_; | 327 Observer new_generation_observer_; |
| 322 Observer old_generation_observer_; | 328 Observer old_generation_observer_; |
| 323 | 329 |
| 324 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); | 330 DISALLOW_IMPLICIT_CONSTRUCTORS(IncrementalMarking); |
| 325 }; | 331 }; |
| 326 } // namespace internal | 332 } // namespace internal |
| 327 } // namespace v8 | 333 } // namespace v8 |
| 328 | 334 |
| 329 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ | 335 #endif // V8_HEAP_INCREMENTAL_MARKING_H_ |
| OLD | NEW |