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)) { |
1499 return false; | 1500 return false; |
1500 } | 1501 } |
1501 const Class& cls = Class::Handle(func.Owner()); | 1502 const Class& cls = Class::Handle(func.Owner()); |
1502 const Library& lib = Library::Handle(cls.library()); | 1503 const Library& lib = Library::Handle(cls.library()); |
1503 return lib.IsDebuggable(); | 1504 return lib.IsDebuggable(); |
1504 } | 1505 } |
1505 | 1506 |
1506 | 1507 |
1507 void Debugger::SignalBpReached() { | 1508 void Debugger::SignalBpReached() { |
1508 // We ignore this breakpoint when the VM is executing code invoked | 1509 // We ignore this breakpoint when the VM is executing code invoked |
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1836 } | 1837 } |
1837 | 1838 |
1838 | 1839 |
1839 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { | 1840 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { |
1840 ASSERT(bpt->next() == NULL); | 1841 ASSERT(bpt->next() == NULL); |
1841 bpt->set_next(code_breakpoints_); | 1842 bpt->set_next(code_breakpoints_); |
1842 code_breakpoints_ = bpt; | 1843 code_breakpoints_ = bpt; |
1843 } | 1844 } |
1844 | 1845 |
1845 } // namespace dart | 1846 } // namespace dart |
OLD | NEW |