OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_ISOLATE_H_ | 5 #ifndef VM_ISOLATE_H_ |
6 #define VM_ISOLATE_H_ | 6 #define VM_ISOLATE_H_ |
7 | 7 |
8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
9 #include "platform/assert.h" | 9 #include "platform/assert.h" |
10 #include "vm/atomic.h" | 10 #include "vm/atomic.h" |
11 #include "vm/base_isolate.h" | 11 #include "vm/base_isolate.h" |
12 #include "vm/class_table.h" | 12 #include "vm/class_table.h" |
13 #include "vm/handles.h" | 13 #include "vm/handles.h" |
14 #include "vm/megamorphic_cache_table.h" | 14 #include "vm/megamorphic_cache_table.h" |
15 #include "vm/metrics.h" | 15 #include "vm/metrics.h" |
16 #include "vm/random.h" | 16 #include "vm/random.h" |
17 #include "vm/tags.h" | 17 #include "vm/tags.h" |
18 #include "vm/thread.h" | 18 #include "vm/thread.h" |
19 #include "vm/os_thread.h" | 19 #include "vm/os_thread.h" |
20 #include "vm/timeline.h" | 20 #include "vm/timeline.h" |
21 #include "vm/timer.h" | 21 #include "vm/timer.h" |
22 #include "vm/trace_buffer.h" | 22 #include "vm/token_position.h" |
23 | 23 |
24 namespace dart { | 24 namespace dart { |
25 | 25 |
26 // Forward declarations. | 26 // Forward declarations. |
27 class ApiState; | 27 class ApiState; |
28 class BackgroundCompiler; | 28 class BackgroundCompiler; |
29 class Capability; | 29 class Capability; |
30 class CodeIndexTable; | 30 class CodeIndexTable; |
31 class CompilerStats; | 31 class CompilerStats; |
32 class Debugger; | 32 class Debugger; |
(...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
486 return entropy_source_callback_; | 486 return entropy_source_callback_; |
487 } | 487 } |
488 | 488 |
489 void set_object_id_ring(ObjectIdRing* ring) { | 489 void set_object_id_ring(ObjectIdRing* ring) { |
490 object_id_ring_ = ring; | 490 object_id_ring_ = ring; |
491 } | 491 } |
492 ObjectIdRing* object_id_ring() { | 492 ObjectIdRing* object_id_ring() { |
493 return object_id_ring_; | 493 return object_id_ring_; |
494 } | 494 } |
495 | 495 |
496 void set_trace_buffer(TraceBuffer* buffer) { | |
497 trace_buffer_ = buffer; | |
498 } | |
499 TraceBuffer* trace_buffer() { | |
500 return trace_buffer_; | |
501 } | |
502 | |
503 DeoptContext* deopt_context() const { return deopt_context_; } | 496 DeoptContext* deopt_context() const { return deopt_context_; } |
504 void set_deopt_context(DeoptContext* value) { | 497 void set_deopt_context(DeoptContext* value) { |
505 ASSERT(value == NULL || deopt_context_ == NULL); | 498 ASSERT(value == NULL || deopt_context_ == NULL); |
506 deopt_context_ = value; | 499 deopt_context_ = value; |
507 } | 500 } |
508 | 501 |
509 BackgroundCompiler* background_compiler() const { | 502 BackgroundCompiler* background_compiler() const { |
510 return background_compiler_; | 503 return background_compiler_; |
511 } | 504 } |
512 void set_background_compiler(BackgroundCompiler* value) { | 505 void set_background_compiler(BackgroundCompiler* value) { |
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
800 char* stacktrace_; | 793 char* stacktrace_; |
801 intptr_t stack_frame_index_; | 794 intptr_t stack_frame_index_; |
802 | 795 |
803 // Timestamps of last operation via service. | 796 // Timestamps of last operation via service. |
804 int64_t last_allocationprofile_accumulator_reset_timestamp_; | 797 int64_t last_allocationprofile_accumulator_reset_timestamp_; |
805 int64_t last_allocationprofile_gc_timestamp_; | 798 int64_t last_allocationprofile_gc_timestamp_; |
806 | 799 |
807 // Ring buffer of objects assigned an id. | 800 // Ring buffer of objects assigned an id. |
808 ObjectIdRing* object_id_ring_; | 801 ObjectIdRing* object_id_ring_; |
809 | 802 |
810 // Trace buffer support. | |
811 TraceBuffer* trace_buffer_; | |
812 | |
813 VMTagCounters vm_tag_counters_; | 803 VMTagCounters vm_tag_counters_; |
814 RawGrowableObjectArray* tag_table_; | 804 RawGrowableObjectArray* tag_table_; |
815 | 805 |
816 RawGrowableObjectArray* deoptimized_code_array_; | 806 RawGrowableObjectArray* deoptimized_code_array_; |
817 | 807 |
818 // Background compilation. | 808 // Background compilation. |
819 BackgroundCompiler* background_compiler_; | 809 BackgroundCompiler* background_compiler_; |
820 | 810 |
821 // We use 6 list entries for each pending service extension calls. | 811 // We use 6 list entries for each pending service extension calls. |
822 enum { | 812 enum { |
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1037 intptr_t* spawn_count_; | 1027 intptr_t* spawn_count_; |
1038 | 1028 |
1039 Isolate::Flags isolate_flags_; | 1029 Isolate::Flags isolate_flags_; |
1040 bool paused_; | 1030 bool paused_; |
1041 bool errors_are_fatal_; | 1031 bool errors_are_fatal_; |
1042 }; | 1032 }; |
1043 | 1033 |
1044 } // namespace dart | 1034 } // namespace dart |
1045 | 1035 |
1046 #endif // VM_ISOLATE_H_ | 1036 #endif // VM_ISOLATE_H_ |
OLD | NEW |