diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-07-11 17:01:41 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-11 17:01:41 +0200 |
| commit | fa3ce50f0bdd7c7bed08e9f6d2ef2b21368aed4f (patch) | |
| tree | 979d7df218805e6922940a2c999d1037131a55a4 /compiler/rustc_middle | |
| parent | d433f176ef158f8955a8969c123ae20b614d6286 (diff) | |
| parent | 8a50bcbdceacca60126c085c7cad46aced589c87 (diff) | |
| download | rust-fa3ce50f0bdd7c7bed08e9f6d2ef2b21368aed4f.tar.gz rust-fa3ce50f0bdd7c7bed08e9f6d2ef2b21368aed4f.zip | |
Rollup merge of #127605 - nikic:remove-extern-wasm, r=oli-obk
Remove extern "wasm" ABI Remove the unstable `extern "wasm"` ABI (`wasm_abi` feature tracked in #83788). As discussed in https://github.com/rust-lang/rust/pull/127513#issuecomment-2220410679 and following, this ABI is a failed experiment that did not end up being used for anything. Keeping support for this ABI in LLVM 19 would require us to switch wasm targets to the `experimental-mv` ABI, which we do not want to do. It should be noted that `Abi::Wasm` was internally used for two things: The `-Z wasm-c-abi=legacy` ABI that is still used by default on some wasm targets, and the `extern "wasm"` ABI. Despite both being `Abi::Wasm` internally, they were not the same. An explicit `extern "wasm"` additionally enabled the `+multivalue` feature. I've opted to remove `Abi::Wasm` in this patch entirely, instead of keeping it as an ABI with only internal usage. Both `-Z wasm-c-abi` variants are now treated as part of the normal C ABI, just with different different treatment in adjust_for_foreign_abi.
Diffstat (limited to 'compiler/rustc_middle')
| -rw-r--r-- | compiler/rustc_middle/src/ty/layout.rs | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/compiler/rustc_middle/src/ty/layout.rs b/compiler/rustc_middle/src/ty/layout.rs index eb25aecd9ce..22a6786665c 100644 --- a/compiler/rustc_middle/src/ty/layout.rs +++ b/compiler/rustc_middle/src/ty/layout.rs @@ -1212,7 +1212,6 @@ pub fn fn_can_unwind(tcx: TyCtxt<'_>, fn_def_id: Option<DefId>, abi: SpecAbi) -> | RiscvInterruptM | RiscvInterruptS | CCmseNonSecureCall - | Wasm | Unadjusted => false, Rust | RustCall | RustCold | RustIntrinsic => { tcx.sess.panic_strategy() == PanicStrategy::Unwind |
