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 "platform/thread.h" | 10 #include "platform/thread.h" |
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
427 } | 427 } |
428 | 428 |
429 static bool IsDeoptAfter(intptr_t deopt_id) { | 429 static bool IsDeoptAfter(intptr_t deopt_id) { |
430 return (deopt_id % kDeoptIdStep) == kDeoptIdAfterOffset; | 430 return (deopt_id % kDeoptIdStep) == kDeoptIdAfterOffset; |
431 } | 431 } |
432 | 432 |
433 Mutex* mutex() const { return mutex_; } | 433 Mutex* mutex() const { return mutex_; } |
434 | 434 |
435 Debugger* debugger() const { return debugger_; } | 435 Debugger* debugger() const { return debugger_; } |
436 | 436 |
| 437 void set_single_step(bool value) { single_step_ = value; } |
| 438 bool single_step() const { return single_step_; } |
| 439 static intptr_t single_step_offset() { |
| 440 return OFFSET_OF(Isolate, single_step_); |
| 441 } |
| 442 |
437 Simulator* simulator() const { return simulator_; } | 443 Simulator* simulator() const { return simulator_; } |
438 void set_simulator(Simulator* value) { simulator_ = value; } | 444 void set_simulator(Simulator* value) { simulator_ = value; } |
439 | 445 |
440 GcPrologueCallbacks& gc_prologue_callbacks() { | 446 GcPrologueCallbacks& gc_prologue_callbacks() { |
441 return gc_prologue_callbacks_; | 447 return gc_prologue_callbacks_; |
442 } | 448 } |
443 | 449 |
444 GcEpilogueCallbacks& gc_epilogue_callbacks() { | 450 GcEpilogueCallbacks& gc_epilogue_callbacks() { |
445 return gc_epilogue_callbacks_; | 451 return gc_epilogue_callbacks_; |
446 } | 452 } |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
641 Dart_Port main_port_; | 647 Dart_Port main_port_; |
642 Heap* heap_; | 648 Heap* heap_; |
643 ObjectStore* object_store_; | 649 ObjectStore* object_store_; |
644 RawContext* top_context_; | 650 RawContext* top_context_; |
645 uword top_exit_frame_info_; | 651 uword top_exit_frame_info_; |
646 void* init_callback_data_; | 652 void* init_callback_data_; |
647 Dart_LibraryTagHandler library_tag_handler_; | 653 Dart_LibraryTagHandler library_tag_handler_; |
648 ApiState* api_state_; | 654 ApiState* api_state_; |
649 StubCode* stub_code_; | 655 StubCode* stub_code_; |
650 Debugger* debugger_; | 656 Debugger* debugger_; |
| 657 bool single_step_; |
651 Simulator* simulator_; | 658 Simulator* simulator_; |
652 LongJump* long_jump_base_; | 659 LongJump* long_jump_base_; |
653 TimerList timer_list_; | 660 TimerList timer_list_; |
654 intptr_t deopt_id_; | 661 intptr_t deopt_id_; |
655 Mutex* mutex_; // protects stack_limit_ and saved_stack_limit_. | 662 Mutex* mutex_; // protects stack_limit_ and saved_stack_limit_. |
656 uword stack_limit_; | 663 uword stack_limit_; |
657 uword saved_stack_limit_; | 664 uword saved_stack_limit_; |
658 MessageHandler* message_handler_; | 665 MessageHandler* message_handler_; |
659 uword spawn_data_; | 666 uword spawn_data_; |
660 bool is_runnable_; | 667 bool is_runnable_; |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
884 | 891 |
885 private: | 892 private: |
886 Isolate::IsolateRunState saved_state_; | 893 Isolate::IsolateRunState saved_state_; |
887 | 894 |
888 DISALLOW_COPY_AND_ASSIGN(IsolateRunStateManager); | 895 DISALLOW_COPY_AND_ASSIGN(IsolateRunStateManager); |
889 }; | 896 }; |
890 | 897 |
891 } // namespace dart | 898 } // namespace dart |
892 | 899 |
893 #endif // VM_ISOLATE_H_ | 900 #endif // VM_ISOLATE_H_ |
OLD | NEW |