summaryrefslogtreecommitdiff
path: root/deps/v8/src/runtime/runtime-test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/runtime/runtime-test.cc')
-rw-r--r--deps/v8/src/runtime/runtime-test.cc52
1 files changed, 32 insertions, 20 deletions
diff --git a/deps/v8/src/runtime/runtime-test.cc b/deps/v8/src/runtime/runtime-test.cc
index 4574b5103e..6e1d09f6ad 100644
--- a/deps/v8/src/runtime/runtime-test.cc
+++ b/deps/v8/src/runtime/runtime-test.cc
@@ -111,6 +111,21 @@ bool WasmInstantiateOverride(const v8::FunctionCallbackInfo<v8::Value>& args) {
return true;
}
+bool GetWasmFromArray(const v8::FunctionCallbackInfo<v8::Value>& args) {
+ CHECK(args.Length() == 1);
+ v8::Local<v8::Context> context = args.GetIsolate()->GetCurrentContext();
+ v8::Local<v8::Value> module =
+ v8::Local<v8::Object>::Cast(args[0])->Get(context, 0).ToLocalChecked();
+
+ v8::Local<v8::Promise::Resolver> resolver =
+ v8::Promise::Resolver::New(context).ToLocalChecked();
+ args.GetReturnValue().Set(resolver->GetPromise());
+ USE(resolver->Resolve(context, module));
+ return true;
+}
+
+bool NoExtension(const v8::FunctionCallbackInfo<v8::Value>&) { return false; }
+
} // namespace
namespace v8 {
@@ -150,6 +165,7 @@ RUNTIME_FUNCTION(Runtime_DeoptimizeFunction) {
return isolate->heap()->undefined_value();
}
Handle<JSFunction> function = Handle<JSFunction>::cast(function_object);
+ function->shared()->set_marked_for_tier_up(false);
// If the function is not optimized, just return.
if (!function->IsOptimized()) return isolate->heap()->undefined_value();
@@ -264,6 +280,11 @@ RUNTIME_FUNCTION(Runtime_OptimizeFunctionOnNextCall) {
if (function->IsOptimized()) return isolate->heap()->undefined_value();
function->MarkForOptimization();
+ if (FLAG_trace_opt) {
+ PrintF("[manually marking ");
+ function->ShortPrint();
+ PrintF(" for optimization]\n");
+ }
if (args.length() == 2) {
CONVERT_ARG_HANDLE_CHECKED(String, type, 1);
@@ -319,7 +340,7 @@ RUNTIME_FUNCTION(Runtime_GetOptimizationStatus) {
HandleScope scope(isolate);
DCHECK(args.length() == 1 || args.length() == 2);
int status = 0;
- if (!isolate->use_crankshaft()) {
+ if (!isolate->use_optimizer()) {
status |= static_cast<int>(OptimizationStatus::kNeverOptimize);
}
if (FLAG_always_opt || FLAG_prepare_always_opt) {
@@ -452,6 +473,16 @@ RUNTIME_FUNCTION(Runtime_ClearFunctionFeedback) {
return isolate->heap()->undefined_value();
}
+RUNTIME_FUNCTION(Runtime_SetWasmCompileFromPromiseOverload) {
+ isolate->set_wasm_compile_callback(GetWasmFromArray);
+ return isolate->heap()->undefined_value();
+}
+
+RUNTIME_FUNCTION(Runtime_ResetWasmOverloads) {
+ isolate->set_wasm_compile_callback(NoExtension);
+ return isolate->heap()->undefined_value();
+}
+
RUNTIME_FUNCTION(Runtime_CheckWasmWrapperElision) {
// This only supports the case where the function being exported
// calls an intermediate function, and the intermediate function
@@ -677,16 +708,6 @@ RUNTIME_FUNCTION(Runtime_NativeScriptsCount) {
return Smi::FromInt(Natives::GetBuiltinsCount());
}
-// TODO(5510): remove this.
-RUNTIME_FUNCTION(Runtime_GetV8Version) {
- HandleScope scope(isolate);
- DCHECK_EQ(0, args.length());
-
- const char* version_string = v8::V8::GetVersion();
-
- return *isolate->factory()->NewStringFromAsciiChecked(version_string);
-}
-
RUNTIME_FUNCTION(Runtime_DisassembleFunction) {
HandleScope scope(isolate);
@@ -998,14 +1019,5 @@ RUNTIME_FUNCTION(Runtime_RedirectToWasmInterpreter) {
return isolate->heap()->undefined_value();
}
-RUNTIME_FUNCTION(Runtime_IncrementWaitCount) {
- isolate->IncrementWaitCountForTesting();
- return isolate->heap()->undefined_value();
-}
-
-RUNTIME_FUNCTION(Runtime_DecrementWaitCount) {
- isolate->DecrementWaitCountForTesting();
- return isolate->heap()->undefined_value();
-}
} // namespace internal
} // namespace v8