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 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 217 } | 217 } |
| 218 uint64_t terminate_capability() const { return terminate_capability_; } | 218 uint64_t terminate_capability() const { return terminate_capability_; } |
| 219 | 219 |
| 220 void SendInternalLibMessage(LibMsgId msg_id, uint64_t capability); | 220 void SendInternalLibMessage(LibMsgId msg_id, uint64_t capability); |
| 221 | 221 |
| 222 Heap* heap() const { return heap_; } | 222 Heap* heap() const { return heap_; } |
| 223 void set_heap(Heap* value) { heap_ = value; } | 223 void set_heap(Heap* value) { heap_ = value; } |
| 224 | 224 |
| 225 ObjectStore* object_store() const { return object_store_; } | 225 ObjectStore* object_store() const { return object_store_; } |
| 226 void set_object_store(ObjectStore* value) { object_store_ = value; } | 226 void set_object_store(ObjectStore* value) { object_store_ = value; } |
| 227 static intptr_t object_store_offset() { | |
| 228 return OFFSET_OF(Isolate, object_store_); | |
| 229 } | |
| 227 | 230 |
| 228 ApiState* api_state() const { return api_state_; } | 231 ApiState* api_state() const { return api_state_; } |
| 229 void set_api_state(ApiState* value) { api_state_ = value; } | 232 void set_api_state(ApiState* value) { api_state_ = value; } |
| 230 | 233 |
| 231 void set_init_callback_data(void* value) { | 234 void set_init_callback_data(void* value) { |
| 232 init_callback_data_ = value; | 235 init_callback_data_ = value; |
| 233 } | 236 } |
| 234 void* init_callback_data() const { | 237 void* init_callback_data() const { |
| 235 return init_callback_data_; | 238 return init_callback_data_; |
| 236 } | 239 } |
| (...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 726 return mutator_thread()->zone(); | 729 return mutator_thread()->zone(); |
| 727 } | 730 } |
| 728 | 731 |
| 729 // Accessed from generated code: | 732 // Accessed from generated code: |
| 730 StoreBuffer* store_buffer_; | 733 StoreBuffer* store_buffer_; |
| 731 Heap* heap_; | 734 Heap* heap_; |
| 732 uword user_tag_; | 735 uword user_tag_; |
| 733 RawUserTag* current_tag_; | 736 RawUserTag* current_tag_; |
| 734 RawUserTag* default_tag_; | 737 RawUserTag* default_tag_; |
| 735 RawCode* ic_miss_code_; | 738 RawCode* ic_miss_code_; |
| 739 ObjectStore* object_store_; | |
| 740 | |
| 741 // Note: ClassTable has different size between PRODUCT and non-product builds. | |
|
rmacnak
2016/10/31 20:23:30
We don't care if product/release/debug have differ
| |
| 742 // This means precompiled code cannot reference anything below ClassTable | |
| 743 // from the precompiled code because offsets will be different. | |
| 736 ClassTable class_table_; | 744 ClassTable class_table_; |
| 737 bool single_step_; | 745 bool single_step_; |
| 738 bool skip_step_; // skip the next single step. | 746 bool skip_step_; // skip the next single step. |
| 739 | 747 |
| 740 ThreadRegistry* thread_registry_; | 748 ThreadRegistry* thread_registry_; |
| 741 SafepointHandler* safepoint_handler_; | 749 SafepointHandler* safepoint_handler_; |
| 742 Dart_MessageNotifyCallback message_notify_callback_; | 750 Dart_MessageNotifyCallback message_notify_callback_; |
| 743 char* name_; | 751 char* name_; |
| 744 char* debugger_name_; | 752 char* debugger_name_; |
| 745 int64_t start_time_; | 753 int64_t start_time_; |
| 746 Dart_Port main_port_; | 754 Dart_Port main_port_; |
| 747 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. | 755 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. |
| 748 uint64_t pause_capability_; | 756 uint64_t pause_capability_; |
| 749 uint64_t terminate_capability_; | 757 uint64_t terminate_capability_; |
| 750 bool errors_fatal_; | 758 bool errors_fatal_; |
| 751 ObjectStore* object_store_; | |
| 752 uword top_exit_frame_info_; | 759 uword top_exit_frame_info_; |
| 753 void* init_callback_data_; | 760 void* init_callback_data_; |
| 754 Dart_EnvironmentCallback environment_callback_; | 761 Dart_EnvironmentCallback environment_callback_; |
| 755 Dart_LibraryTagHandler library_tag_handler_; | 762 Dart_LibraryTagHandler library_tag_handler_; |
| 756 ApiState* api_state_; | 763 ApiState* api_state_; |
| 757 Debugger* debugger_; | 764 Debugger* debugger_; |
| 758 bool resume_request_; | 765 bool resume_request_; |
| 759 int64_t last_resume_timestamp_; | 766 int64_t last_resume_timestamp_; |
| 760 bool has_compiled_code_; // Can check that no compilation occured. | 767 bool has_compiled_code_; // Can check that no compilation occured. |
| 761 Random random_; | 768 Random random_; |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1023 intptr_t* spawn_count_; | 1030 intptr_t* spawn_count_; |
| 1024 | 1031 |
| 1025 Dart_IsolateFlags isolate_flags_; | 1032 Dart_IsolateFlags isolate_flags_; |
| 1026 bool paused_; | 1033 bool paused_; |
| 1027 bool errors_are_fatal_; | 1034 bool errors_are_fatal_; |
| 1028 }; | 1035 }; |
| 1029 | 1036 |
| 1030 } // namespace dart | 1037 } // namespace dart |
| 1031 | 1038 |
| 1032 #endif // RUNTIME_VM_ISOLATE_H_ | 1039 #endif // RUNTIME_VM_ISOLATE_H_ |
| OLD | NEW |