Index: include/v8-profiler.h |
diff --git a/include/v8-profiler.h b/include/v8-profiler.h |
index 88a5fe027d7ab0ea49a28ce935fc87827067bdc4..aac79ede41c296d2caf970e0f70e2e6217eed2fe 100644 |
--- a/include/v8-profiler.h |
+++ b/include/v8-profiler.h |
@@ -60,12 +60,45 @@ struct TickSample { |
frames_count(0), |
has_external_callback(false), |
update_stats(true) {} |
+ |
+ /** |
+ * Initialize a tick sample from the isolate. |
+ * \param isolate The isolate. |
+ * \param state Execution state. |
+ * \param record_c_entry_frame Include or skip the runtime function. |
+ * \param update_stats Whether update the sample to the aggregated stats. |
+ * \param update_state If set to true, V8 will update the register state |
alph
2016/08/09 19:03:41
Please change description to something like:
When
lpy
2016/08/10 05:50:03
Done.
|
+ when running on simulator. Default value is true, |
alph
2016/08/09 19:03:41
missing *
lpy
2016/08/10 05:50:03
Done.
|
+ unless the register state is absolutely correct, |
+ otherwise don't use it. |
+ */ |
void Init(Isolate* isolate, const v8::RegisterState& state, |
- RecordCEntryFrame record_c_entry_frame, bool update_stats); |
- static bool GetStackSample(Isolate* isolate, const v8::RegisterState& state, |
+ RecordCEntryFrame record_c_entry_frame, bool update_stats, |
+ bool update_state = true); |
+ /** |
+ * Get a call stack sample from the isolate. |
+ * \param isolate The isolate. |
+ * \param state Register state. |
+ * \param record_c_entry_frame Include or skip the runtime function. |
+ * \param frames Caller allocated buffer to store stack frames. |
+ * \param frames_limit Maximum number of frames to capture. The buffer must |
+ * be large enough to hold the number of frames. |
+ * \param sample_info The sample info is filled up by the function |
+ * provides number of actual captured stack frames and |
+ * the current VM state. |
+ * \param update_state If set to true, V8 will update the given register state |
+ when running on simulator. Default value is true, |
alph
2016/08/09 19:03:41
Missing *
lpy
2016/08/10 05:50:03
Done.
|
+ unless the register state is absolutely correct, |
+ otherwise don't use it. |
+ * \note GetStackSample is thread and signal safe and should only be called |
+ * when the JS thread is paused or interrupted. |
+ * Otherwise the behavior is undefined. |
+ */ |
+ static bool GetStackSample(Isolate* isolate, v8::RegisterState* state, |
RecordCEntryFrame record_c_entry_frame, |
void** frames, size_t frames_limit, |
- v8::SampleInfo* sample_info); |
+ v8::SampleInfo* sample_info, |
+ bool update_state = true); |
alph
2016/08/09 19:03:41
I'd still mention the word simulator here, as othe
lpy
2016/08/10 05:50:03
Done.
|
StateTag state; // The state of the VM. |
void* pc; // Instruction pointer. |
union { |