Chromium Code Reviews| 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 RUNTIME_VM_ISOLATE_H_ | 5 #ifndef RUNTIME_VM_ISOLATE_H_ |
| 6 #define RUNTIME_VM_ISOLATE_H_ | 6 #define RUNTIME_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 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 220 // is unscheduled by the isolate (or never scheduled). | 220 // is unscheduled by the isolate (or never scheduled). |
| 221 bool IsMutatorThreadScheduled() { | 221 bool IsMutatorThreadScheduled() { |
| 222 return mutator_thread_ != NULL && mutator_thread_->heap() != NULL; | 222 return mutator_thread_ != NULL && mutator_thread_->heap() != NULL; |
| 223 } | 223 } |
| 224 | 224 |
| 225 const char* name() const { return name_; } | 225 const char* name() const { return name_; } |
| 226 | 226 |
| 227 #if !defined(PRODUCT) | 227 #if !defined(PRODUCT) |
| 228 const char* debugger_name() const { return debugger_name_; } | 228 const char* debugger_name() const { return debugger_name_; } |
| 229 void set_debugger_name(const char* name); | 229 void set_debugger_name(const char* name); |
| 230 #endif // !defined(PRODUCT) | |
| 231 | |
| 230 int64_t UptimeMicros() const; | 232 int64_t UptimeMicros() const; |
| 231 #endif // !defined(PRODUCT) | |
| 232 | 233 |
| 233 Dart_Port main_port() const { return main_port_; } | 234 Dart_Port main_port() const { return main_port_; } |
| 234 void set_main_port(Dart_Port port) { | 235 void set_main_port(Dart_Port port) { |
| 235 ASSERT(main_port_ == 0); // Only set main port once. | 236 ASSERT(main_port_ == 0); // Only set main port once. |
| 236 main_port_ = port; | 237 main_port_ = port; |
| 237 } | 238 } |
| 238 Dart_Port origin_id() const { return origin_id_; } | 239 Dart_Port origin_id() const { return origin_id_; } |
| 239 void set_origin_id(Dart_Port id) { | 240 void set_origin_id(Dart_Port id) { |
| 240 ASSERT((id == main_port_ && origin_id_ == 0) || (origin_id_ == main_port_)); | 241 ASSERT((id == main_port_ && origin_id_ == 0) || (origin_id_ == main_port_)); |
| 241 origin_id_ = id; | 242 origin_id_ = id; |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 773 ClassTable class_table_; | 774 ClassTable class_table_; |
| 774 bool single_step_; | 775 bool single_step_; |
| 775 | 776 |
| 776 // Try to keep boolean fields together. | 777 // Try to keep boolean fields together. |
| 777 bool errors_fatal_; | 778 bool errors_fatal_; |
| 778 bool is_runnable_; | 779 bool is_runnable_; |
| 779 bool is_service_isolate_; | 780 bool is_service_isolate_; |
| 780 bool compilation_allowed_; | 781 bool compilation_allowed_; |
| 781 bool all_classes_finalized_; | 782 bool all_classes_finalized_; |
| 782 bool remapping_cids_; | 783 bool remapping_cids_; |
| 784 int64_t start_time_micros_; | |
|
zra
2017/08/04 20:08:28
In non-product builds, this will break up the bool
alexmarkov
2017/08/04 20:28:06
Done.
| |
| 783 | 785 |
| 784 // Fields that aren't needed in a product build go here with boolean flags at | 786 // Fields that aren't needed in a product build go here with boolean flags at |
| 785 // the top. | 787 // the top. |
| 786 #if !defined(PRODUCT) | 788 #if !defined(PRODUCT) |
| 787 bool resume_request_; | 789 bool resume_request_; |
| 788 bool has_attempted_reload_; // Has a reload ever been attempted? | 790 bool has_attempted_reload_; // Has a reload ever been attempted? |
| 789 // Should we pause in the debug message loop after this request? | 791 // Should we pause in the debug message loop after this request? |
| 790 bool should_pause_post_service_request_; | 792 bool should_pause_post_service_request_; |
| 791 | 793 |
| 792 char* debugger_name_; | 794 char* debugger_name_; |
| 793 int64_t start_time_micros_; | |
| 794 Debugger* debugger_; | 795 Debugger* debugger_; |
| 795 int64_t last_resume_timestamp_; | 796 int64_t last_resume_timestamp_; |
| 796 | 797 |
| 797 // Isolate-specific flags. | 798 // Isolate-specific flags. |
| 798 #define DECLARE_FIELD(name, isolate_flag_name, flag_name) bool name##_; | 799 #define DECLARE_FIELD(name, isolate_flag_name, flag_name) bool name##_; |
| 799 ISOLATE_FLAG_LIST(DECLARE_FIELD) | 800 ISOLATE_FLAG_LIST(DECLARE_FIELD) |
| 800 #undef DECLARE_FIELD | 801 #undef DECLARE_FIELD |
| 801 | 802 |
| 802 // Timestamps of last operation via service. | 803 // Timestamps of last operation via service. |
| 803 int64_t last_allocationprofile_accumulator_reset_timestamp_; | 804 int64_t last_allocationprofile_accumulator_reset_timestamp_; |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 837 | 838 |
| 838 intptr_t no_reload_scope_depth_; // we can only reload when this is 0. | 839 intptr_t no_reload_scope_depth_; // we can only reload when this is 0. |
| 839 // Per-isolate copy of FLAG_reload_every. | 840 // Per-isolate copy of FLAG_reload_every. |
| 840 intptr_t reload_every_n_stack_overflow_checks_; | 841 intptr_t reload_every_n_stack_overflow_checks_; |
| 841 IsolateReloadContext* reload_context_; | 842 IsolateReloadContext* reload_context_; |
| 842 int64_t last_reload_timestamp_; | 843 int64_t last_reload_timestamp_; |
| 843 // Ring buffer of objects assigned an id. | 844 // Ring buffer of objects assigned an id. |
| 844 ObjectIdRing* object_id_ring_; | 845 ObjectIdRing* object_id_ring_; |
| 845 #endif // !defined(PRODUCT) | 846 #endif // !defined(PRODUCT) |
| 846 | 847 |
| 847 // All other fields go here. | 848 // All other fields go here. |
|
zra
2017/08/04 20:08:28
Somewhere below here.
alexmarkov
2017/08/04 20:28:06
Done.
| |
| 848 ThreadRegistry* thread_registry_; | 849 ThreadRegistry* thread_registry_; |
| 849 SafepointHandler* safepoint_handler_; | 850 SafepointHandler* safepoint_handler_; |
| 850 Dart_MessageNotifyCallback message_notify_callback_; | 851 Dart_MessageNotifyCallback message_notify_callback_; |
| 851 char* name_; | 852 char* name_; |
| 852 Dart_Port main_port_; | 853 Dart_Port main_port_; |
| 853 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. | 854 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. |
| 854 uint64_t pause_capability_; | 855 uint64_t pause_capability_; |
| 855 uint64_t terminate_capability_; | 856 uint64_t terminate_capability_; |
| 856 void* init_callback_data_; | 857 void* init_callback_data_; |
| 857 Dart_EnvironmentCallback environment_callback_; | 858 Dart_EnvironmentCallback environment_callback_; |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1060 intptr_t* spawn_count_; | 1061 intptr_t* spawn_count_; |
| 1061 | 1062 |
| 1062 Dart_IsolateFlags isolate_flags_; | 1063 Dart_IsolateFlags isolate_flags_; |
| 1063 bool paused_; | 1064 bool paused_; |
| 1064 bool errors_are_fatal_; | 1065 bool errors_are_fatal_; |
| 1065 }; | 1066 }; |
| 1066 | 1067 |
| 1067 } // namespace dart | 1068 } // namespace dart |
| 1068 | 1069 |
| 1069 #endif // RUNTIME_VM_ISOLATE_H_ | 1070 #endif // RUNTIME_VM_ISOLATE_H_ |
| OLD | NEW |