Index: src/isolate.h |
diff --git a/src/isolate.h b/src/isolate.h |
index 3ab2b6a857a535b6093ba73f8768c6cc354f0f5c..73ec097ac86b61db38fdda960e7f366012db5fba 100644 |
--- a/src/isolate.h |
+++ b/src/isolate.h |
@@ -68,6 +68,7 @@ class Factory; |
class FunctionInfoListener; |
class HandleScopeImplementer; |
class HeapProfiler; |
+class HTracer; |
class InlineRuntimeFunctionsTable; |
class NoAllocationStringAllocator; |
class InnerPointerToCodeCache; |
@@ -371,6 +372,7 @@ typedef List<HeapObject*, PreallocatedStorageAllocationPolicy> DebugObjectCache; |
V(CpuProfiler*, cpu_profiler, NULL) \ |
V(HeapProfiler*, heap_profiler, NULL) \ |
V(bool, observer_delivery_pending, false) \ |
+ V(HTracer*, htracer, NULL) \ |
ISOLATE_DEBUGGER_INIT_LIST(V) |
class Isolate { |
@@ -1099,9 +1101,13 @@ class Isolate { |
return sweeper_thread_; |
} |
+ HTracer* GetHTracer(); |
+ |
private: |
Isolate(); |
+ int id() const { return static_cast<int>(id_); } |
+ |
friend struct GlobalState; |
friend struct InitializeGlobalState; |
@@ -1169,6 +1175,9 @@ class Isolate { |
static Isolate* default_isolate_; |
static ThreadDataTable* thread_data_table_; |
+ // A global counter for all generated Isolates, might overflow. |
+ static Atomic32 isolate_counter_; |
+ |
void Deinit(); |
static void SetIsolateThreadLocals(Isolate* isolate, |
@@ -1213,6 +1222,7 @@ class Isolate { |
// the Error object. |
bool IsErrorObject(Handle<Object> obj); |
+ Atomic32 id_; |
EntryStackItem* entry_stack_; |
int stack_trace_nesting_level_; |
StringStream* incomplete_message_; |