Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Side by Side Diff: runtime/vm/debugger.h

Issue 2869573002: Use latent breakpoints list when looking up or removing breakpoints. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | runtime/vm/debugger.cc » ('j') | runtime/vm/debugger.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 RUNTIME_VM_DEBUGGER_H_ 5 #ifndef RUNTIME_VM_DEBUGGER_H_
6 #define RUNTIME_VM_DEBUGGER_H_ 6 #define RUNTIME_VM_DEBUGGER_H_
7 7
8 #include "include/dart_tools_api.h" 8 #include "include/dart_tools_api.h"
9 9
10 #include "vm/object.h" 10 #include "vm/object.h"
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after
482 intptr_t line_number, 482 intptr_t line_number,
483 intptr_t column_number); 483 intptr_t column_number);
484 RawError* OneTimeBreakAtEntry(const Function& target_function); 484 RawError* OneTimeBreakAtEntry(const Function& target_function);
485 485
486 BreakpointLocation* BreakpointLocationAtLineCol(const String& script_url, 486 BreakpointLocation* BreakpointLocationAtLineCol(const String& script_url,
487 intptr_t line_number, 487 intptr_t line_number,
488 intptr_t column_number); 488 intptr_t column_number);
489 489
490 490
491 void RemoveBreakpoint(intptr_t bp_id); 491 void RemoveBreakpoint(intptr_t bp_id);
492 bool RemoveBreakpointFromTheList(intptr_t bp_id, BreakpointLocation** list);
492 Breakpoint* GetBreakpointById(intptr_t id); 493 Breakpoint* GetBreakpointById(intptr_t id);
494 Breakpoint* GetBreakpointByIdInTheList(intptr_t id, BreakpointLocation* list);
siva 2017/05/08 18:28:18 Should these list variants be private methods as w
aam 2017/05/08 20:17:47 Done.
493 495
494 void MaybeAsyncStepInto(const Closure& async_op); 496 void MaybeAsyncStepInto(const Closure& async_op);
495 void AsyncStepInto(const Closure& async_op); 497 void AsyncStepInto(const Closure& async_op);
496 498
497 void Continue(); 499 void Continue();
498 500
499 bool SetResumeAction(ResumeAction action, 501 bool SetResumeAction(ResumeAction action,
500 intptr_t frame_index = 1, 502 intptr_t frame_index = 1,
501 const char** error = NULL); 503 const char** error = NULL);
502 504
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
591 // Pause execution due to an uncaught exception. 593 // Pause execution due to an uncaught exception.
592 void PauseException(const Instance& exc); 594 void PauseException(const Instance& exc);
593 595
594 // Pause execution due to a call to the debugger() function from 596 // Pause execution due to a call to the debugger() function from
595 // Dart. 597 // Dart.
596 void PauseDeveloper(const String& msg); 598 void PauseDeveloper(const String& msg);
597 599
598 RawCode* GetPatchedStubAddress(uword breakpoint_address); 600 RawCode* GetPatchedStubAddress(uword breakpoint_address);
599 601
600 void PrintBreakpointsToJSONArray(JSONArray* jsarr) const; 602 void PrintBreakpointsToJSONArray(JSONArray* jsarr) const;
603 void PrintBreakpointsListToJSONArray(BreakpointLocation* sbpt,
604 JSONArray* jsarr) const;
siva 2017/05/08 18:28:18 Ditto comment about making this a private method.
aam 2017/05/08 20:17:47 Done.
601 void PrintSettingsToJSONObject(JSONObject* jsobj) const; 605 void PrintSettingsToJSONObject(JSONObject* jsobj) const;
602 606
603 static bool IsDebuggable(const Function& func); 607 static bool IsDebuggable(const Function& func);
604 608
605 intptr_t limitBreakpointId() { return next_id_; } 609 intptr_t limitBreakpointId() { return next_id_; }
606 610
607 // Callback to the debugger to continue frame rewind, post-deoptimization. 611 // Callback to the debugger to continue frame rewind, post-deoptimization.
608 void RewindPostDeopt(); 612 void RewindPostDeopt();
609 613
610 static DebuggerStackTrace* CollectAwaiterReturnStackTrace(); 614 static DebuggerStackTrace* CollectAwaiterReturnStackTrace();
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
784 788
785 friend class Isolate; 789 friend class Isolate;
786 friend class BreakpointLocation; 790 friend class BreakpointLocation;
787 DISALLOW_COPY_AND_ASSIGN(Debugger); 791 DISALLOW_COPY_AND_ASSIGN(Debugger);
788 }; 792 };
789 793
790 794
791 } // namespace dart 795 } // namespace dart
792 796
793 #endif // RUNTIME_VM_DEBUGGER_H_ 797 #endif // RUNTIME_VM_DEBUGGER_H_
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/debugger.cc » ('j') | runtime/vm/debugger.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698