| Index: src/log.cc
|
| diff --git a/src/log.cc b/src/log.cc
|
| index f7607783e3180ee1cdf5906dec6e1da3e49cf1c4..0a02e66b3bfe9bff3e135b9e2d42a9dc0f407faa 100644
|
| --- a/src/log.cc
|
| +++ b/src/log.cc
|
| @@ -21,7 +21,6 @@
|
| #include "src/log-utils.h"
|
| #include "src/macro-assembler.h"
|
| #include "src/perf-jit.h"
|
| -#include "src/profiler/cpu-profiler-inl.h"
|
| #include "src/profiler/profiler-listener.h"
|
| #include "src/profiler/tick-sample.h"
|
| #include "src/runtime-profiler.h"
|
| @@ -31,7 +30,6 @@
|
| namespace v8 {
|
| namespace internal {
|
|
|
| -
|
| #define DECLARE_EVENT(ignore1, name) name,
|
| static const char* kLogEventsNames[CodeEventListener::NUMBER_OF_LOG_EVENTS] = {
|
| LOG_EVENTS_AND_TAGS_LIST(DECLARE_EVENT)};
|
| @@ -557,7 +555,7 @@ class Profiler: public base::Thread {
|
| void Disengage();
|
|
|
| // Inserts collected profiling data into buffer.
|
| - void Insert(TickSample* sample) {
|
| + void Insert(v8::TickSample* sample) {
|
| if (paused_)
|
| return;
|
|
|
| @@ -578,7 +576,7 @@ class Profiler: public base::Thread {
|
|
|
| private:
|
| // Waits for a signal and removes profiling data.
|
| - bool Remove(TickSample* sample) {
|
| + bool Remove(v8::TickSample* sample) {
|
| buffer_semaphore_.Wait(); // Wait for an element.
|
| *sample = buffer_[base::NoBarrier_Load(&tail_)];
|
| bool result = overflow_;
|
| @@ -595,7 +593,7 @@ class Profiler: public base::Thread {
|
| // Cyclic buffer for communicating profiling samples
|
| // between the signal handler and the worker thread.
|
| static const int kBufferSize = 128;
|
| - TickSample buffer_[kBufferSize]; // Buffer storage.
|
| + v8::TickSample buffer_[kBufferSize]; // Buffer storage.
|
| int head_; // Index to the buffer head.
|
| base::Atomic32 tail_; // Index to the buffer tail.
|
| bool overflow_; // Tell whether a buffer overflow has occurred.
|
| @@ -619,10 +617,10 @@ class Profiler: public base::Thread {
|
| //
|
| class Ticker: public sampler::Sampler {
|
| public:
|
| - Ticker(Isolate* isolate, int interval):
|
| - sampler::Sampler(reinterpret_cast<v8::Isolate*>(isolate)),
|
| - profiler_(NULL),
|
| - sampling_thread_(new SamplingThread(this, interval)) {}
|
| + Ticker(Isolate* isolate, int interval)
|
| + : sampler::Sampler(reinterpret_cast<v8::Isolate*>(isolate)),
|
| + profiler_(nullptr),
|
| + sampling_thread_(new SamplingThread(this, interval)) {}
|
|
|
| ~Ticker() {
|
| if (IsActive()) Stop();
|
| @@ -630,7 +628,7 @@ class Ticker: public sampler::Sampler {
|
| }
|
|
|
| void SetProfiler(Profiler* profiler) {
|
| - DCHECK(profiler_ == NULL);
|
| + DCHECK(profiler_ == nullptr);
|
| profiler_ = profiler;
|
| IncreaseProfilingDepth();
|
| if (!IsActive()) Start();
|
| @@ -638,7 +636,7 @@ class Ticker: public sampler::Sampler {
|
| }
|
|
|
| void ClearProfiler() {
|
| - profiler_ = NULL;
|
| + profiler_ = nullptr;
|
| if (IsActive()) Stop();
|
| DecreaseProfilingDepth();
|
| sampling_thread_->Join();
|
| @@ -646,15 +644,15 @@ class Ticker: public sampler::Sampler {
|
|
|
| void SampleStack(const v8::RegisterState& state) override {
|
| if (!profiler_) return;
|
| - v8::Isolate* v8_isolate = isolate();
|
| - Isolate* i_isolate = reinterpret_cast<Isolate*>(v8_isolate);
|
| #if defined(USE_SIMULATOR)
|
| - if (!SimulatorHelper::FillRegisters(i_isolate,
|
| - const_cast<v8::RegisterState*>(&state)))
|
| - return;
|
| + Isolate* i_isolate = reinterpret_cast<Isolate*>(isolate());
|
| + v8::RegisterState regs;
|
| + if (!SimulatorHelper::FillRegisters(i_isolate, ®s)) return;
|
| +#else
|
| + const v8::RegisterState& regs = state;
|
| #endif
|
| - TickSample sample;
|
| - sample.Init(i_isolate, state, TickSample::kIncludeCEntryFrame, true);
|
| + v8::TickSample sample;
|
| + sample.Init(isolate(), regs, v8::TickSample::kIncludeCEntryFrame, true);
|
| profiler_->Insert(&sample);
|
| }
|
|
|
| @@ -714,7 +712,7 @@ void Profiler::Disengage() {
|
| // inserting a fake element in the queue and then wait for
|
| // the thread to terminate.
|
| base::NoBarrier_Store(&running_, 0);
|
| - TickSample sample;
|
| + v8::TickSample sample;
|
| // Reset 'paused_' flag, otherwise semaphore may not be signalled.
|
| resume();
|
| Insert(&sample);
|
| @@ -725,7 +723,7 @@ void Profiler::Disengage() {
|
|
|
|
|
| void Profiler::Run() {
|
| - TickSample sample;
|
| + v8::TickSample sample;
|
| bool overflow = Remove(&sample);
|
| while (base::NoBarrier_Load(&running_)) {
|
| LOG(isolate_, TickEvent(&sample, overflow));
|
| @@ -1367,7 +1365,7 @@ void Logger::RuntimeCallTimerEvent() {
|
| msg.WriteToLogFile();
|
| }
|
|
|
| -void Logger::TickEvent(TickSample* sample, bool overflow) {
|
| +void Logger::TickEvent(v8::TickSample* sample, bool overflow) {
|
| if (!log_->IsEnabled() || !FLAG_prof_cpp) return;
|
| if (FLAG_runtime_call_stats) {
|
| RuntimeCallTimerEvent();
|
|
|