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 |