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 553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
564 // Ready to start incremental marking. | 564 // Ready to start incremental marking. |
565 if (FLAG_trace_incremental_marking) { | 565 if (FLAG_trace_incremental_marking) { |
566 PrintF("[IncrementalMarking] Running\n"); | 566 PrintF("[IncrementalMarking] Running\n"); |
567 } | 567 } |
568 } | 568 } |
569 | 569 |
570 void IncrementalMarking::StartBlackAllocation() { | 570 void IncrementalMarking::StartBlackAllocation() { |
571 DCHECK(FLAG_black_allocation); | 571 DCHECK(FLAG_black_allocation); |
572 DCHECK(IsMarking()); | 572 DCHECK(IsMarking()); |
573 black_allocation_ = true; | 573 black_allocation_ = true; |
574 PagedSpaces spaces(heap()); | 574 PagedSpaces* old_space = heap()->old_space(); |
575 for (PagedSpace* space = spaces.next(); space != NULL; | 575 old_space->EmptyAllocationInfo(); |
576 space = spaces.next()) { | 576 old_space->free_list()->Reset(); |
577 space->EmptyAllocationInfo(); | |
578 space->free_list()->Reset(); | |
579 } | |
580 if (FLAG_trace_incremental_marking) { | 577 if (FLAG_trace_incremental_marking) { |
581 PrintF("[IncrementalMarking] Black allocation started\n"); | 578 PrintF("[IncrementalMarking] Black allocation started\n"); |
582 } | 579 } |
583 } | 580 } |
584 | 581 |
585 void IncrementalMarking::FinishBlackAllocation() { | 582 void IncrementalMarking::FinishBlackAllocation() { |
586 black_allocation_ = false; | 583 black_allocation_ = false; |
587 if (FLAG_trace_incremental_marking) { | 584 if (FLAG_trace_incremental_marking) { |
588 PrintF("[IncrementalMarking] Black allocation finished\n"); | 585 PrintF("[IncrementalMarking] Black allocation finished\n"); |
589 } | 586 } |
(...skipping 636 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1226 void IncrementalMarking::IncrementIdleMarkingDelayCounter() { | 1223 void IncrementalMarking::IncrementIdleMarkingDelayCounter() { |
1227 idle_marking_delay_counter_++; | 1224 idle_marking_delay_counter_++; |
1228 } | 1225 } |
1229 | 1226 |
1230 | 1227 |
1231 void IncrementalMarking::ClearIdleMarkingDelayCounter() { | 1228 void IncrementalMarking::ClearIdleMarkingDelayCounter() { |
1232 idle_marking_delay_counter_ = 0; | 1229 idle_marking_delay_counter_ = 0; |
1233 } | 1230 } |
1234 } // namespace internal | 1231 } // namespace internal |
1235 } // namespace v8 | 1232 } // namespace v8 |
OLD | NEW |