Index: src/profiler/cpu-profiler.h |
diff --git a/src/profiler/cpu-profiler.h b/src/profiler/cpu-profiler.h |
index 31136d00bcd1e95f8cfd64a20bd859a63060385d..d354aeb0469584ee27bdf94429461e262d51fd8e 100644 |
--- a/src/profiler/cpu-profiler.h |
+++ b/src/profiler/cpu-profiler.h |
@@ -16,6 +16,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 { |
@@ -85,6 +86,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)); |
}; |
@@ -183,7 +186,7 @@ class ProfilerEventsProcessor : public base::Thread { |
unsigned last_processed_code_event_id_; |
}; |
-class CpuProfiler : public CodeEventListener { |
+class CpuProfiler : public CodeEventObserver { |
public: |
explicit CpuProfiler(Isolate* isolate); |
@@ -204,34 +207,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(LogEventsAndTags tag, AbstractCode* code, |
- const char* comment) override; |
- void CodeCreateEvent(LogEventsAndTags tag, AbstractCode* code, |
- Name* name) override; |
- void CodeCreateEvent(LogEventsAndTags tag, AbstractCode* code, |
- SharedFunctionInfo* shared, Name* script_name) override; |
- void CodeCreateEvent(LogEventsAndTags tag, AbstractCode* code, |
- SharedFunctionInfo* shared, Name* script_name, int line, |
- int column) override; |
- void CodeCreateEvent(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) override; |
- 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_.get(); } |
@@ -244,9 +225,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* const isolate_; |
base::TimeDelta sampling_interval_; |