| Index: src/sampler.h
|
| diff --git a/src/sampler.h b/src/sampler.h
|
| index c3dce4ed7c2fec7e353cb06d1641f63e82092a84..a86ff19020979562d8608c7ae4d4ee779b79258f 100644
|
| --- a/src/sampler.h
|
| +++ b/src/sampler.h
|
| @@ -5,6 +5,8 @@
|
| #ifndef V8_SAMPLER_H_
|
| #define V8_SAMPLER_H_
|
|
|
| +#include "include/v8.h"
|
| +
|
| #include "src/base/atomicops.h"
|
| #include "src/frames.h"
|
| #include "src/globals.h"
|
| @@ -21,13 +23,6 @@ class Isolate;
|
| // (if used for profiling) the program counter and stack pointer for
|
| // the thread that created it.
|
|
|
| -struct RegisterState {
|
| - RegisterState() : pc(NULL), sp(NULL), fp(NULL) {}
|
| - Address pc; // Instruction pointer.
|
| - Address sp; // Stack pointer.
|
| - Address fp; // Frame pointer.
|
| -};
|
| -
|
| // TickSample captures the information collected for each sample.
|
| struct TickSample {
|
| TickSample()
|
| @@ -37,7 +32,9 @@ struct TickSample {
|
| frames_count(0),
|
| has_external_callback(false),
|
| top_frame_type(StackFrame::NONE) {}
|
| - void Init(Isolate* isolate, const RegisterState& state);
|
| + void Init(Isolate* isolate, const v8::RegisterState& state);
|
| + static int GetStackSample(Isolate* isolate, const v8::RegisterState& state,
|
| + void** frames, int frames_limit);
|
| StateTag state; // The state of the VM.
|
| Address pc; // Instruction pointer.
|
| union {
|
| @@ -67,7 +64,7 @@ class Sampler {
|
| int interval() const { return interval_; }
|
|
|
| // Performs stack sampling.
|
| - void SampleStack(const RegisterState& regs);
|
| + void SampleStack(const v8::RegisterState& regs);
|
|
|
| // Start and stop sampler.
|
| void Start();
|
|
|