| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_DEBUG_H_ | 5 #ifndef V8_DEBUG_H_ |
| 6 #define V8_DEBUG_H_ | 6 #define V8_DEBUG_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/arguments.h" | 9 #include "src/arguments.h" |
| 10 #include "src/assembler.h" | 10 #include "src/assembler.h" |
| (...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 458 | 458 |
| 459 // Stepping handling. | 459 // Stepping handling. |
| 460 void PrepareStep(StepAction step_action, | 460 void PrepareStep(StepAction step_action, |
| 461 int step_count, | 461 int step_count, |
| 462 StackFrame::Id frame_id); | 462 StackFrame::Id frame_id); |
| 463 void ClearStepping(); | 463 void ClearStepping(); |
| 464 void ClearStepOut(); | 464 void ClearStepOut(); |
| 465 bool IsStepping() { return thread_local_.step_count_ > 0; } | 465 bool IsStepping() { return thread_local_.step_count_ > 0; } |
| 466 bool StepNextContinue(BreakLocation* location, JavaScriptFrame* frame); | 466 bool StepNextContinue(BreakLocation* location, JavaScriptFrame* frame); |
| 467 bool StepInActive() { return thread_local_.step_into_fp_ != 0; } | 467 bool StepInActive() { return thread_local_.step_into_fp_ != 0; } |
| 468 void HandleStepIn(Handle<Object> function_obj, Handle<Object> holder, | 468 void HandleStepIn(Handle<Object> function_obj, bool is_constructor); |
| 469 Address fp, bool is_constructor); | |
| 470 bool StepOutActive() { return thread_local_.step_out_fp_ != 0; } | 469 bool StepOutActive() { return thread_local_.step_out_fp_ != 0; } |
| 471 | 470 |
| 472 // Purge all code objects that have no debug break slots. | 471 // Purge all code objects that have no debug break slots. |
| 473 void PrepareForBreakPoints(); | 472 void PrepareForBreakPoints(); |
| 474 | 473 |
| 475 // Returns whether the operation succeeded. Compilation can only be triggered | 474 // Returns whether the operation succeeded. Compilation can only be triggered |
| 476 // if a valid closure is passed as the second argument, otherwise the shared | 475 // if a valid closure is passed as the second argument, otherwise the shared |
| 477 // function needs to be compiled already. | 476 // function needs to be compiled already. |
| 478 bool EnsureDebugInfo(Handle<SharedFunctionInfo> shared, | 477 bool EnsureDebugInfo(Handle<SharedFunctionInfo> shared, |
| 479 Handle<JSFunction> function); | 478 Handle<JSFunction> function); |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 618 Handle<JSObject> event_data, | 617 Handle<JSObject> event_data, |
| 619 bool auto_continue); | 618 bool auto_continue); |
| 620 void NotifyMessageHandler(v8::DebugEvent event, | 619 void NotifyMessageHandler(v8::DebugEvent event, |
| 621 Handle<JSObject> exec_state, | 620 Handle<JSObject> exec_state, |
| 622 Handle<JSObject> event_data, | 621 Handle<JSObject> event_data, |
| 623 bool auto_continue); | 622 bool auto_continue); |
| 624 void InvokeMessageHandler(MessageImpl message); | 623 void InvokeMessageHandler(MessageImpl message); |
| 625 | 624 |
| 626 static bool CompileDebuggerScript(Isolate* isolate, int index); | 625 static bool CompileDebuggerScript(Isolate* isolate, int index); |
| 627 void ClearOneShot(); | 626 void ClearOneShot(); |
| 628 void ActivateStepIn(StackFrame* frame); | 627 void ActivateStepIn(Handle<JSFunction> function, StackFrame* frame); |
| 629 void ClearStepIn(); | 628 void ClearStepIn(); |
| 630 void ActivateStepOut(StackFrame* frame); | 629 void ActivateStepOut(StackFrame* frame); |
| 631 void ClearStepNext(); | 630 void ClearStepNext(); |
| 632 void RemoveDebugInfoAndClearFromShared(Handle<DebugInfo> debug_info); | 631 void RemoveDebugInfoAndClearFromShared(Handle<DebugInfo> debug_info); |
| 633 void RemoveDebugInfo(DebugInfo** debug_info); | 632 void RemoveDebugInfo(DebugInfo** debug_info); |
| 634 void RemoveDebugInfo(DebugInfoListNode* node); | 633 void RemoveDebugInfo(DebugInfoListNode* node); |
| 635 void RemoveDebugInfo(DebugInfoListNode* prev, DebugInfoListNode* node); | 634 void RemoveDebugInfo(DebugInfoListNode* prev, DebugInfoListNode* node); |
| 636 Handle<Object> CheckBreakPoints(Handle<Object> break_point); | 635 Handle<Object> CheckBreakPoints(Handle<Object> break_point); |
| 637 bool CheckBreakPoint(Handle<Object> break_point_object); | 636 bool CheckBreakPoint(Handle<Object> break_point_object); |
| 638 | 637 |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 825 // several frames above. | 824 // several frames above. |
| 826 // There is no calling conventions here, because it never actually gets | 825 // There is no calling conventions here, because it never actually gets |
| 827 // called, it only gets returned to. | 826 // called, it only gets returned to. |
| 828 static void GenerateFrameDropperLiveEdit(MacroAssembler* masm); | 827 static void GenerateFrameDropperLiveEdit(MacroAssembler* masm); |
| 829 }; | 828 }; |
| 830 | 829 |
| 831 | 830 |
| 832 } } // namespace v8::internal | 831 } } // namespace v8::internal |
| 833 | 832 |
| 834 #endif // V8_DEBUG_H_ | 833 #endif // V8_DEBUG_H_ |
| OLD | NEW |