Skip to content

Instantly share code, notes, and snippets.

@TerrorJack
Created September 24, 2024 17:14
Show Gist options
  • Save TerrorJack/e5af7687373a5dda2ec18618757e7343 to your computer and use it in GitHub Desktop.
Save TerrorJack/e5af7687373a5dda2ec18618757e7343 to your computer and use it in GitHub Desktop.
diff --git a/configure.py b/configure.py
index d03db1970f..45a53bec60 100755
--- a/configure.py
+++ b/configure.py
@@ -1634,7 +1634,8 @@ def configure_library(lib, output, pkgname=None):
def configure_v8(o, configs):
set_configuration_variable(configs, 'v8_enable_v8_checks', release=1, debug=0)
- o['variables']['v8_enable_webassembly'] = 0 if options.v8_lite_mode else 1
+ o['variables']['v8_enable_webassembly'] = 1
+ o['variables']['v8_enable_drumbrake'] = 1 if options.v8_lite_mode else 0
o['variables']['v8_enable_javascript_promise_hooks'] = 1
o['variables']['v8_enable_lite_mode'] = 1 if options.v8_lite_mode else 0
o['variables']['v8_enable_gdbjit'] = 1 if options.gdb else 0
@@ -1646,7 +1647,6 @@ def configure_v8(o, configs):
o['variables']['v8_use_siphash'] = 0 if options.without_siphash else 1
o['variables']['v8_enable_maglev'] = 1 if options.v8_enable_maglev else 0
o['variables']['v8_enable_pointer_compression'] = 1 if options.enable_pointer_compression else 0
- o['variables']['v8_enable_sandbox'] = 1 if options.enable_pointer_compression else 0
o['variables']['v8_enable_31bit_smis_on_64bit_arch'] = 1 if options.enable_pointer_compression else 0
o['variables']['v8_enable_shared_ro_heap'] = 0 if options.enable_pointer_compression or options.disable_shared_ro_heap else 1
o['variables']['v8_enable_extensible_ro_snapshot'] = 0
diff --git a/deps/v8/src/init/v8.cc b/deps/v8/src/init/v8.cc
index 15540a75e7..606e237e11 100644
--- a/deps/v8/src/init/v8.cc
+++ b/deps/v8/src/init/v8.cc
@@ -193,22 +193,6 @@ void V8::Initialize() {
std::ios_base::trunc);
}
- // Do not expose wasm in jitless mode.
- //
- // Even in interpreter-only mode, wasm currently still creates executable
- // memory at runtime. Unexpose wasm until this changes.
- // The correctness fuzzers are a special case: many of their test cases are
- // built by fetching a random property from the the global object, and thus
- // the global object layout must not change between configs. That is why we
- // continue exposing wasm on correctness fuzzers even in jitless mode.
- // TODO(jgruber): Remove this once / if wasm can run without executable
- // memory.
-#if V8_ENABLE_WEBASSEMBLY
- if (v8_flags.jitless && !v8_flags.correctness_fuzzer_suppressions) {
- DISABLE_FLAG(expose_wasm);
- }
-#endif
-
// When fuzzing and concurrent compilation is enabled, disable Turbofan
// tracing flags since reading/printing heap state is not thread-safe and
// leads to false positives on TSAN bots.
diff --git a/deps/v8/src/wasm/module-compiler.cc b/deps/v8/src/wasm/module-compiler.cc
index 5b22868318..ac97c42b20 100644
--- a/deps/v8/src/wasm/module-compiler.cc
+++ b/deps/v8/src/wasm/module-compiler.cc
@@ -2374,7 +2374,6 @@ AsyncCompileJob::AsyncCompileJob(
TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("v8.wasm.detailed"),
"wasm.AsyncCompileJob");
CHECK(v8_flags.wasm_async_compilation);
- CHECK(!v8_flags.jitless);
v8::Isolate* v8_isolate = reinterpret_cast<v8::Isolate*>(isolate);
v8::Platform* platform = V8::GetCurrentPlatform();
foreground_task_runner_ = platform->GetForegroundTaskRunner(v8_isolate);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment