This allows using %OptimizeFunctionOnNextCall and friends even when
Crankshaft is disabled. Note that this should only affect code paths
that are not relevant to performance. By now we have a single bailout
point in place within OptimizedCompileJob::CreateGraph that ensures
Crankshaft is only used when enabled and supported.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
999173007
Cr-Commit-Position: refs/heads/master@{#27367}
static bool ShouldOptimizeNewClosure(Isolate* isolate,
Handle<SharedFunctionInfo> info) {
- return isolate->use_crankshaft() && !info->is_toplevel() &&
- info->is_compiled() && info->allows_lazy_compilation();
+ return !info->is_toplevel() && info->is_compiled() &&
+ info->allows_lazy_compilation();
}
void JSFunction::MarkForOptimization() {
Isolate* isolate = GetIsolate();
- DCHECK(isolate->use_crankshaft());
DCHECK(!IsOptimized());
DCHECK(shared()->allows_lazy_compilation() || code()->optimizable());
set_code_no_write_barrier(
// recompilation race. This goes away as soon as OSR becomes one-shot.
return;
}
- DCHECK(isolate->use_crankshaft());
DCHECK(!IsInOptimizationQueue());
DCHECK(is_compiled() || isolate->debug()->has_break_points());
DCHECK(!IsOptimized());
DCHECK(args.length() == 2);
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
CONVERT_BOOLEAN_ARG_CHECKED(concurrent, 1);
- DCHECK(isolate->use_crankshaft());
Compiler::ConcurrencyMode mode =
concurrent ? Compiler::CONCURRENT : Compiler::NOT_CONCURRENT;
(function->code()->kind() == Code::FUNCTION &&
function->code()->optimizable()));
- if (!isolate->use_crankshaft()) return isolate->heap()->undefined_value();
-
// If the function is already optimized, just return.
if (function->IsOptimized()) return isolate->heap()->undefined_value();
(function->code()->kind() == Code::FUNCTION &&
function->code()->optimizable()));
- if (!isolate->use_crankshaft()) return isolate->heap()->undefined_value();
-
// If the function is already optimized, just return.
if (function->IsOptimized()) return isolate->heap()->undefined_value();