Skip to content

Commit 4fe479c

Browse files
[wasm] Pass --experimental-wasm-exnref to V8 for perf runs (#5247)
The runtime switched WASM exception handling to the standardized exnref proposal (dotnet/runtime#129851), which V8 keeps behind the --experimental-wasm-exnref flag. The perf wasm v8 leg installs V8 via jsvu and runs benchmarks through BenchmarkDotNet, which was not passing the flag, so MicroBenchmarks aborts at startup with 'This browser/engine doesn't support WASM exception handling' / 'Top-level await promise never resolved'. Pass the flag through BDN's --wasmArgs for the v8 engine on both the wasm and wasm_coreclr legs. Gated on v8 so JavaScriptCore is unaffected; harmless (warning only) on V8 builds that enable exnref by default. See dotnet/runtime#129849. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 0e08e86 commit 4fe479c

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

scripts/run_performance_job.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,12 @@ def get_bdn_arguments(
443443
"--wasmProcessTimeout", "20",
444444
]
445445

446+
# The runtime now uses the standardized exnref WASM exception-handling proposal,
447+
# which V8 keeps behind --experimental-wasm-exnref. Pass it through to the engine
448+
# via BDN's --wasmArgs (the escaped quotes keep it a single token on the Helix shell).
449+
if javascript_engine == "v8":
450+
bdn_arguments += ["\\\"--wasmArgs=--experimental-wasm-exnref\\\""]
451+
446452
if is_aot:
447453
bdn_arguments += [
448454
"--aotcompilermode", "wasm",
@@ -460,6 +466,12 @@ def get_bdn_arguments(
460466
"--wasmProcessTimeout", "20"
461467
]
462468

469+
# The runtime now uses the standardized exnref WASM exception-handling proposal,
470+
# which V8 keeps behind --experimental-wasm-exnref. Pass it through to the engine
471+
# via BDN's --wasmArgs (the escaped quotes keep it a single token on the Helix shell).
472+
if javascript_engine == "v8":
473+
bdn_arguments += ["\\\"--wasmArgs=--experimental-wasm-exnref\\\""]
474+
463475
if runtime_type == "coreclr_r2r_interpreter":
464476
if os_group == "windows":
465477
bdn_arguments += [

0 commit comments

Comments
 (0)