OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1508 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1519 } | 1519 } |
1520 | 1520 |
1521 | 1521 |
1522 void Debug::ClearStepNext() { | 1522 void Debug::ClearStepNext() { |
1523 thread_local_.last_step_action_ = StepNone; | 1523 thread_local_.last_step_action_ = StepNone; |
1524 thread_local_.last_statement_position_ = RelocInfo::kNoPosition; | 1524 thread_local_.last_statement_position_ = RelocInfo::kNoPosition; |
1525 thread_local_.last_fp_ = 0; | 1525 thread_local_.last_fp_ = 0; |
1526 } | 1526 } |
1527 | 1527 |
1528 | 1528 |
1529 bool Debug::EnsureCompiled(Handle<SharedFunctionInfo> shared) { | |
1530 if (shared->is_compiled()) return true; | |
1531 return CompileLazyShared(shared, CLEAR_EXCEPTION, 0); | |
1532 } | |
1533 | |
1534 | |
1535 // Ensures the debug information is present for shared. | 1529 // Ensures the debug information is present for shared. |
1536 bool Debug::EnsureDebugInfo(Handle<SharedFunctionInfo> shared) { | 1530 bool Debug::EnsureDebugInfo(Handle<SharedFunctionInfo> shared) { |
1537 // Return if we already have the debug info for shared. | 1531 // Return if we already have the debug info for shared. |
1538 if (HasDebugInfo(shared)) return true; | 1532 if (HasDebugInfo(shared)) return true; |
1539 | 1533 |
1540 // Ensure shared in compiled. Return false if this failed. | 1534 // Ensure shared in compiled. Return false if this failed. |
1541 if (!EnsureCompiled(shared)) return false; | 1535 if (!EnsureCompiled(shared, CLEAR_EXCEPTION)) return false; |
1542 | 1536 |
1543 // Create the debug info object. | 1537 // Create the debug info object. |
1544 Handle<DebugInfo> debug_info = Factory::NewDebugInfo(shared); | 1538 Handle<DebugInfo> debug_info = Factory::NewDebugInfo(shared); |
1545 | 1539 |
1546 // Add debug info to the list. | 1540 // Add debug info to the list. |
1547 DebugInfoListNode* node = new DebugInfoListNode(*debug_info); | 1541 DebugInfoListNode* node = new DebugInfoListNode(*debug_info); |
1548 node->set_next(debug_info_list_); | 1542 node->set_next(debug_info_list_); |
1549 debug_info_list_ = node; | 1543 debug_info_list_ = node; |
1550 | 1544 |
1551 // Now there is at least one break point. | 1545 // Now there is at least one break point. |
(...skipping 1253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2805 { | 2799 { |
2806 Locker locker; | 2800 Locker locker; |
2807 Debugger::CallMessageDispatchHandler(); | 2801 Debugger::CallMessageDispatchHandler(); |
2808 } | 2802 } |
2809 } | 2803 } |
2810 } | 2804 } |
2811 | 2805 |
2812 #endif // ENABLE_DEBUGGER_SUPPORT | 2806 #endif // ENABLE_DEBUGGER_SUPPORT |
2813 | 2807 |
2814 } } // namespace v8::internal | 2808 } } // namespace v8::internal |
OLD | NEW |