Use correct ABI for wasm32 by default

Introduces `RUSTC_USE_WASM32_BINDGEN_COMPAT_ABI` env var to use the
compat ABI if need.
This commit is contained in:
Gus Caplan 2020-12-12 22:31:35 -06:00
parent 6526e5c772
commit 94bf59ea34
No known key found for this signature in database
GPG Key ID: F00BD11880E82F0E
1 changed files with 6 additions and 1 deletions

View File

@ -605,7 +605,12 @@ impl<'a, Ty> FnAbi<'a, Ty> {
"nvptx64" => nvptx64::compute_abi_info(self),
"hexagon" => hexagon::compute_abi_info(self),
"riscv32" | "riscv64" => riscv::compute_abi_info(cx, self),
"wasm32" if cx.target_spec().os != "emscripten" => {
"wasm32"
if cx.target_spec().os != "emscripten"
&& std::env::var("RUSTC_USE_WASM32_BINDGEN_COMPAT_ABI")
.map(|x| &x != "0")
.unwrap_or(false) =>
{
wasm32_bindgen_compat::compute_abi_info(self)
}
"wasm32" | "asmjs" => wasm32::compute_abi_info(cx, self),