about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-08-04 02:11:27 +0000
committerbors <bors@rust-lang.org>2024-08-04 02:11:27 +0000
commitb389b0ab72cb0aa9acf4df0ae0c0e12090782da9 (patch)
tree149c08051e0a293d5e1eee2b41905f0c357e6975
parent8f63e9f8732d8688f2b5e1c816569f65ee185c7e (diff)
parent01bda01e3374d73e98806f8e27cbb7f6ceb9ad98 (diff)
Auto merge of #128466 - sayantn:stdarch-update, r=tgross35
Update the stdarch submodule

cc `@tgross35` `@Amanieu`
r? `@tgross35`

try-job: dist-various-2
-rw-r--r--library/core/src/lib.rs1
m---------library/stdarch0
-rw-r--r--tests/codegen/simd/issue-120720-reduce-nan.rs21
3 files changed, 1 insertions, 21 deletions
diff --git a/library/core/src/lib.rs b/library/core/src/lib.rs
index 9306581dca9..e74900ff747 100644
--- a/library/core/src/lib.rs
+++ b/library/core/src/lib.rs
@@ -264,6 +264,7 @@
 #![feature(sse4a_target_feature)]
 #![feature(tbm_target_feature)]
 #![feature(wasm_target_feature)]
+#![feature(x86_amx_intrinsics)]
 // tidy-alphabetical-end
 
 // allow using `core::` in intra-doc links
diff --git a/library/stdarch b/library/stdarch
-Subproject df3618d9f35165f4bc548114e511c49c29e1fd9
+Subproject 47b929ddc521a78b0f699ba8d5c274d28593448
diff --git a/tests/codegen/simd/issue-120720-reduce-nan.rs b/tests/codegen/simd/issue-120720-reduce-nan.rs
deleted file mode 100644
index 13af0bb076e..00000000000
--- a/tests/codegen/simd/issue-120720-reduce-nan.rs
+++ /dev/null
@@ -1,21 +0,0 @@
-//@ compile-flags: -C opt-level=3 -C target-cpu=cannonlake
-//@ only-x86_64
-
-// In a previous implementation, _mm512_reduce_add_pd did the reduction with all fast-math flags
-// enabled, making it UB to reduce a vector containing a NaN.
-
-#![crate_type = "lib"]
-#![feature(stdarch_x86_avx512, avx512_target_feature)]
-use std::arch::x86_64::*;
-
-// CHECK-LABEL: @demo(
-#[no_mangle]
-#[target_feature(enable = "avx512f")] // Function-level target feature mismatches inhibit inlining
-pub unsafe fn demo() -> bool {
-    // CHECK: %0 = tail call reassoc double @llvm.vector.reduce.fadd.v8f64(
-    // CHECK: %_0.i = fcmp uno double %0, 0.000000e+00
-    // CHECK: ret i1 %_0.i
-    let res =
-        unsafe { _mm512_reduce_add_pd(_mm512_set_pd(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, f64::NAN)) };
-    res.is_nan()
-}