diff --git a/BUILD.gn b/BUILD.gn index cd23d3401b..13cdc6cd9f 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -40,11 +40,6 @@ declare_args() { # Sets -DV8_ENABLE_FUTURE. v8_enable_future = false - # Lite mode disables a number of performance optimizations to reduce memory - # at the cost of performance. - # Sets --DV8_LITE_MODE. - v8_enable_lite_mode = false - # Sets -DSYSTEM_INSTRUMENTATION. Enables OS-dependent event tracing v8_enable_system_instrumentation = false @@ -771,7 +766,7 @@ config("features") { if (v8_etw_guid != "") { defines += [ "V8_ETW_GUID=\"$v8_etw_guid\"" ] } - if (v8_enable_webassembly && !v8_enable_lite_mode) { + if (v8_enable_webassembly) { defines += [ "V8_ENABLE_WEBASSEMBLY" ] } if (v8_dict_property_const_tracking) { diff --git a/gni/v8.gni b/gni/v8.gni index dc4de9a519..9325baf996 100644 --- a/gni/v8.gni +++ b/gni/v8.gni @@ -64,11 +64,16 @@ declare_args() { # Enable WebAssembly debugging via GDB-remote protocol. v8_enable_wasm_gdb_remote_debugging = false + # Lite mode disables a number of performance optimizations to reduce memory + # at the cost of performance. + # Sets -DV8_LITE_MODE. + v8_enable_lite_mode = false + # Include support for WebAssembly. If disabled, the 'WebAssembly' global # will not be available, and embedder APIs to generate WebAssembly modules # will fail. Also, asm.js will not be translated to WebAssembly and will be # executed as standard JavaScript instead. - v8_enable_webassembly = true + v8_enable_webassembly = "" # Add fuzzilli fuzzer support. v8_fuzzilli = false @@ -104,6 +109,13 @@ if (build_with_chromium && use_perfetto_client_library) { v8_use_perfetto = true } +# WebAssembly is enabled by default, except in lite mode. +if (v8_enable_webassembly == "") { + v8_enable_webassembly = !v8_enable_lite_mode +} +assert(!(v8_enable_webassembly && v8_enable_lite_mode), + "Webassembly is not available in lite mode.") + # Points to // in v8 stand-alone or to //v8/ in chromium. We need absolute # paths for all configs in templates as they are shared in different # subdirectories. diff --git a/tools/testrunner/base_runner.py b/tools/testrunner/base_runner.py index 3fd54b9279..c040912fc9 100644 --- a/tools/testrunner/base_runner.py +++ b/tools/testrunner/base_runner.py @@ -646,9 +646,6 @@ class BaseTestRunner(object): '--noenable-sse4-1', '--no-enable-sse4_1']) - has_webassembly = self.build_config.webassembly and \ - not self.build_config.lite_mode - # Set no_simd_sse on architectures without Simd enabled. if self.build_config.arch == 'ppc64': no_simd_sse = True @@ -666,7 +663,7 @@ class BaseTestRunner(object): "gc_fuzzer": False, "gc_stress": False, "gcov_coverage": self.build_config.gcov_coverage, - "has_webassembly": has_webassembly, + "has_webassembly": self.build_config.webassembly, "isolates": options.isolates, "is_clang": self.build_config.is_clang, "is_full_debug": self.build_config.is_full_debug,