| Index: src/runtime.cc
|
| diff --git a/src/runtime.cc b/src/runtime.cc
|
| index 54bb61a0bb93044481c2378ade39e34135bdce2a..31e44a4f8f2e000e75f116c878405c120110b8db 100644
|
| --- a/src/runtime.cc
|
| +++ b/src/runtime.cc
|
| @@ -54,7 +54,7 @@
|
| #include "runtime-profiler.h"
|
| #include "runtime.h"
|
| #include "scopeinfo.h"
|
| -#include "smart-array-pointer.h"
|
| +#include "smart-pointers.h"
|
| #include "string-search.h"
|
| #include "stub-cache.h"
|
| #include "v8threads.h"
|
| @@ -8292,6 +8292,14 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_LazyRecompile) {
|
| }
|
|
|
|
|
| +RUNTIME_FUNCTION(MaybeObject*, Runtime_ParallelRecompile) {
|
| + HandleScope handle_scope(isolate);
|
| + ASSERT(FLAG_parallel_recompilation);
|
| + Compiler::RecompileParallel(args.at<JSFunction>(0));
|
| + return *isolate->factory()->undefined_value();
|
| +}
|
| +
|
| +
|
| class ActivationsFinder : public ThreadVisitor {
|
| public:
|
| explicit ActivationsFinder(JSFunction* function)
|
| @@ -8486,6 +8494,11 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_GetOptimizationStatus) {
|
| return Smi::FromInt(4); // 4 == "never".
|
| }
|
| CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
| + if (FLAG_parallel_recompilation) {
|
| + if (function->IsMarkedForLazyRecompilation()) {
|
| + return Smi::FromInt(5);
|
| + }
|
| + }
|
| if (FLAG_always_opt) {
|
| // We may have always opt, but that is more best-effort than a real
|
| // promise, so we still say "no" if it is not optimized.
|
|
|