Bug 1754018 - CL is exclusive with exceptions. r=rhunt

This uses the same mechanism as SIMD configuration: exceptions are disabled by
default if cranelift is enabled, and enabling both explicitly will cause configuration
to fail.

Differential Revision: https://phabricator.services.mozilla.com/D139129
This commit is contained in:
Lars T Hansen 2022-02-24 07:33:32 +00:00
Родитель f669c536bb
Коммит 8c76521232
1 изменённых файлов: 27 добавлений и 10 удалений

Просмотреть файл

@ -1129,10 +1129,15 @@ set_define(
# ==================================
@depends(milestone.is_nightly)
def default_wasm_exceptions(is_nightly):
if is_nightly:
return True
@depends(milestone.is_nightly, "--enable-cranelift")
def default_wasm_exceptions(is_nightly, cranelift_enabled):
if cranelift_enabled:
return
if not is_nightly:
return
return True
option(
@ -1141,12 +1146,24 @@ option(
help="{Enable|Disable} WebAssembly exceptions",
)
set_config(
"ENABLE_WASM_EXCEPTIONS", depends_if("--enable-wasm-exceptions")(lambda x: True)
)
set_define(
"ENABLE_WASM_EXCEPTIONS", depends_if("--enable-wasm-exceptions")(lambda x: True)
)
@depends("--enable-wasm-exceptions", "--enable-cranelift")
def wasm_exceptions(value, cranelift_enabled):
if not value:
return
if cranelift_enabled:
die("--enable-wasm-exceptions is not supported for --enable-cranelift")
return True
set_config("ENABLE_WASM_EXCEPTIONS", wasm_exceptions)
set_define("ENABLE_WASM_EXCEPTIONS", wasm_exceptions)
# Wasi configuration
# ===================================================
set_define(
"_WASI_EMULATED_PROCESS_CLOCKS",