| 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 |