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" |
(...skipping 14 matching lines...) Expand all Loading... |
25 | 25 |
26 // Forward declarations. | 26 // Forward declarations. |
27 class AbstractType; | 27 class AbstractType; |
28 class ApiState; | 28 class ApiState; |
29 class Array; | 29 class Array; |
30 class Capability; | 30 class Capability; |
31 class CHA; | 31 class CHA; |
32 class Class; | 32 class Class; |
33 class Code; | 33 class Code; |
34 class CodeIndexTable; | 34 class CodeIndexTable; |
| 35 class CompileOptimizedTask; |
35 class CompilerStats; | 36 class CompilerStats; |
36 class Debugger; | 37 class Debugger; |
37 class DeoptContext; | 38 class DeoptContext; |
38 class Error; | 39 class Error; |
39 class ExceptionHandlers; | 40 class ExceptionHandlers; |
40 class Field; | 41 class Field; |
41 class Function; | 42 class Function; |
42 class GrowableObjectArray; | 43 class GrowableObjectArray; |
43 class HandleScope; | 44 class HandleScope; |
44 class HandleVisitor; | 45 class HandleVisitor; |
(...skipping 553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
598 TraceBuffer* trace_buffer() { | 599 TraceBuffer* trace_buffer() { |
599 return trace_buffer_; | 600 return trace_buffer_; |
600 } | 601 } |
601 | 602 |
602 DeoptContext* deopt_context() const { return deopt_context_; } | 603 DeoptContext* deopt_context() const { return deopt_context_; } |
603 void set_deopt_context(DeoptContext* value) { | 604 void set_deopt_context(DeoptContext* value) { |
604 ASSERT(value == NULL || deopt_context_ == NULL); | 605 ASSERT(value == NULL || deopt_context_ == NULL); |
605 deopt_context_ = value; | 606 deopt_context_ = value; |
606 } | 607 } |
607 | 608 |
| 609 CompileOptimizedTask* compile_optimized_task() const { |
| 610 return compile_optimized_task_; |
| 611 } |
| 612 void set_compile_optimized_task(CompileOptimizedTask* value) { |
| 613 compile_optimized_task_ = value; |
| 614 } |
| 615 |
608 void UpdateLastAllocationProfileAccumulatorResetTimestamp() { | 616 void UpdateLastAllocationProfileAccumulatorResetTimestamp() { |
609 last_allocationprofile_accumulator_reset_timestamp_ = | 617 last_allocationprofile_accumulator_reset_timestamp_ = |
610 OS::GetCurrentTimeMillis(); | 618 OS::GetCurrentTimeMillis(); |
611 } | 619 } |
612 | 620 |
613 int64_t last_allocationprofile_accumulator_reset_timestamp() const { | 621 int64_t last_allocationprofile_accumulator_reset_timestamp() const { |
614 return last_allocationprofile_accumulator_reset_timestamp_; | 622 return last_allocationprofile_accumulator_reset_timestamp_; |
615 } | 623 } |
616 | 624 |
617 void UpdateLastAllocationProfileGCTimestamp() { | 625 void UpdateLastAllocationProfileGCTimestamp() { |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
694 void set_current_tag(const UserTag& tag); | 702 void set_current_tag(const UserTag& tag); |
695 | 703 |
696 RawUserTag* default_tag() const { return default_tag_; } | 704 RawUserTag* default_tag() const { return default_tag_; } |
697 void set_default_tag(const UserTag& tag); | 705 void set_default_tag(const UserTag& tag); |
698 | 706 |
699 RawGrowableObjectArray* collected_closures() const { | 707 RawGrowableObjectArray* collected_closures() const { |
700 return collected_closures_; | 708 return collected_closures_; |
701 } | 709 } |
702 void set_collected_closures(const GrowableObjectArray& value); | 710 void set_collected_closures(const GrowableObjectArray& value); |
703 | 711 |
| 712 RawGrowableObjectArray* background_compilation_queue() const { |
| 713 return background_compilation_queue_; |
| 714 } |
| 715 void set_background_compilation_queue(const GrowableObjectArray& value); |
| 716 |
704 Metric* metrics_list_head() { | 717 Metric* metrics_list_head() { |
705 return metrics_list_head_; | 718 return metrics_list_head_; |
706 } | 719 } |
707 | 720 |
708 void set_metrics_list_head(Metric* metric) { | 721 void set_metrics_list_head(Metric* metric) { |
709 metrics_list_head_ = metric; | 722 metrics_list_head_ = metric; |
710 } | 723 } |
711 | 724 |
712 RawGrowableObjectArray* deoptimized_code_array() const { | 725 RawGrowableObjectArray* deoptimized_code_array() const { |
713 return deoptimized_code_array_; | 726 return deoptimized_code_array_; |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
868 uword stack_base_; | 881 uword stack_base_; |
869 uword stack_overflow_flags_; | 882 uword stack_overflow_flags_; |
870 int32_t stack_overflow_count_; | 883 int32_t stack_overflow_count_; |
871 MessageHandler* message_handler_; | 884 MessageHandler* message_handler_; |
872 IsolateSpawnState* spawn_state_; | 885 IsolateSpawnState* spawn_state_; |
873 bool is_runnable_; | 886 bool is_runnable_; |
874 Dart_GcPrologueCallback gc_prologue_callback_; | 887 Dart_GcPrologueCallback gc_prologue_callback_; |
875 Dart_GcEpilogueCallback gc_epilogue_callback_; | 888 Dart_GcEpilogueCallback gc_epilogue_callback_; |
876 intptr_t defer_finalization_count_; | 889 intptr_t defer_finalization_count_; |
877 DeoptContext* deopt_context_; | 890 DeoptContext* deopt_context_; |
| 891 CompileOptimizedTask* compile_optimized_task_; |
878 | 892 |
879 CompilerStats* compiler_stats_; | 893 CompilerStats* compiler_stats_; |
880 | 894 |
881 bool is_service_isolate_; | 895 bool is_service_isolate_; |
882 | 896 |
883 // Status support. | 897 // Status support. |
884 char* stacktrace_; | 898 char* stacktrace_; |
885 intptr_t stack_frame_index_; | 899 intptr_t stack_frame_index_; |
886 | 900 |
887 // Timestamps of last operation via service. | 901 // Timestamps of last operation via service. |
(...skipping 10 matching lines...) Expand all Loading... |
898 Mutex profiler_data_mutex_; | 912 Mutex profiler_data_mutex_; |
899 | 913 |
900 VMTagCounters vm_tag_counters_; | 914 VMTagCounters vm_tag_counters_; |
901 uword user_tag_; | 915 uword user_tag_; |
902 RawGrowableObjectArray* tag_table_; | 916 RawGrowableObjectArray* tag_table_; |
903 RawUserTag* current_tag_; | 917 RawUserTag* current_tag_; |
904 RawUserTag* default_tag_; | 918 RawUserTag* default_tag_; |
905 | 919 |
906 RawGrowableObjectArray* collected_closures_; | 920 RawGrowableObjectArray* collected_closures_; |
907 RawGrowableObjectArray* deoptimized_code_array_; | 921 RawGrowableObjectArray* deoptimized_code_array_; |
| 922 RawGrowableObjectArray* background_compilation_queue_; |
908 | 923 |
909 // We use 6 list entries for each pending service extension calls. | 924 // We use 6 list entries for each pending service extension calls. |
910 enum { | 925 enum { |
911 kPendingHandlerIndex = 0, | 926 kPendingHandlerIndex = 0, |
912 kPendingMethodNameIndex, | 927 kPendingMethodNameIndex, |
913 kPendingKeysIndex, | 928 kPendingKeysIndex, |
914 kPendingValuesIndex, | 929 kPendingValuesIndex, |
915 kPendingReplyPortIndex, | 930 kPendingReplyPortIndex, |
916 kPendingIdIndex, | 931 kPendingIdIndex, |
917 kPendingEntrySize | 932 kPendingEntrySize |
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1140 uint8_t* serialized_message_; | 1155 uint8_t* serialized_message_; |
1141 intptr_t serialized_message_len_; | 1156 intptr_t serialized_message_len_; |
1142 Isolate::Flags isolate_flags_; | 1157 Isolate::Flags isolate_flags_; |
1143 bool paused_; | 1158 bool paused_; |
1144 bool errors_are_fatal_; | 1159 bool errors_are_fatal_; |
1145 }; | 1160 }; |
1146 | 1161 |
1147 } // namespace dart | 1162 } // namespace dart |
1148 | 1163 |
1149 #endif // VM_ISOLATE_H_ | 1164 #endif // VM_ISOLATE_H_ |
OLD | NEW |