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 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 return thread == NULL ? NULL : thread->isolate(); | 114 return thread == NULL ? NULL : thread->isolate(); |
115 } | 115 } |
116 | 116 |
117 // Register a newly introduced class. | 117 // Register a newly introduced class. |
118 void RegisterClass(const Class& cls); | 118 void RegisterClass(const Class& cls); |
119 void RegisterClassAt(intptr_t index, const Class& cls); | 119 void RegisterClassAt(intptr_t index, const Class& cls); |
120 void ValidateClassTable(); | 120 void ValidateClassTable(); |
121 | 121 |
122 // Visit all object pointers. | 122 // Visit all object pointers. |
123 void IterateObjectPointers(ObjectPointerVisitor* visitor, | 123 void IterateObjectPointers(ObjectPointerVisitor* visitor, |
124 bool visit_prologue_weak_persistent_handles, | |
125 bool validate_frames); | 124 bool validate_frames); |
126 | 125 |
127 // Visits weak object pointers. | 126 // Visits weak object pointers. |
128 void VisitWeakPersistentHandles(HandleVisitor* visitor, | 127 void VisitWeakPersistentHandles(HandleVisitor* visitor); |
129 bool visit_prologue_weak_persistent_handles); | |
130 void VisitPrologueWeakPersistentHandles(HandleVisitor* visitor); | |
131 | 128 |
132 StoreBuffer* store_buffer() { return store_buffer_; } | 129 StoreBuffer* store_buffer() { return store_buffer_; } |
133 | 130 |
134 ThreadRegistry* thread_registry() { return thread_registry_; } | 131 ThreadRegistry* thread_registry() { return thread_registry_; } |
135 | 132 |
136 ClassTable* class_table() { return &class_table_; } | 133 ClassTable* class_table() { return &class_table_; } |
137 static intptr_t class_table_offset() { | 134 static intptr_t class_table_offset() { |
138 return OFFSET_OF(Isolate, class_table_); | 135 return OFFSET_OF(Isolate, class_table_); |
139 } | 136 } |
140 | 137 |
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
687 void LowLevelShutdown(); | 684 void LowLevelShutdown(); |
688 void Shutdown(); | 685 void Shutdown(); |
689 | 686 |
690 void BuildName(const char* name_prefix); | 687 void BuildName(const char* name_prefix); |
691 void PrintInvokedFunctions(); | 688 void PrintInvokedFunctions(); |
692 | 689 |
693 void ProfileIdle(); | 690 void ProfileIdle(); |
694 | 691 |
695 // Visit all object pointers. Caller must ensure concurrent sweeper is not | 692 // Visit all object pointers. Caller must ensure concurrent sweeper is not |
696 // running, and the visitor must not allocate. | 693 // running, and the visitor must not allocate. |
697 void VisitObjectPointers(ObjectPointerVisitor* visitor, | 694 void VisitObjectPointers(ObjectPointerVisitor* visitor, bool validate_frames); |
698 bool visit_prologue_weak_persistent_handles, | |
699 bool validate_frames); | |
700 | 695 |
701 void set_user_tag(uword tag) { | 696 void set_user_tag(uword tag) { |
702 user_tag_ = tag; | 697 user_tag_ = tag; |
703 } | 698 } |
704 | 699 |
705 RawGrowableObjectArray* GetAndClearPendingServiceExtensionCalls(); | 700 RawGrowableObjectArray* GetAndClearPendingServiceExtensionCalls(); |
706 RawGrowableObjectArray* pending_service_extension_calls() const { | 701 RawGrowableObjectArray* pending_service_extension_calls() const { |
707 return pending_service_extension_calls_; | 702 return pending_service_extension_calls_; |
708 } | 703 } |
709 void set_pending_service_extension_calls(const GrowableObjectArray& value); | 704 void set_pending_service_extension_calls(const GrowableObjectArray& value); |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
998 uint8_t* serialized_message_; | 993 uint8_t* serialized_message_; |
999 intptr_t serialized_message_len_; | 994 intptr_t serialized_message_len_; |
1000 Isolate::Flags isolate_flags_; | 995 Isolate::Flags isolate_flags_; |
1001 bool paused_; | 996 bool paused_; |
1002 bool errors_are_fatal_; | 997 bool errors_are_fatal_; |
1003 }; | 998 }; |
1004 | 999 |
1005 } // namespace dart | 1000 } // namespace dart |
1006 | 1001 |
1007 #endif // VM_ISOLATE_H_ | 1002 #endif // VM_ISOLATE_H_ |
OLD | NEW |