about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-05-08 18:41:16 +0000
committerbors <bors@rust-lang.org>2021-05-08 18:41:16 +0000
commit881c1ac408d93bb7adaa3a51dabab9266e82eee8 (patch)
tree4ac739f74d6c4eec4afe89ec6a299f41e22d511f
parentff34b919075f35a1787659e9c448a34b06bab8de (diff)
parentbf8b15f5533c852e69ba9051c96bbcac862bdfbb (diff)
Auto merge of #83278 - Amanieu:bump_stdarch, r=Mark-Simulacrum
Bump stdarch submodule

Major changes:
- More AVX-512 intrinsics.
- More ARM & AArch64 NEON intrinsics.
- Updated unstable WASM intrinsics to latest draft standards.
- Intrinsics that previously used `#[rustc_args_required_const]` now use const generics. See #83167 for more details.
- `std_detect` is now a separate crate instead of a submodule of `std`.
m---------library/stdarch0
-rw-r--r--src/test/ui/consts/const_arg_local.rs12
-rw-r--r--src/test/ui/consts/const_arg_local.stderr8
-rw-r--r--src/test/ui/consts/const_arg_promotable.rs12
-rw-r--r--src/test/ui/consts/const_arg_promotable.stderr8
-rw-r--r--src/test/ui/consts/const_arg_wrapper.rs12
-rw-r--r--src/test/ui/consts/const_arg_wrapper.stderr8
7 files changed, 27 insertions, 33 deletions
diff --git a/library/stdarch b/library/stdarch
-Subproject 19f5459dd0f89e466b7bcaa0f69ecca90f21a4d
+Subproject 6c4f4e1990b76be8a07bde1956d2e3452fd55ee
diff --git a/src/test/ui/consts/const_arg_local.rs b/src/test/ui/consts/const_arg_local.rs
index 0da4b44a968..9add1f8d5a3 100644
--- a/src/test/ui/consts/const_arg_local.rs
+++ b/src/test/ui/consts/const_arg_local.rs
@@ -1,13 +1,11 @@
-// only-x86_64
+#![feature(rustc_attrs)]
 
-#[cfg(target_arch = "x86")]
-use std::arch::x86::*;
-#[cfg(target_arch = "x86_64")]
-use std::arch::x86_64::*;
+#[rustc_args_required_const(0)]
+fn foo(_imm8: i32) {}
 
-unsafe fn pclmul(a: __m128i, b: __m128i) -> __m128i {
+fn bar() {
     let imm8 = 3;
-    _mm_clmulepi64_si128(a, b, imm8) //~ ERROR argument 3 is required to be a constant
+    foo(imm8) //~ ERROR argument 1 is required to be a constant
 }
 
 fn main() {}
diff --git a/src/test/ui/consts/const_arg_local.stderr b/src/test/ui/consts/const_arg_local.stderr
index 197b2f082e5..bad85471a6b 100644
--- a/src/test/ui/consts/const_arg_local.stderr
+++ b/src/test/ui/consts/const_arg_local.stderr
@@ -1,8 +1,8 @@
-error: argument 3 is required to be a constant
-  --> $DIR/const_arg_local.rs:10:5
+error: argument 1 is required to be a constant
+  --> $DIR/const_arg_local.rs:8:5
    |
-LL |     _mm_clmulepi64_si128(a, b, imm8)
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL |     foo(imm8)
+   |     ^^^^^^^^^
 
 error: aborting due to previous error
 
diff --git a/src/test/ui/consts/const_arg_promotable.rs b/src/test/ui/consts/const_arg_promotable.rs
index 25f45104d6a..cea3817550e 100644
--- a/src/test/ui/consts/const_arg_promotable.rs
+++ b/src/test/ui/consts/const_arg_promotable.rs
@@ -1,12 +1,10 @@
-// only-x86_64
+#![feature(rustc_attrs)]
 
-#[cfg(target_arch = "x86")]
-use std::arch::x86::*;
-#[cfg(target_arch = "x86_64")]
-use std::arch::x86_64::*;
+#[rustc_args_required_const(0)]
+fn foo(_imm8: i32) {}
 
-unsafe fn pclmul(a: __m128i, b: __m128i) -> __m128i {
-    _mm_clmulepi64_si128(a, b, *&mut 42) //~ ERROR argument 3 is required to be a constant
+fn bar() {
+    foo(*&mut 42) //~ ERROR argument 1 is required to be a constant
 }
 
 fn main() {}
diff --git a/src/test/ui/consts/const_arg_promotable.stderr b/src/test/ui/consts/const_arg_promotable.stderr
index 5de3ee6654a..b24b245b3ce 100644
--- a/src/test/ui/consts/const_arg_promotable.stderr
+++ b/src/test/ui/consts/const_arg_promotable.stderr
@@ -1,8 +1,8 @@
-error: argument 3 is required to be a constant
-  --> $DIR/const_arg_promotable.rs:9:5
+error: argument 1 is required to be a constant
+  --> $DIR/const_arg_promotable.rs:7:5
    |
-LL |     _mm_clmulepi64_si128(a, b, *&mut 42)
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL |     foo(*&mut 42)
+   |     ^^^^^^^^^^^^^
 
 error: aborting due to previous error
 
diff --git a/src/test/ui/consts/const_arg_wrapper.rs b/src/test/ui/consts/const_arg_wrapper.rs
index 92ff264cd2b..3dd3a2ffaf3 100644
--- a/src/test/ui/consts/const_arg_wrapper.rs
+++ b/src/test/ui/consts/const_arg_wrapper.rs
@@ -1,12 +1,10 @@
-// only-x86_64
+#![feature(rustc_attrs)]
 
-#[cfg(target_arch = "x86")]
-use std::arch::x86::*;
-#[cfg(target_arch = "x86_64")]
-use std::arch::x86_64::*;
+#[rustc_args_required_const(0)]
+fn foo(_imm8: i32) {}
 
-unsafe fn pclmul(a: __m128i, b: __m128i, imm8: i32) -> __m128i {
-    _mm_clmulepi64_si128(a, b, imm8) //~ ERROR argument 3 is required to be a constant
+fn bar(imm8: i32) {
+    foo(imm8) //~ ERROR argument 1 is required to be a constant
 }
 
 fn main() {}
diff --git a/src/test/ui/consts/const_arg_wrapper.stderr b/src/test/ui/consts/const_arg_wrapper.stderr
index 4acf2f0f4d1..9cd95a2020f 100644
--- a/src/test/ui/consts/const_arg_wrapper.stderr
+++ b/src/test/ui/consts/const_arg_wrapper.stderr
@@ -1,8 +1,8 @@
-error: argument 3 is required to be a constant
-  --> $DIR/const_arg_wrapper.rs:9:5
+error: argument 1 is required to be a constant
+  --> $DIR/const_arg_wrapper.rs:7:5
    |
-LL |     _mm_clmulepi64_si128(a, b, imm8)
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL |     foo(imm8)
+   |     ^^^^^^^^^
 
 error: aborting due to previous error