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

Unified Diff: runtime/vm/isolate.h

Issue 25909002: Sampling profiler (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month 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 a01638d2ec23db3c16cbd0f7a8a5a9177018f516..07dd3c762c83168b3e1ab50eda3a48d24aeb2380 100644
--- a/runtime/vm/isolate.h
+++ b/runtime/vm/isolate.h
@@ -34,6 +34,7 @@ class HandleVisitor;
class Heap;
class ICData;
class Instance;
+class IsolateProfilerData;
class LongJump;
class MessageHandler;
class Mutex;
@@ -50,6 +51,7 @@ class RawInteger;
class RawError;
class RawFloat32x4;
class RawInt32x4;
+class SampleBuffer;
class Simulator;
class StackResource;
class StackZone;
@@ -203,6 +205,9 @@ class Isolate : public BaseIsolate {
// The true stack limit for this isolate.
uword saved_stack_limit() const { return saved_stack_limit_; }
+ // Retrieve the stack address bounds.
+ bool GetStackBounds(uintptr_t* lower, uintptr_t* upper);
+
static uword GetSpecifiedStackSize();
static const intptr_t kStackSizeBuffer = (4 * KB * kWordSize);
@@ -383,6 +388,19 @@ class Isolate : public BaseIsolate {
return defer_finalization_count_ == 0;
}
+ Mutex* profiler_data_mutex() const {
+ ASSERT(profiler_data_mutex_ != NULL);
+ return profiler_data_mutex_;
+ }
+
+ void set_profiler_data(IsolateProfilerData* profiler_data) {
+ profiler_data_ = profiler_data;
+ }
+
+ IsolateProfilerData* profiler_data() {
+ return profiler_data_;
+ }
+
private:
Isolate();
@@ -441,6 +459,9 @@ class Isolate : public BaseIsolate {
// Ring buffer of objects assigned an id.
ObjectIdRing* object_id_ring_;
+ IsolateProfilerData* profiler_data_;
+ Mutex* profiler_data_mutex_;
siva 2013/11/11 03:51:54 can the mutex be a value object instead?
Cutch 2013/11/18 20:48:54 Done.
+
// Reusable handles support.
#define REUSABLE_HANDLE_FIELDS(object) \
object* object##_handle_; \

Powered by Google App Engine
This is Rietveld 408576698