Index: src/counters.cc |
diff --git a/src/counters.cc b/src/counters.cc |
index cc4836d6d91febefceef9189e52c1cece0a23b4a..e0f6eccccec4f70e0b8e8d13b3baa20132e481e3 100644 |
--- a/src/counters.cc |
+++ b/src/counters.cc |
@@ -288,36 +288,36 @@ void RuntimeCallCounter::Dump(v8::tracing::TracedValue* value) { |
void RuntimeCallStats::Enter(RuntimeCallStats* stats, RuntimeCallTimer* timer, |
CounterId counter_id) { |
RuntimeCallCounter* counter = &(stats->*counter_id); |
- timer->Start(counter, stats->current_timer_); |
- stats->current_timer_ = timer; |
+ timer->Start(counter, stats->current_timer_.Value()); |
+ stats->current_timer_.SetValue(timer); |
} |
// static |
void RuntimeCallStats::Leave(RuntimeCallStats* stats, RuntimeCallTimer* timer) { |
- if (stats->current_timer_ == timer) { |
- stats->current_timer_ = timer->Stop(); |
+ if (stats->current_timer_.Value() == timer) { |
+ stats->current_timer_.SetValue(timer->Stop()); |
} else { |
// Must be a Threading cctest. Walk the chain of Timers to find the |
// buried one that's leaving. We don't care about keeping nested timings |
// accurate, just avoid crashing by keeping the chain intact. |
- RuntimeCallTimer* next = stats->current_timer_; |
- while (next->parent_ != timer) next = next->parent_; |
- next->parent_ = timer->Stop(); |
+ RuntimeCallTimer* next = stats->current_timer_.Value(); |
+ while (next->parent() != timer) next = next->parent(); |
+ next->parent_.SetValue(timer->Stop()); |
} |
} |
// static |
void RuntimeCallStats::CorrectCurrentCounterId(RuntimeCallStats* stats, |
CounterId counter_id) { |
- DCHECK_NOT_NULL(stats->current_timer_); |
+ DCHECK_NOT_NULL(stats->current_timer_.Value()); |
RuntimeCallCounter* counter = &(stats->*counter_id); |
- stats->current_timer_->counter_ = counter; |
+ stats->current_timer_.Value()->counter_ = counter; |
} |
void RuntimeCallStats::Print(std::ostream& os) { |
RuntimeCallStatEntries entries; |
- if (current_timer_ != NULL) { |
- current_timer_->Elapsed(); |
+ if (current_timer_.Value() != nullptr) { |
+ current_timer_.Value()->Elapsed(); |
} |
#define PRINT_COUNTER(name) entries.Add(&this->name); |
@@ -369,8 +369,8 @@ void RuntimeCallStats::Reset() { |
} |
void RuntimeCallStats::Dump(v8::tracing::TracedValue* value) { |
- if (current_timer_ != NULL) { |
- current_timer_->Elapsed(); |
+ if (current_timer_.Value() != nullptr) { |
+ current_timer_.Value()->Elapsed(); |
} |
#define DUMP_COUNTER(name) \ |
if (this->name.count > 0) this->name.Dump(value); |