OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "execution.h" | 5 #include "execution.h" |
6 | 6 |
7 #include "bootstrapper.h" | 7 #include "bootstrapper.h" |
8 #include "codegen.h" | 8 #include "codegen.h" |
9 #include "deoptimizer.h" | 9 #include "deoptimizer.h" |
10 #include "isolate-inl.h" | 10 #include "isolate-inl.h" |
(...skipping 696 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
707 !isolate->stack_guard()->CheckDebugBreak(); | 707 !isolate->stack_guard()->CheckDebugBreak(); |
708 | 708 |
709 isolate->stack_guard()->ClearDebugBreak(); | 709 isolate->stack_guard()->ClearDebugBreak(); |
710 | 710 |
711 Execution::ProcessDebugMessages(isolate, debug_command_only); | 711 Execution::ProcessDebugMessages(isolate, debug_command_only); |
712 } | 712 } |
713 | 713 |
714 | 714 |
715 void Execution::ProcessDebugMessages(Isolate* isolate, | 715 void Execution::ProcessDebugMessages(Isolate* isolate, |
716 bool debug_command_only) { | 716 bool debug_command_only) { |
| 717 // Assert that we are on the main thread of the isolate. |
| 718 ASSERT(ThreadId::Current().Equals(isolate->thread_id())); |
| 719 |
717 isolate->stack_guard()->ClearDebugCommand(); | 720 isolate->stack_guard()->ClearDebugCommand(); |
718 | 721 |
719 StackLimitCheck check(isolate); | 722 StackLimitCheck check(isolate); |
720 if (check.HasOverflowed()) return; | 723 if (check.HasOverflowed()) return; |
721 | 724 |
722 HandleScope scope(isolate); | 725 HandleScope scope(isolate); |
723 // Enter the debugger. Just continue if we fail to enter the debugger. | 726 // Enter the debugger. Just continue if we fail to enter the debugger. |
724 EnterDebugger debugger(isolate); | 727 EnterDebugger debugger(isolate); |
725 if (debugger.FailedToEnter()) return; | 728 if (debugger.FailedToEnter()) return; |
726 | 729 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
766 isolate_->optimizing_compiler_thread()->InstallOptimizedFunctions(); | 769 isolate_->optimizing_compiler_thread()->InstallOptimizedFunctions(); |
767 } | 770 } |
768 | 771 |
769 isolate_->counters()->stack_interrupts()->Increment(); | 772 isolate_->counters()->stack_interrupts()->Increment(); |
770 isolate_->counters()->runtime_profiler_ticks()->Increment(); | 773 isolate_->counters()->runtime_profiler_ticks()->Increment(); |
771 isolate_->runtime_profiler()->OptimizeNow(); | 774 isolate_->runtime_profiler()->OptimizeNow(); |
772 return isolate_->heap()->undefined_value(); | 775 return isolate_->heap()->undefined_value(); |
773 } | 776 } |
774 | 777 |
775 } } // namespace v8::internal | 778 } } // namespace v8::internal |
OLD | NEW |