Skip to content

Commit e06e54c

Browse files
Merge pull request #394 from rust-lang/sync-upstream-2024-02-17
Sync upstream 2024 Feb 17
2 parents 7348d2d + 9aec60e commit e06e54c

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

crates/core_simd/src/core_simd_docs.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Instead, they map to a reasonable implementation of the operation for the target
3030

3131
Consistency between targets is not compromised to use faster or fewer instructions.
3232
In some cases, `std::arch` will provide a faster function that has slightly different behavior than the `std::simd` equivalent.
33-
For example, [`_mm_min_ps`](`core::arch::x86_64::_mm_min_ps`)[^1] can be slightly faster than [`SimdFloat::simd_min`](`num::SimdFloat::simd_min`), but does not conform to the IEEE standard also used by [`f32::min`].
33+
For example, `_mm_min_ps`[^1] can be slightly faster than [`SimdFloat::simd_min`](`num::SimdFloat::simd_min`), but does not conform to the IEEE standard also used by [`f32::min`].
3434
When necessary, [`Simd<T, N>`] can be converted to the types provided by `std::arch` to make use of target-specific functions.
3535

3636
Many targets simply don't have SIMD, or don't support SIMD for a particular element type.

crates/core_simd/src/swizzle_dyn.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ where
5555
16 => transize(vqtbl1q_u8, self, idxs),
5656
#[cfg(all(target_feature = "avx2", not(target_feature = "avx512vbmi")))]
5757
32 => transize_raw(avx2_pshufb, self, idxs),
58-
#[cfg(target_feature = "avx512vl,avx512vbmi")]
58+
#[cfg(all(target_feature = "avx512vl", target_feature = "avx512vbmi"))]
5959
32 => transize(x86::_mm256_permutexvar_epi8, self, idxs),
6060
// Notable absence: avx512bw shuffle
6161
// If avx512bw is available, odds of avx512vbmi are good

crates/core_simd/src/vendor/arm.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,12 @@ use core::arch::arm::*;
77
#[cfg(target_arch = "aarch64")]
88
use core::arch::aarch64::*;
99

10-
#[cfg(any(
11-
target_arch = "aarch64",
12-
all(target_arch = "arm", target_feature = "v7"),
10+
#[cfg(all(
11+
any(
12+
target_arch = "aarch64",
13+
all(target_arch = "arm", target_feature = "v7"),
14+
),
15+
target_endian = "little"
1316
))]
1417
mod neon {
1518
use super::*;

0 commit comments

Comments
 (0)