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

Side by Side Diff: runtime/vm/isolate.h

Issue 1386503002: Initial design for background compilation (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: More cleanups Created 5 years, 2 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 unified diff | Download patch
OLDNEW
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
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 551 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 TraceBuffer* trace_buffer() { 597 TraceBuffer* trace_buffer() {
597 return trace_buffer_; 598 return trace_buffer_;
598 } 599 }
599 600
600 DeoptContext* deopt_context() const { return deopt_context_; } 601 DeoptContext* deopt_context() const { return deopt_context_; }
601 void set_deopt_context(DeoptContext* value) { 602 void set_deopt_context(DeoptContext* value) {
602 ASSERT(value == NULL || deopt_context_ == NULL); 603 ASSERT(value == NULL || deopt_context_ == NULL);
603 deopt_context_ = value; 604 deopt_context_ = value;
604 } 605 }
605 606
607 CompileOptimizedTask* compile_optimized_task() const {
608 return compile_optimized_task_;
609 }
610 void set_compile_optimized_task(CompileOptimizedTask* value) {
611 compile_optimized_task_ = value;
612 }
613
606 void UpdateLastAllocationProfileAccumulatorResetTimestamp() { 614 void UpdateLastAllocationProfileAccumulatorResetTimestamp() {
607 last_allocationprofile_accumulator_reset_timestamp_ = 615 last_allocationprofile_accumulator_reset_timestamp_ =
608 OS::GetCurrentTimeMillis(); 616 OS::GetCurrentTimeMillis();
609 } 617 }
610 618
611 int64_t last_allocationprofile_accumulator_reset_timestamp() const { 619 int64_t last_allocationprofile_accumulator_reset_timestamp() const {
612 return last_allocationprofile_accumulator_reset_timestamp_; 620 return last_allocationprofile_accumulator_reset_timestamp_;
613 } 621 }
614 622
615 void UpdateLastAllocationProfileGCTimestamp() { 623 void UpdateLastAllocationProfileGCTimestamp() {
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
692 void set_current_tag(const UserTag& tag); 700 void set_current_tag(const UserTag& tag);
693 701
694 RawUserTag* default_tag() const { return default_tag_; } 702 RawUserTag* default_tag() const { return default_tag_; }
695 void set_default_tag(const UserTag& tag); 703 void set_default_tag(const UserTag& tag);
696 704
697 RawGrowableObjectArray* collected_closures() const { 705 RawGrowableObjectArray* collected_closures() const {
698 return collected_closures_; 706 return collected_closures_;
699 } 707 }
700 void set_collected_closures(const GrowableObjectArray& value); 708 void set_collected_closures(const GrowableObjectArray& value);
701 709
710 RawGrowableObjectArray* background_compilation_queue() const {
711 return background_compilation_queue_;
712 }
713 void set_background_compilation_queue(const GrowableObjectArray& value);
714
702 Metric* metrics_list_head() { 715 Metric* metrics_list_head() {
703 return metrics_list_head_; 716 return metrics_list_head_;
704 } 717 }
705 718
706 void set_metrics_list_head(Metric* metric) { 719 void set_metrics_list_head(Metric* metric) {
707 metrics_list_head_ = metric; 720 metrics_list_head_ = metric;
708 } 721 }
709 722
710 RawGrowableObjectArray* deoptimized_code_array() const { 723 RawGrowableObjectArray* deoptimized_code_array() const {
711 return deoptimized_code_array_; 724 return deoptimized_code_array_;
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
865 uword stack_base_; 878 uword stack_base_;
866 uword stack_overflow_flags_; 879 uword stack_overflow_flags_;
867 int32_t stack_overflow_count_; 880 int32_t stack_overflow_count_;
868 MessageHandler* message_handler_; 881 MessageHandler* message_handler_;
869 IsolateSpawnState* spawn_state_; 882 IsolateSpawnState* spawn_state_;
870 bool is_runnable_; 883 bool is_runnable_;
871 Dart_GcPrologueCallback gc_prologue_callback_; 884 Dart_GcPrologueCallback gc_prologue_callback_;
872 Dart_GcEpilogueCallback gc_epilogue_callback_; 885 Dart_GcEpilogueCallback gc_epilogue_callback_;
873 intptr_t defer_finalization_count_; 886 intptr_t defer_finalization_count_;
874 DeoptContext* deopt_context_; 887 DeoptContext* deopt_context_;
888 CompileOptimizedTask* compile_optimized_task_;
875 889
876 CompilerStats* compiler_stats_; 890 CompilerStats* compiler_stats_;
877 891
878 bool is_service_isolate_; 892 bool is_service_isolate_;
879 893
880 // Status support. 894 // Status support.
881 char* stacktrace_; 895 char* stacktrace_;
882 intptr_t stack_frame_index_; 896 intptr_t stack_frame_index_;
883 897
884 // Timestamps of last operation via service. 898 // Timestamps of last operation via service.
(...skipping 10 matching lines...) Expand all
895 Mutex profiler_data_mutex_; 909 Mutex profiler_data_mutex_;
896 910
897 VMTagCounters vm_tag_counters_; 911 VMTagCounters vm_tag_counters_;
898 uword user_tag_; 912 uword user_tag_;
899 RawGrowableObjectArray* tag_table_; 913 RawGrowableObjectArray* tag_table_;
900 RawUserTag* current_tag_; 914 RawUserTag* current_tag_;
901 RawUserTag* default_tag_; 915 RawUserTag* default_tag_;
902 916
903 RawGrowableObjectArray* collected_closures_; 917 RawGrowableObjectArray* collected_closures_;
904 RawGrowableObjectArray* deoptimized_code_array_; 918 RawGrowableObjectArray* deoptimized_code_array_;
919 RawGrowableObjectArray* background_compilation_queue_;
905 920
906 // We use 6 list entries for each pending service extension calls. 921 // We use 6 list entries for each pending service extension calls.
907 enum { 922 enum {
908 kPendingHandlerIndex = 0, 923 kPendingHandlerIndex = 0,
909 kPendingMethodNameIndex, 924 kPendingMethodNameIndex,
910 kPendingKeysIndex, 925 kPendingKeysIndex,
911 kPendingValuesIndex, 926 kPendingValuesIndex,
912 kPendingReplyPortIndex, 927 kPendingReplyPortIndex,
913 kPendingIdIndex, 928 kPendingIdIndex,
914 kPendingEntrySize 929 kPendingEntrySize
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
1137 uint8_t* serialized_message_; 1152 uint8_t* serialized_message_;
1138 intptr_t serialized_message_len_; 1153 intptr_t serialized_message_len_;
1139 Isolate::Flags isolate_flags_; 1154 Isolate::Flags isolate_flags_;
1140 bool paused_; 1155 bool paused_;
1141 bool errors_are_fatal_; 1156 bool errors_are_fatal_;
1142 }; 1157 };
1143 1158
1144 } // namespace dart 1159 } // namespace dart
1145 1160
1146 #endif // VM_ISOLATE_H_ 1161 #endif // VM_ISOLATE_H_
OLDNEW
« runtime/vm/compiler.h ('K') | « runtime/vm/gc_marker.cc ('k') | runtime/vm/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698