Index: src/profiler/cpu-profiler.h |
diff --git a/src/profiler/cpu-profiler.h b/src/profiler/cpu-profiler.h |
index aa9f0504771431b7440e9f3d0d5001e15cc42ad0..ccc148c5ea3588d1827dd109bbf2ee4564c94970 100644 |
--- a/src/profiler/cpu-profiler.h |
+++ b/src/profiler/cpu-profiler.h |
@@ -13,6 +13,7 @@ |
#include "src/libsampler/v8-sampler.h" |
#include "src/locked-queue.h" |
#include "src/profiler/circular-queue.h" |
+#include "src/profiler/profiler-listener.h" |
#include "src/profiler/tick-sample.h" |
namespace v8 { |
@@ -82,6 +83,8 @@ class CodeDeoptEventRecord : public CodeEventRecord { |
const char* deopt_reason; |
SourcePosition position; |
int deopt_id; |
+ void* pc; |
+ int fp_to_sp_delta; |
INLINE(void UpdateCodeMap(CodeMap* code_map)); |
}; |
@@ -189,7 +192,7 @@ class ProfilerEventsProcessor : public base::Thread { |
} \ |
} while (false) |
-class CpuProfiler : public CodeEventListener { |
+class CpuProfiler : public CodeEventObserver { |
public: |
explicit CpuProfiler(Isolate* isolate); |
@@ -211,34 +214,12 @@ class CpuProfiler : public CodeEventListener { |
void DeleteAllProfiles(); |
void DeleteProfile(CpuProfile* profile); |
+ void CodeEventHandler(const CodeEventsContainer& evt_rec) override; |
+ |
// Invoked from stack sampler (thread or signal handler.) |
inline TickSample* StartTickSample(); |
inline void FinishTickSample(); |
- // Must be called via PROFILE macro, otherwise will crash when |
- // profiling is not enabled. |
- void CallbackEvent(Name* name, Address entry_point) override; |
- void CodeCreateEvent(Logger::LogEventsAndTags tag, AbstractCode* code, |
- const char* comment) override; |
- void CodeCreateEvent(Logger::LogEventsAndTags tag, AbstractCode* code, |
- Name* name) override; |
- void CodeCreateEvent(Logger::LogEventsAndTags tag, AbstractCode* code, |
- SharedFunctionInfo* shared, Name* script_name) override; |
- void CodeCreateEvent(Logger::LogEventsAndTags tag, AbstractCode* code, |
- SharedFunctionInfo* shared, Name* script_name, int line, |
- int column) override; |
- void CodeCreateEvent(Logger::LogEventsAndTags tag, AbstractCode* code, |
- int args_count) override; |
- void CodeMovingGCEvent() override {} |
- void CodeMoveEvent(AbstractCode* from, Address to) override; |
- void CodeDisableOptEvent(AbstractCode* code, |
- SharedFunctionInfo* shared) override; |
- void CodeDeoptEvent(Code* code, Address pc, int fp_to_sp_delta); |
- void GetterCallbackEvent(Name* name, Address entry_point) override; |
- void RegExpCodeCreateEvent(AbstractCode* code, String* source) override; |
- void SetterCallbackEvent(Name* name, Address entry_point) override; |
- void SharedFunctionInfoMoveEvent(Address from, Address to) override {} |
- |
bool is_profiling() const { return is_profiling_; } |
ProfileGenerator* generator() const { return generator_; } |
@@ -251,9 +232,6 @@ class CpuProfiler : public CodeEventListener { |
void StopProcessor(); |
void ResetProfiles(); |
void LogBuiltins(); |
- void RecordInliningInfo(CodeEntry* entry, AbstractCode* abstract_code); |
- void RecordDeoptInlinedFrames(CodeEntry* entry, AbstractCode* abstract_code); |
- Name* InferScriptName(Name* name, SharedFunctionInfo* info); |
Isolate* isolate_; |
base::TimeDelta sampling_interval_; |