| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 2029 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2040 void VisitThread(Isolate* isolate, ThreadLocalTop* top) { | 2040 void VisitThread(Isolate* isolate, ThreadLocalTop* top) { |
| 2041 RedirectActivationsToRecompiledCodeOnThread(isolate, top); | 2041 RedirectActivationsToRecompiledCodeOnThread(isolate, top); |
| 2042 } | 2042 } |
| 2043 }; | 2043 }; |
| 2044 | 2044 |
| 2045 | 2045 |
| 2046 void Debug::PrepareForBreakPoints() { | 2046 void Debug::PrepareForBreakPoints() { |
| 2047 // If preparing for the first break point make sure to deoptimize all | 2047 // If preparing for the first break point make sure to deoptimize all |
| 2048 // functions as debugging does not work with optimized code. | 2048 // functions as debugging does not work with optimized code. |
| 2049 if (!has_break_points_) { | 2049 if (!has_break_points_) { |
| 2050 if (FLAG_parallel_recompilation) { | 2050 if (FLAG_concurrent_recompilation) { |
| 2051 isolate_->optimizing_compiler_thread()->Flush(); | 2051 isolate_->optimizing_compiler_thread()->Flush(); |
| 2052 } | 2052 } |
| 2053 | 2053 |
| 2054 Deoptimizer::DeoptimizeAll(isolate_); | 2054 Deoptimizer::DeoptimizeAll(isolate_); |
| 2055 | 2055 |
| 2056 Handle<Code> lazy_compile = | 2056 Handle<Code> lazy_compile = |
| 2057 Handle<Code>(isolate_->builtins()->builtin(Builtins::kLazyCompile)); | 2057 Handle<Code>(isolate_->builtins()->builtin(Builtins::kLazyCompile)); |
| 2058 | 2058 |
| 2059 // There will be at least one break point when we are done. | 2059 // There will be at least one break point when we are done. |
| 2060 has_break_points_ = true; | 2060 has_break_points_ = true; |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2101 | 2101 |
| 2102 Code::Kind kind = function->code()->kind(); | 2102 Code::Kind kind = function->code()->kind(); |
| 2103 if (kind == Code::FUNCTION && | 2103 if (kind == Code::FUNCTION && |
| 2104 !function->code()->has_debug_break_slots()) { | 2104 !function->code()->has_debug_break_slots()) { |
| 2105 function->set_code(*lazy_compile); | 2105 function->set_code(*lazy_compile); |
| 2106 function->shared()->set_code(*lazy_compile); | 2106 function->shared()->set_code(*lazy_compile); |
| 2107 } else if (kind == Code::BUILTIN && | 2107 } else if (kind == Code::BUILTIN && |
| 2108 (function->IsMarkedForInstallingRecompiledCode() || | 2108 (function->IsMarkedForInstallingRecompiledCode() || |
| 2109 function->IsInRecompileQueue() || | 2109 function->IsInRecompileQueue() || |
| 2110 function->IsMarkedForLazyRecompilation() || | 2110 function->IsMarkedForLazyRecompilation() || |
| 2111 function->IsMarkedForParallelRecompilation())) { | 2111 function->IsMarkedForConcurrentRecompilation())) { |
| 2112 // Abort in-flight compilation. | 2112 // Abort in-flight compilation. |
| 2113 Code* shared_code = function->shared()->code(); | 2113 Code* shared_code = function->shared()->code(); |
| 2114 if (shared_code->kind() == Code::FUNCTION && | 2114 if (shared_code->kind() == Code::FUNCTION && |
| 2115 shared_code->has_debug_break_slots()) { | 2115 shared_code->has_debug_break_slots()) { |
| 2116 function->set_code(shared_code); | 2116 function->set_code(shared_code); |
| 2117 } else { | 2117 } else { |
| 2118 function->set_code(*lazy_compile); | 2118 function->set_code(*lazy_compile); |
| 2119 function->shared()->set_code(*lazy_compile); | 2119 function->shared()->set_code(*lazy_compile); |
| 2120 } | 2120 } |
| 2121 } | 2121 } |
| (...skipping 1743 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3865 { | 3865 { |
| 3866 Locker locker(reinterpret_cast<v8::Isolate*>(isolate_)); | 3866 Locker locker(reinterpret_cast<v8::Isolate*>(isolate_)); |
| 3867 isolate_->debugger()->CallMessageDispatchHandler(); | 3867 isolate_->debugger()->CallMessageDispatchHandler(); |
| 3868 } | 3868 } |
| 3869 } | 3869 } |
| 3870 } | 3870 } |
| 3871 | 3871 |
| 3872 #endif // ENABLE_DEBUGGER_SUPPORT | 3872 #endif // ENABLE_DEBUGGER_SUPPORT |
| 3873 | 3873 |
| 3874 } } // namespace v8::internal | 3874 } } // namespace v8::internal |
| OLD | NEW |