| Index: src/runtime-profiler.cc
|
| diff --git a/src/runtime-profiler.cc b/src/runtime-profiler.cc
|
| index f786846b365ba1cc43ac04a4803dbeef8c803a92..7330262e234c2ee1ea65465a3ffb7f81618bb288 100644
|
| --- a/src/runtime-profiler.cc
|
| +++ b/src/runtime-profiler.cc
|
| @@ -106,23 +106,8 @@ void RuntimeProfiler::Optimize(JSFunction* function, const char* reason) {
|
| PrintF("]\n");
|
| }
|
|
|
| -
|
| - if (isolate_->concurrent_recompilation_enabled() &&
|
| - !isolate_->bootstrapper()->IsActive()) {
|
| - if (isolate_->concurrent_osr_enabled() &&
|
| - isolate_->optimizing_compiler_thread()->IsQueuedForOSR(function)) {
|
| - // Do not attempt regular recompilation if we already queued this for OSR.
|
| - // TODO(yangguo): This is necessary so that we don't install optimized
|
| - // code on a function that is already optimized, since OSR and regular
|
| - // recompilation race. This goes away as soon as OSR becomes one-shot.
|
| - return;
|
| - }
|
| - DCHECK(!function->IsInOptimizationQueue());
|
| - function->MarkForConcurrentOptimization();
|
| - } else {
|
| - // The next call to the function will trigger optimization.
|
| - function->MarkForOptimization();
|
| - }
|
| + function->shared()->set_optimize_next_closure(true);
|
| + function->AttemptConcurrentOptimization();
|
| }
|
|
|
|
|
|
|