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 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 | 138 |
139 StoreBuffer* store_buffer() { return store_buffer_; } | 139 StoreBuffer* store_buffer() { return store_buffer_; } |
140 | 140 |
141 ThreadRegistry* thread_registry() { return thread_registry_; } | 141 ThreadRegistry* thread_registry() { return thread_registry_; } |
142 | 142 |
143 ClassTable* class_table() { return &class_table_; } | 143 ClassTable* class_table() { return &class_table_; } |
144 static intptr_t class_table_offset() { | 144 static intptr_t class_table_offset() { |
145 return OFFSET_OF(Isolate, class_table_); | 145 return OFFSET_OF(Isolate, class_table_); |
146 } | 146 } |
147 | 147 |
148 MegamorphicCacheTable* megamorphic_cache_table() { | |
149 return &megamorphic_cache_table_; | |
150 } | |
151 | |
152 Dart_MessageNotifyCallback message_notify_callback() const { | 148 Dart_MessageNotifyCallback message_notify_callback() const { |
153 return message_notify_callback_; | 149 return message_notify_callback_; |
154 } | 150 } |
155 void set_message_notify_callback(Dart_MessageNotifyCallback value) { | 151 void set_message_notify_callback(Dart_MessageNotifyCallback value) { |
156 message_notify_callback_ = value; | 152 message_notify_callback_ = value; |
157 } | 153 } |
158 | 154 |
159 // Limited public access to BaseIsolate::mutator_thread_ for code that | 155 // Limited public access to BaseIsolate::mutator_thread_ for code that |
160 // must treat the mutator as the default or a special case. Prefer code | 156 // must treat the mutator as the default or a special case. Prefer code |
161 // that works uniformly across all threads. | 157 // that works uniformly across all threads. |
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
808 #if defined(DEBUG) | 804 #if defined(DEBUG) |
809 bool IsIsolateOf(Thread* thread); | 805 bool IsIsolateOf(Thread* thread); |
810 #endif // DEBUG | 806 #endif // DEBUG |
811 | 807 |
812 template<class T> T* AllocateReusableHandle(); | 808 template<class T> T* AllocateReusableHandle(); |
813 | 809 |
814 uword vm_tag_; | 810 uword vm_tag_; |
815 StoreBuffer* store_buffer_; | 811 StoreBuffer* store_buffer_; |
816 ThreadRegistry* thread_registry_; | 812 ThreadRegistry* thread_registry_; |
817 ClassTable class_table_; | 813 ClassTable class_table_; |
818 MegamorphicCacheTable megamorphic_cache_table_; | |
819 Dart_MessageNotifyCallback message_notify_callback_; | 814 Dart_MessageNotifyCallback message_notify_callback_; |
820 char* name_; | 815 char* name_; |
821 char* debugger_name_; | 816 char* debugger_name_; |
822 int64_t start_time_; | 817 int64_t start_time_; |
823 Dart_Port main_port_; | 818 Dart_Port main_port_; |
824 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. | 819 Dart_Port origin_id_; // Isolates created by spawnFunc have some origin id. |
825 uint64_t pause_capability_; | 820 uint64_t pause_capability_; |
826 uint64_t terminate_capability_; | 821 uint64_t terminate_capability_; |
827 bool errors_fatal_; | 822 bool errors_fatal_; |
828 Heap* heap_; | 823 Heap* heap_; |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1120 uint8_t* serialized_message_; | 1115 uint8_t* serialized_message_; |
1121 intptr_t serialized_message_len_; | 1116 intptr_t serialized_message_len_; |
1122 Isolate::Flags isolate_flags_; | 1117 Isolate::Flags isolate_flags_; |
1123 bool paused_; | 1118 bool paused_; |
1124 bool errors_are_fatal_; | 1119 bool errors_are_fatal_; |
1125 }; | 1120 }; |
1126 | 1121 |
1127 } // namespace dart | 1122 } // namespace dart |
1128 | 1123 |
1129 #endif // VM_ISOLATE_H_ | 1124 #endif // VM_ISOLATE_H_ |
OLD | NEW |