@@ -31571,7 +31571,7 @@ pub unsafe fn _mm512_mask_reduce_max_epi32(k: __mmask16, a: __m512i) -> i32 {
31571
31571
simd_reduce_max(simd_select_bitmask(
31572
31572
k,
31573
31573
a.as_i32x16(),
31574
- _mm512_undefined_epi32().as_i32x16( ),
31574
+ i32x16::splat(i32::MIN ),
31575
31575
))
31576
31576
}
31577
31577
@@ -31592,11 +31592,7 @@ pub unsafe fn _mm512_reduce_max_epi64(a: __m512i) -> i64 {
31592
31592
#[target_feature(enable = "avx512f")]
31593
31593
#[unstable(feature = "stdarch_x86_avx512", issue = "111137")]
31594
31594
pub unsafe fn _mm512_mask_reduce_max_epi64(k: __mmask8, a: __m512i) -> i64 {
31595
- simd_reduce_max(simd_select_bitmask(
31596
- k,
31597
- a.as_i64x8(),
31598
- _mm512_set1_epi64(0).as_i64x8(),
31599
- ))
31595
+ simd_reduce_max(simd_select_bitmask(k, a.as_i64x8(), i64x8::splat(i64::MIN)))
31600
31596
}
31601
31597
31602
31598
/// Reduce the packed unsigned 32-bit integers in a by maximum. Returns the maximum of all elements in a.
@@ -31619,7 +31615,7 @@ pub unsafe fn _mm512_mask_reduce_max_epu32(k: __mmask16, a: __m512i) -> u32 {
31619
31615
simd_reduce_max(simd_select_bitmask(
31620
31616
k,
31621
31617
a.as_u32x16(),
31622
- _mm512_undefined_epi32 ().as_u32x16(),
31618
+ _mm512_setzero_si512 ().as_u32x16(),
31623
31619
))
31624
31620
}
31625
31621
@@ -31643,7 +31639,7 @@ pub unsafe fn _mm512_mask_reduce_max_epu64(k: __mmask8, a: __m512i) -> u64 {
31643
31639
simd_reduce_max(simd_select_bitmask(
31644
31640
k,
31645
31641
a.as_u64x8(),
31646
- _mm512_set1_epi64(0 ).as_u64x8(),
31642
+ _mm512_setzero_si512( ).as_u64x8(),
31647
31643
))
31648
31644
}
31649
31645
@@ -31718,7 +31714,7 @@ pub unsafe fn _mm512_mask_reduce_min_epi32(k: __mmask16, a: __m512i) -> i32 {
31718
31714
simd_reduce_min(simd_select_bitmask(
31719
31715
k,
31720
31716
a.as_i32x16(),
31721
- _mm512_undefined_epi32().as_i32x16( ),
31717
+ i32x16::splat(i32::MAX ),
31722
31718
))
31723
31719
}
31724
31720
@@ -31739,11 +31735,7 @@ pub unsafe fn _mm512_reduce_min_epi64(a: __m512i) -> i64 {
31739
31735
#[target_feature(enable = "avx512f")]
31740
31736
#[unstable(feature = "stdarch_x86_avx512", issue = "111137")]
31741
31737
pub unsafe fn _mm512_mask_reduce_min_epi64(k: __mmask8, a: __m512i) -> i64 {
31742
- simd_reduce_min(simd_select_bitmask(
31743
- k,
31744
- a.as_i64x8(),
31745
- _mm512_set1_epi64(0).as_i64x8(),
31746
- ))
31738
+ simd_reduce_min(simd_select_bitmask(k, a.as_i64x8(), i64x8::splat(i64::MAX)))
31747
31739
}
31748
31740
31749
31741
/// Reduce the packed unsigned 32-bit integers in a by minimum. Returns the minimum of all elements in a.
@@ -31766,7 +31758,7 @@ pub unsafe fn _mm512_mask_reduce_min_epu32(k: __mmask16, a: __m512i) -> u32 {
31766
31758
simd_reduce_min(simd_select_bitmask(
31767
31759
k,
31768
31760
a.as_u32x16(),
31769
- _mm512_undefined_epi32().as_u32x16( ),
31761
+ u32x16::splat(u32::MAX ),
31770
31762
))
31771
31763
}
31772
31764
@@ -31787,11 +31779,7 @@ pub unsafe fn _mm512_reduce_min_epu64(a: __m512i) -> u64 {
31787
31779
#[target_feature(enable = "avx512f")]
31788
31780
#[unstable(feature = "stdarch_x86_avx512", issue = "111137")]
31789
31781
pub unsafe fn _mm512_mask_reduce_min_epu64(k: __mmask8, a: __m512i) -> u64 {
31790
- simd_reduce_min(simd_select_bitmask(
31791
- k,
31792
- a.as_u64x8(),
31793
- _mm512_set1_epi64(0).as_u64x8(),
31794
- ))
31782
+ simd_reduce_min(simd_select_bitmask(k, a.as_u64x8(), u64x8::splat(u64::MAX)))
31795
31783
}
31796
31784
31797
31785
/// Reduce the packed single-precision (32-bit) floating-point elements in a by minimum. Returns the minimum of all elements in a.
@@ -31862,11 +31850,7 @@ pub unsafe fn _mm512_reduce_and_epi32(a: __m512i) -> i32 {
31862
31850
#[target_feature(enable = "avx512f")]
31863
31851
#[unstable(feature = "stdarch_x86_avx512", issue = "111137")]
31864
31852
pub unsafe fn _mm512_mask_reduce_and_epi32(k: __mmask16, a: __m512i) -> i32 {
31865
- simd_reduce_and(simd_select_bitmask(
31866
- k,
31867
- a.as_i32x16(),
31868
- _mm512_set1_epi32(0xFF).as_i32x16(),
31869
- ))
31853
+ simd_reduce_and(simd_select_bitmask(k, a.as_i32x16(), i32x16::splat(-1)))
31870
31854
}
31871
31855
31872
31856
/// Reduce the packed 64-bit integers in a by bitwise AND. Returns the bitwise AND of all elements in a.
@@ -31886,12 +31870,7 @@ pub unsafe fn _mm512_reduce_and_epi64(a: __m512i) -> i64 {
31886
31870
#[target_feature(enable = "avx512f")]
31887
31871
#[unstable(feature = "stdarch_x86_avx512", issue = "111137")]
31888
31872
pub unsafe fn _mm512_mask_reduce_and_epi64(k: __mmask8, a: __m512i) -> i64 {
31889
- simd_reduce_and(simd_select_bitmask(
31890
- k,
31891
- a.as_i64x8(),
31892
- _mm512_set1_epi64(1 << 0 | 1 << 1 | 1 << 2 | 1 << 3 | 1 << 4 | 1 << 5 | 1 << 6 | 1 << 7)
31893
- .as_i64x8(),
31894
- ))
31873
+ simd_reduce_and(simd_select_bitmask(k, a.as_i64x8(), i64x8::splat(-1)))
31895
31874
}
31896
31875
31897
31876
/// Reduce the packed 32-bit integers in a by bitwise OR. Returns the bitwise OR of all elements in a.
0 commit comments