| 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/base_isolate.h" | 10 #include "vm/base_isolate.h" |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 static inline Isolate* Current() { | 113 static inline Isolate* Current() { |
| 114 return reinterpret_cast<Isolate*>(Thread::GetThreadLocal(isolate_key)); | 114 return reinterpret_cast<Isolate*>(Thread::GetThreadLocal(isolate_key)); |
| 115 } | 115 } |
| 116 | 116 |
| 117 static void SetCurrent(Isolate* isolate); | 117 static void SetCurrent(Isolate* isolate); |
| 118 | 118 |
| 119 static void InitOnce(); | 119 static void InitOnce(); |
| 120 static Isolate* Init(const char* name_prefix); | 120 static Isolate* Init(const char* name_prefix); |
| 121 void Shutdown(); | 121 void Shutdown(); |
| 122 | 122 |
| 123 Isolate* ShallowCopy(); |
| 124 |
| 123 // Register a newly introduced class. | 125 // Register a newly introduced class. |
| 124 void RegisterClass(const Class& cls); | 126 void RegisterClass(const Class& cls); |
| 125 void RegisterClassAt(intptr_t index, const Class& cls); | 127 void RegisterClassAt(intptr_t index, const Class& cls); |
| 126 void ValidateClassTable(); | 128 void ValidateClassTable(); |
| 127 | 129 |
| 128 // Visit all object pointers. | 130 // Visit all object pointers. |
| 129 void VisitObjectPointers(ObjectPointerVisitor* visitor, | 131 void VisitObjectPointers(ObjectPointerVisitor* visitor, |
| 130 bool visit_prologue_weak_persistent_handles, | 132 bool visit_prologue_weak_persistent_handles, |
| 131 bool validate_frames); | 133 bool validate_frames); |
| 132 | 134 |
| (...skipping 462 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 595 } | 597 } |
| 596 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE) | 598 REUSABLE_HANDLE_LIST(REUSABLE_HANDLE) |
| 597 #undef REUSABLE_HANDLE | 599 #undef REUSABLE_HANDLE |
| 598 | 600 |
| 599 static void VisitIsolates(IsolateVisitor* visitor); | 601 static void VisitIsolates(IsolateVisitor* visitor); |
| 600 | 602 |
| 601 Counters* counters() { return &counters_; } | 603 Counters* counters() { return &counters_; } |
| 602 | 604 |
| 603 private: | 605 private: |
| 604 Isolate(); | 606 Isolate(); |
| 607 explicit Isolate(Isolate* original); |
| 605 | 608 |
| 606 void BuildName(const char* name_prefix); | 609 void BuildName(const char* name_prefix); |
| 607 void PrintInvokedFunctions(); | 610 void PrintInvokedFunctions(); |
| 608 | 611 |
| 609 void ProfileIdle(); | 612 void ProfileIdle(); |
| 610 | 613 |
| 611 void set_user_tag(uword tag) { | 614 void set_user_tag(uword tag) { |
| 612 user_tag_ = tag; | 615 user_tag_ = tag; |
| 613 } | 616 } |
| 614 | 617 |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 838 char* exception_callback_name_; | 841 char* exception_callback_name_; |
| 839 uint8_t* serialized_args_; | 842 uint8_t* serialized_args_; |
| 840 intptr_t serialized_args_len_; | 843 intptr_t serialized_args_len_; |
| 841 uint8_t* serialized_message_; | 844 uint8_t* serialized_message_; |
| 842 intptr_t serialized_message_len_; | 845 intptr_t serialized_message_len_; |
| 843 }; | 846 }; |
| 844 | 847 |
| 845 } // namespace dart | 848 } // namespace dart |
| 846 | 849 |
| 847 #endif // VM_ISOLATE_H_ | 850 #endif // VM_ISOLATE_H_ |
| OLD | NEW |