| Index: src/factory.cc
|
| diff --git a/src/factory.cc b/src/factory.cc
|
| index c500212b0a708c494ca10c35212458266f95fe2b..72974a317c18646800178b4c10340a85b444afcf 100644
|
| --- a/src/factory.cc
|
| +++ b/src/factory.cc
|
| @@ -1358,14 +1358,6 @@ Handle<JSObject> Factory::NewFunctionPrototype(Handle<JSFunction> function) {
|
| }
|
|
|
|
|
| -static bool ShouldOptimizeNewClosure(Isolate* isolate,
|
| - Handle<SharedFunctionInfo> info) {
|
| - return isolate->use_crankshaft() && !info->is_toplevel() &&
|
| - info->is_compiled() && info->allows_lazy_compilation() &&
|
| - !info->optimization_disabled() && !isolate->DebuggerHasBreakPoints();
|
| -}
|
| -
|
| -
|
| Handle<JSFunction> Factory::NewFunctionFromSharedFunctionInfo(
|
| Handle<SharedFunctionInfo> info,
|
| Handle<Context> context,
|
| @@ -1403,11 +1395,14 @@ Handle<JSFunction> Factory::NewFunctionFromSharedFunctionInfo(
|
| return result;
|
| }
|
|
|
| - if (FLAG_always_opt && ShouldOptimizeNewClosure(isolate(), info)) {
|
| + if (isolate()->use_crankshaft() &&
|
| + FLAG_always_opt &&
|
| + result->is_compiled() &&
|
| + !info->is_toplevel() &&
|
| + info->allows_lazy_compilation() &&
|
| + !info->optimization_disabled() &&
|
| + !isolate()->DebuggerHasBreakPoints()) {
|
| result->MarkForOptimization();
|
| - } else if (info->optimize_next_closure() &&
|
| - ShouldOptimizeNewClosure(isolate(), info)) {
|
| - result->AttemptConcurrentOptimization();
|
| }
|
| return result;
|
| }
|
|
|