Fix build failures resulting in "use of undeclared identifier 'forceWasmIon'" in obscure build configurations
Categories
(Core :: JavaScript: WebAssembly, defect)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox88 | --- | fixed |
People
(Reporter: jseward, Assigned: jseward)
Details
Attachments
(1 file)
Following the landing of wasm-via-Ion on arm64 (bug 1678097), some obscure
build configurations now break the build due to incorrect target-selection
ifdeffery. This has been observed to happen for x86_64-linux when the following
are specified together:
ac_add_options --enable-cranelift
ac_add_options --enable-js-shell
| Assignee | ||
Comment 1•4 years ago
|
||
Following the landing of wasm-via-Ion on arm64 (bug 1678097), some obscure
build configurations now break the build due to incorrect target-selection
ifdeffery. This has been observed to happen for x86_64-linux when the
following are specified together (in a browser build):
ac_add_options --enable-cranelift
ac_add_options --enable-js-shell
In particular, forceWasmIon is declared in js.cpp and is guarded by
JS_CODEGEN_ARM64. But there were later some uses of it guarded by
ENABLE_WASM_CRANELIFT. In effect this incorrectly assumes that
JS_CODEGEN_ARM64 and ENABLE_WASM_CRANELIFT are both either defined or
undefined. But that's not correct, (eg) for a build on x86_64-linux that is
configured --enable-cranelift.
This patch fixes that by guarding such use points additionally with
JS_CODEGEN_ARM64, so as to ensure the sets of configurations that read or
write forceWasmIon are a subset of the configurations that declare it.
Updated•4 years ago
|
Comment 3•4 years ago
|
||
| bugherder | ||
Description
•