Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(409)

Side by Side Diff: src/heap/incremental-marking.cc

Issue 1862063002: [heap] Don't use black pages for map, code and, lo space. Instead color objects black. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698