OLD | NEW |
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 #include "vm/debugger.h" | 5 #include "vm/debugger.h" |
6 | 6 |
7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" |
8 | 8 |
9 #include "vm/code_generator.h" | 9 #include "vm/code_generator.h" |
10 #include "vm/code_patcher.h" | 10 #include "vm/code_patcher.h" |
(...skipping 1477 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1488 void Debugger::SetEventHandler(EventHandler* handler) { | 1488 void Debugger::SetEventHandler(EventHandler* handler) { |
1489 event_handler_ = handler; | 1489 event_handler_ = handler; |
1490 } | 1490 } |
1491 | 1491 |
1492 | 1492 |
1493 bool Debugger::IsDebuggable(const Function& func) { | 1493 bool Debugger::IsDebuggable(const Function& func) { |
1494 RawFunction::Kind fkind = func.kind(); | 1494 RawFunction::Kind fkind = func.kind(); |
1495 if ((fkind == RawFunction::kImplicitGetter) || | 1495 if ((fkind == RawFunction::kImplicitGetter) || |
1496 (fkind == RawFunction::kImplicitSetter) || | 1496 (fkind == RawFunction::kImplicitSetter) || |
1497 (fkind == RawFunction::kConstImplicitGetter) || | 1497 (fkind == RawFunction::kConstImplicitGetter) || |
1498 (fkind == RawFunction::kMethodExtractor) || | 1498 (fkind == RawFunction::kMethodExtractor)) { |
1499 (fkind == RawFunction::kNoSuchMethodDispatcher)) { | |
1500 return false; | 1499 return false; |
1501 } | 1500 } |
1502 const Class& cls = Class::Handle(func.Owner()); | 1501 const Class& cls = Class::Handle(func.Owner()); |
1503 const Library& lib = Library::Handle(cls.library()); | 1502 const Library& lib = Library::Handle(cls.library()); |
1504 return lib.IsDebuggable(); | 1503 return lib.IsDebuggable(); |
1505 } | 1504 } |
1506 | 1505 |
1507 | 1506 |
1508 void Debugger::SignalBpReached() { | 1507 void Debugger::SignalBpReached() { |
1509 // We ignore this breakpoint when the VM is executing code invoked | 1508 // We ignore this breakpoint when the VM is executing code invoked |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1835 } | 1834 } |
1836 | 1835 |
1837 | 1836 |
1838 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { | 1837 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { |
1839 ASSERT(bpt->next() == NULL); | 1838 ASSERT(bpt->next() == NULL); |
1840 bpt->set_next(code_breakpoints_); | 1839 bpt->set_next(code_breakpoints_); |
1841 code_breakpoints_ = bpt; | 1840 code_breakpoints_ = bpt; |
1842 } | 1841 } |
1843 | 1842 |
1844 } // namespace dart | 1843 } // namespace dart |
OLD | NEW |