| 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 748 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 759 // Detect circles in the exception handler data. | 759 // Detect circles in the exception handler data. |
| 760 num_handlers_checked++; | 760 num_handlers_checked++; |
| 761 ASSERT(num_handlers_checked <= handlers.num_entries()); | 761 ASSERT(num_handlers_checked <= handlers.num_entries()); |
| 762 handled_types = handlers.GetHandledTypes(try_index); | 762 handled_types = handlers.GetHandledTypes(try_index); |
| 763 const intptr_t num_types = handled_types.Length(); | 763 const intptr_t num_types = handled_types.Length(); |
| 764 for (intptr_t k = 0; k < num_types; k++) { | 764 for (intptr_t k = 0; k < num_types; k++) { |
| 765 type ^= handled_types.At(k); | 765 type ^= handled_types.At(k); |
| 766 ASSERT(!type.IsNull()); | 766 ASSERT(!type.IsNull()); |
| 767 // Uninstantiated types are not added to ExceptionHandlers data. | 767 // Uninstantiated types are not added to ExceptionHandlers data. |
| 768 ASSERT(type.IsInstantiated()); | 768 ASSERT(type.IsInstantiated()); |
| 769 if (type.IsMalformed()) continue; |
| 769 if (type.IsDynamicType()) return frame; | 770 if (type.IsDynamicType()) return frame; |
| 770 if (type.IsMalformed()) continue; | |
| 771 if (exc_obj.IsInstanceOf(type, no_instantiator, NULL)) { | 771 if (exc_obj.IsInstanceOf(type, no_instantiator, NULL)) { |
| 772 return frame; | 772 return frame; |
| 773 } | 773 } |
| 774 } | 774 } |
| 775 try_index = handlers.OuterTryIndex(try_index); | 775 try_index = handlers.OuterTryIndex(try_index); |
| 776 } | 776 } |
| 777 } | 777 } |
| 778 return NULL; | 778 return NULL; |
| 779 } | 779 } |
| 780 | 780 |
| (...skipping 2573 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3354 | 3354 |
| 3355 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { | 3355 void Debugger::RegisterCodeBreakpoint(CodeBreakpoint* bpt) { |
| 3356 ASSERT(bpt->next() == NULL); | 3356 ASSERT(bpt->next() == NULL); |
| 3357 bpt->set_next(code_breakpoints_); | 3357 bpt->set_next(code_breakpoints_); |
| 3358 code_breakpoints_ = bpt; | 3358 code_breakpoints_ = bpt; |
| 3359 } | 3359 } |
| 3360 | 3360 |
| 3361 #endif // !PRODUCT | 3361 #endif // !PRODUCT |
| 3362 | 3362 |
| 3363 } // namespace dart | 3363 } // namespace dart |
| OLD | NEW |