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

Unified Diff: src/counters.cc

Issue 2906063002: Move StatsTable into the Counters class. (Closed)
Patch Set: Fix nits. Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/counters.h ('k') | src/isolate.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/counters.cc
diff --git a/src/counters.cc b/src/counters.cc
index 327b203afbefc2ac94c7bc84f2713f791c9776f8..c98078658f5fde39478b32619f3360e23e392bd0 100644
--- a/src/counters.cc
+++ b/src/counters.cc
@@ -15,23 +15,24 @@
namespace v8 {
namespace internal {
-StatsTable::StatsTable()
- : lookup_function_(NULL),
+StatsTable::StatsTable(Counters* counters)
+ : counters_(counters),
+ lookup_function_(NULL),
create_histogram_function_(NULL),
add_histogram_sample_function_(NULL) {}
-void StatsTable::SetCounterFunction(CounterLookupCallback f, Isolate* isolate) {
+void StatsTable::SetCounterFunction(CounterLookupCallback f) {
lookup_function_ = f;
- if (!isolate->InitializeCounters()) isolate->counters()->ResetCounters();
+ counters_->ResetCounters();
}
int* StatsCounterBase::FindLocationInStatsTable() const {
- return isolate_->stats_table()->FindLocation(name_);
+ return counters_->stats_table()->FindLocation(name_);
}
-StatsCounterThreadSafe::StatsCounterThreadSafe(Isolate* isolate,
+StatsCounterThreadSafe::StatsCounterThreadSafe(Counters* counters,
const char* name)
- : StatsCounterBase(isolate, name) {
+ : StatsCounterBase(counters, name) {
GetPtr();
}
@@ -78,13 +79,13 @@ int* StatsCounterThreadSafe::GetPtr() {
void Histogram::AddSample(int sample) {
if (Enabled()) {
- isolate()->stats_table()->AddHistogramSample(histogram_, sample);
+ counters_->stats_table()->AddHistogramSample(histogram_, sample);
}
}
void* Histogram::CreateHistogram() const {
- return isolate()->stats_table()->
- CreateHistogram(name_, min_, max_, num_buckets_);
+ return counters_->stats_table()->CreateHistogram(name_, min_, max_,
+ num_buckets_);
}
@@ -93,7 +94,7 @@ void HistogramTimer::Start() {
if (Enabled()) {
timer_.Start();
}
- Logger::CallEventLogger(isolate(), name(), Logger::START, true);
+ Logger::CallEventLogger(counters()->isolate(), name(), Logger::START, true);
}
@@ -107,13 +108,14 @@ void HistogramTimer::Stop() {
AddSample(static_cast<int>(sample));
timer_.Stop();
}
- Logger::CallEventLogger(isolate(), name(), Logger::END, true);
+ Logger::CallEventLogger(counters()->isolate(), name(), Logger::END, true);
}
Counters::Counters(Isolate* isolate)
- :
+ : isolate_(isolate),
+ stats_table_(this),
// clang format off
-#define SC(name, caption) name##_(isolate, "c:" #caption),
+#define SC(name, caption) name##_(this, "c:" #caption),
STATS_COUNTER_TS_LIST(SC)
#undef SC
// clang format on
@@ -133,7 +135,7 @@ Counters::Counters(Isolate* isolate)
for (const auto& histogram : kHistograms) {
this->*histogram.member =
Histogram(histogram.caption, histogram.min, histogram.max,
- histogram.num_buckets, isolate);
+ histogram.num_buckets, this);
}
static const struct {
@@ -149,7 +151,7 @@ Counters::Counters(Isolate* isolate)
};
for (const auto& timer : kHistogramTimers) {
this->*timer.member =
- HistogramTimer(timer.caption, 0, timer.max, timer.res, 50, isolate);
+ HistogramTimer(timer.caption, 0, timer.max, timer.res, 50, this);
}
static const struct {
@@ -162,7 +164,7 @@ Counters::Counters(Isolate* isolate)
};
for (const auto& aht : kAggregatableHistogramTimers) {
this->*aht.member =
- AggregatableHistogramTimer(aht.caption, 0, 10000000, 50, isolate);
+ AggregatableHistogramTimer(aht.caption, 0, 10000000, 50, this);
}
static const struct {
@@ -174,8 +176,7 @@ Counters::Counters(Isolate* isolate)
#undef HP
};
for (const auto& percentage : kHistogramPercentages) {
- this->*percentage.member =
- Histogram(percentage.caption, 0, 101, 100, isolate);
+ this->*percentage.member = Histogram(percentage.caption, 0, 101, 100, this);
}
// Exponential histogram assigns bucket limits to points
@@ -194,7 +195,7 @@ Counters::Counters(Isolate* isolate)
};
for (const auto& histogram : kLegacyMemoryHistograms) {
this->*histogram.member =
- Histogram(histogram.caption, 1000, 500000, 50, isolate);
+ Histogram(histogram.caption, 1000, 500000, 50, this);
}
// For n = 100, low = 4000, high = 2000000: the factor = 1.06.
@@ -210,7 +211,7 @@ Counters::Counters(Isolate* isolate)
};
for (const auto& histogram : kMemoryHistograms) {
this->*histogram.member =
- Histogram(histogram.caption, 4000, 2000000, 100, isolate);
+ Histogram(histogram.caption, 4000, 2000000, 100, this);
this->*histogram.aggregated =
AggregatedMemoryHistogram<Histogram>(&(this->*histogram.member));
}
@@ -252,7 +253,7 @@ Counters::Counters(Isolate* isolate)
};
// clang-format on
for (const auto& counter : kStatsCounters) {
- this->*counter.member = StatsCounter(isolate, counter.caption);
+ this->*counter.member = StatsCounter(this, counter.caption);
}
}
« no previous file with comments | « src/counters.h ('k') | src/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698