From e05bb26d9fdcfe69e9a6d225fe1b3ce07b7ffefd Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Thu, 10 Jun 2021 07:11:23 -0700 Subject: [PATCH] std: Stabilize wasm simd intrinsics This commit performs two changes to stabilize Rust support for WebAssembly simd intrinsics: * The stdarch submodule is updated to pull in rust-lang/stdarch#1179. * The `wasm_target_feature` feature gate requirement for the `simd128` feature has been removed, stabilizing the name `simd128`. This should conclude the FCP started on #74372 and... Closes #74372 --- compiler/rustc_codegen_ssa/src/target_features.rs | 2 +- library/core/src/lib.rs | 1 + library/stdarch | 2 +- src/test/rustdoc-ui/wasm-safe.rs | 2 -- src/test/ui/simd/wasm-simd-indirect.rs | 2 -- 5 files changed, 3 insertions(+), 6 deletions(-) diff --git a/compiler/rustc_codegen_ssa/src/target_features.rs b/compiler/rustc_codegen_ssa/src/target_features.rs index b10de567744dd..c89d42ecc58ac 100644 --- a/compiler/rustc_codegen_ssa/src/target_features.rs +++ b/compiler/rustc_codegen_ssa/src/target_features.rs @@ -205,7 +205,7 @@ const RISCV_ALLOWED_FEATURES: &[(&str, Option)] = &[ ]; const WASM_ALLOWED_FEATURES: &[(&str, Option)] = &[ - ("simd128", Some(sym::wasm_target_feature)), + ("simd128", None), ("atomics", Some(sym::wasm_target_feature)), ("nontrapping-fptoint", Some(sym::wasm_target_feature)), ]; diff --git a/library/core/src/lib.rs b/library/core/src/lib.rs index d4e4c5b0d3e54..d261fc85ba6b2 100644 --- a/library/core/src/lib.rs +++ b/library/core/src/lib.rs @@ -165,6 +165,7 @@ #![feature(no_niche)] // rust-lang/rust#68303 #![feature(no_coverage)] // rust-lang/rust#84605 #![feature(int_error_matching)] +#![cfg_attr(bootstrap, feature(target_feature_11))] #![deny(unsafe_op_in_unsafe_fn)] #![deny(or_patterns_back_compat)] diff --git a/library/stdarch b/library/stdarch index 37d6e1886369e..1e05dffbeeb80 160000 --- a/library/stdarch +++ b/library/stdarch @@ -1 +1 @@ -Subproject commit 37d6e1886369ea0176356286dc7fbd42ee5aa79c +Subproject commit 1e05dffbeeb80ba61bf59cc63b222d538d7825ed diff --git a/src/test/rustdoc-ui/wasm-safe.rs b/src/test/rustdoc-ui/wasm-safe.rs index 80b15ace0ee95..ba971342b46f5 100644 --- a/src/test/rustdoc-ui/wasm-safe.rs +++ b/src/test/rustdoc-ui/wasm-safe.rs @@ -1,7 +1,5 @@ // check-pass -#![feature(wasm_target_feature)] - #[cfg(any(target_arch = "wasm32", doc))] #[target_feature(enable = "simd128")] pub fn foo() {} diff --git a/src/test/ui/simd/wasm-simd-indirect.rs b/src/test/ui/simd/wasm-simd-indirect.rs index deac593df43f1..88f92fce2b2f9 100644 --- a/src/test/ui/simd/wasm-simd-indirect.rs +++ b/src/test/ui/simd/wasm-simd-indirect.rs @@ -1,7 +1,5 @@ // build-pass -#![cfg_attr(target_arch = "wasm32", feature(wasm_simd, wasm_target_feature))] - #[cfg(target_arch = "wasm32")] fn main() { unsafe {