| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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_THREAD_H_ | 5 #ifndef VM_THREAD_H_ |
| 6 #define VM_THREAD_H_ | 6 #define VM_THREAD_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 620 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 631 | 631 |
| 632 void InitVMConstants(); | 632 void InitVMConstants(); |
| 633 | 633 |
| 634 private: | 634 private: |
| 635 template<class T> T* AllocateReusableHandle(); | 635 template<class T> T* AllocateReusableHandle(); |
| 636 | 636 |
| 637 // Accessed from generated code: | 637 // Accessed from generated code: |
| 638 uword stack_limit_; | 638 uword stack_limit_; |
| 639 uword stack_overflow_flags_; | 639 uword stack_overflow_flags_; |
| 640 Isolate* isolate_; | 640 Isolate* isolate_; |
| 641 TimelineStream* dart_stream_; | |
| 642 Heap* heap_; | 641 Heap* heap_; |
| 643 uword top_exit_frame_info_; | 642 uword top_exit_frame_info_; |
| 644 StoreBufferBlock* store_buffer_block_; | 643 StoreBufferBlock* store_buffer_block_; |
| 645 uword vm_tag_; | 644 uword vm_tag_; |
| 646 TaskKind task_kind_; | 645 TaskKind task_kind_; |
| 647 // State that is cached in the TLS for fast access in generated code. | 646 // State that is cached in the TLS for fast access in generated code. |
| 648 #define DECLARE_MEMBERS(type_name, member_name, expr, default_init_value) \ | 647 #define DECLARE_MEMBERS(type_name, member_name, expr, default_init_value) \ |
| 649 type_name member_name; | 648 type_name member_name; |
| 650 CACHED_CONSTANTS_LIST(DECLARE_MEMBERS) | 649 CACHED_CONSTANTS_LIST(DECLARE_MEMBERS) |
| 651 #undef DECLARE_MEMBERS | 650 #undef DECLARE_MEMBERS |
| 652 | 651 |
| 653 #define DECLARE_MEMBERS(name) \ | 652 #define DECLARE_MEMBERS(name) \ |
| 654 uword name##_entry_point_; | 653 uword name##_entry_point_; |
| 655 RUNTIME_ENTRY_LIST(DECLARE_MEMBERS) | 654 RUNTIME_ENTRY_LIST(DECLARE_MEMBERS) |
| 656 #undef DECLARE_MEMBERS | 655 #undef DECLARE_MEMBERS |
| 657 | 656 |
| 658 #define DECLARE_MEMBERS(returntype, name, ...) \ | 657 #define DECLARE_MEMBERS(returntype, name, ...) \ |
| 659 uword name##_entry_point_; | 658 uword name##_entry_point_; |
| 660 LEAF_RUNTIME_ENTRY_LIST(DECLARE_MEMBERS) | 659 LEAF_RUNTIME_ENTRY_LIST(DECLARE_MEMBERS) |
| 661 #undef DECLARE_MEMBERS | 660 #undef DECLARE_MEMBERS |
| 662 | 661 |
| 662 TimelineStream* dart_stream_; |
| 663 OSThread* os_thread_; | 663 OSThread* os_thread_; |
| 664 Monitor* thread_lock_; | 664 Monitor* thread_lock_; |
| 665 Zone* zone_; | 665 Zone* zone_; |
| 666 ApiLocalScope* api_reusable_scope_; | 666 ApiLocalScope* api_reusable_scope_; |
| 667 ApiLocalScope* api_top_scope_; | 667 ApiLocalScope* api_top_scope_; |
| 668 StackResource* top_resource_; | 668 StackResource* top_resource_; |
| 669 LongJumpScope* long_jump_base_; | 669 LongJumpScope* long_jump_base_; |
| 670 int32_t no_callback_scope_depth_; | 670 int32_t no_callback_scope_depth_; |
| 671 #if defined(DEBUG) | 671 #if defined(DEBUG) |
| 672 HandleScope* top_handle_scope_; | 672 HandleScope* top_handle_scope_; |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 764 // Disable thread interrupts. | 764 // Disable thread interrupts. |
| 765 class DisableThreadInterruptsScope : public StackResource { | 765 class DisableThreadInterruptsScope : public StackResource { |
| 766 public: | 766 public: |
| 767 explicit DisableThreadInterruptsScope(Thread* thread); | 767 explicit DisableThreadInterruptsScope(Thread* thread); |
| 768 ~DisableThreadInterruptsScope(); | 768 ~DisableThreadInterruptsScope(); |
| 769 }; | 769 }; |
| 770 | 770 |
| 771 } // namespace dart | 771 } // namespace dart |
| 772 | 772 |
| 773 #endif // VM_THREAD_H_ | 773 #endif // VM_THREAD_H_ |
| OLD | NEW |