Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(713)

Unified Diff: runtime/vm/isolate.h

Issue 1170503004: Initial Timeline Events (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/isolate.h
diff --git a/runtime/vm/isolate.h b/runtime/vm/isolate.h
index a74bc944ba82f8e8ca29bae50a03f012e99a8d39..7b9b422f6d64a8f9f43bf59cfd38a026173d5008 100644
--- a/runtime/vm/isolate.h
+++ b/runtime/vm/isolate.h
@@ -18,8 +18,9 @@
#include "vm/tags.h"
#include "vm/thread.h"
#include "vm/os_thread.h"
-#include "vm/trace_buffer.h"
+#include "vm/timeline.h"
#include "vm/timer.h"
+#include "vm/trace_buffer.h"
namespace dart {
@@ -526,6 +527,14 @@ class Isolate : public BaseIsolate {
return trace_buffer_;
}
+ void SetTimelineEventBuffer(TimelineEventBuffer* timeline_event_buffer);
+
+ TimelineEventBuffer* timeline_event_buffer() {
siva 2015/06/09 22:37:56 _buffer() const {
Cutch 2015/06/10 18:20:56 Done.
+ return timeline_event_buffer_;
+ }
+
+ void RemoveTimelineEventBuffer();
+
DeoptContext* deopt_context() const { return deopt_context_; }
void set_deopt_context(DeoptContext* value) {
ASSERT(value == NULL || deopt_context_ == NULL);
@@ -625,6 +634,11 @@ class Isolate : public BaseIsolate {
ISOLATE_METRIC_LIST(ISOLATE_METRIC_ACCESSOR);
#undef ISOLATE_METRIC_ACCESSOR
+#define ISOLATE_TIMELINE_STREAM_ACCESSOR(name, enabled_by_default) \
+ TimelineStream* Get##name##Stream() { return &stream_##name##_; }
+ ISOLATE_TIMELINE_STREAM_LIST(ISOLATE_TIMELINE_STREAM_ACCESSOR)
+#undef ISOLATE_TIMELINE_STREAM_ACCESSOR
+
static intptr_t IsolateListLength();
RawGrowableObjectArray* tag_table() const { return tag_table_; }
@@ -761,6 +775,9 @@ class Isolate : public BaseIsolate {
// Trace buffer support.
TraceBuffer* trace_buffer_;
+ // TimelineEvent buffer.
+ TimelineEventBuffer* timeline_event_buffer_;
+
IsolateProfilerData* profiler_data_;
Mutex profiler_data_mutex_;
InterruptableThreadState* thread_state_;
@@ -803,6 +820,11 @@ class Isolate : public BaseIsolate {
ISOLATE_METRIC_LIST(ISOLATE_METRIC_VARIABLE);
#undef ISOLATE_METRIC_VARIABLE
+#define ISOLATE_TIMELINE_STREAM_VARIABLE(name, enabled_by_default) \
+ TimelineStream stream_##name##_;
+ ISOLATE_TIMELINE_STREAM_LIST(ISOLATE_TIMELINE_STREAM_VARIABLE)
+#undef ISOLATE_TIMELINE_STREAM_VARIABLE
+
VMHandles reusable_handles_;
static Dart_IsolateCreateCallback create_callback_;

Powered by Google App Engine
This is Rietveld 408576698