| Index: src/incremental-marking.cc
|
| diff --git a/src/incremental-marking.cc b/src/incremental-marking.cc
|
| index 1160032ccfdabca44f1452181d22f7a693d4fc4f..91a9abbf32c27bbdb72b97f819c53d92e3736919 100644
|
| --- a/src/incremental-marking.cc
|
| +++ b/src/incremental-marking.cc
|
| @@ -22,14 +22,17 @@ IncrementalMarking::IncrementalMarking(Heap* heap)
|
| marking_deque_memory_(NULL),
|
| marking_deque_memory_committed_(false),
|
| steps_count_(0),
|
| + steps_took_(0),
|
| + longest_step_(0.0),
|
| old_generation_space_available_at_start_of_incremental_(0),
|
| old_generation_space_used_at_start_of_incremental_(0),
|
| + steps_count_since_last_gc_(0),
|
| + steps_took_since_last_gc_(0),
|
| should_hurry_(false),
|
| marking_speed_(0),
|
| allocated_(0),
|
| no_marking_scope_depth_(0),
|
| - unscanned_bytes_of_large_object_(0) {
|
| -}
|
| + unscanned_bytes_of_large_object_(0) {}
|
|
|
|
|
| void IncrementalMarking::TearDown() {
|
| @@ -655,6 +658,9 @@ void IncrementalMarking::UpdateMarkingDequeAfterScavenge() {
|
| }
|
| }
|
| marking_deque_.set_top(new_top);
|
| +
|
| + steps_took_since_last_gc_ = 0;
|
| + steps_count_since_last_gc_ = 0;
|
| }
|
|
|
|
|
| @@ -889,6 +895,7 @@ void IncrementalMarking::Step(intptr_t allocated_bytes,
|
| }
|
|
|
| steps_count_++;
|
| + steps_count_since_last_gc_++;
|
|
|
| bool speed_up = false;
|
|
|
| @@ -957,7 +964,9 @@ void IncrementalMarking::Step(intptr_t allocated_bytes,
|
| FLAG_print_cumulative_gc_stat) {
|
| double end = base::OS::TimeCurrentMillis();
|
| double delta = (end - start);
|
| - heap_->tracer()->AddIncrementalMarkingStep(delta);
|
| + longest_step_ = Max(longest_step_, delta);
|
| + steps_took_ += delta;
|
| + steps_took_since_last_gc_ += delta;
|
| heap_->AddMarkingTime(delta);
|
| }
|
| }
|
| @@ -965,10 +974,14 @@ void IncrementalMarking::Step(intptr_t allocated_bytes,
|
|
|
| void IncrementalMarking::ResetStepCounters() {
|
| steps_count_ = 0;
|
| + steps_took_ = 0;
|
| + longest_step_ = 0.0;
|
| old_generation_space_available_at_start_of_incremental_ =
|
| SpaceLeftInOldSpace();
|
| old_generation_space_used_at_start_of_incremental_ =
|
| heap_->PromotedTotalSize();
|
| + steps_count_since_last_gc_ = 0;
|
| + steps_took_since_last_gc_ = 0;
|
| bytes_rescanned_ = 0;
|
| marking_speed_ = kInitialMarkingSpeed;
|
| bytes_scanned_ = 0;
|
|
|