diff options
| author | Caleb Zulawski <caleb.zulawski@gmail.com> | 2023-07-28 21:38:58 -0400 |
|---|---|---|
| committer | Caleb Zulawski <caleb.zulawski@gmail.com> | 2023-07-28 21:38:58 -0400 |
| commit | 3da60554e59f0e9ffe85c717253dd0c3c681296b (patch) | |
| tree | 710e8d43bac9146c32408cf29bb19319bf958e72 | |
| parent | 6e8d21ee760d4672ed6c374c9be1687c531499fb (diff) | |
| download | rust-3da60554e59f0e9ffe85c717253dd0c3c681296b.tar.gz rust-3da60554e59f0e9ffe85c717253dd0c3c681296b.zip | |
Add footnote
| -rw-r--r-- | crates/core_simd/src/core_simd_docs.md | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crates/core_simd/src/core_simd_docs.md b/crates/core_simd/src/core_simd_docs.md index 3d2e737e2af..8acdeb04427 100644 --- a/crates/core_simd/src/core_simd_docs.md +++ b/crates/core_simd/src/core_simd_docs.md @@ -30,8 +30,10 @@ Instead, they map to a reasonable implementation of the operation for the target Consistency between targets is not compromised to use faster or fewer instructions. In some cases, `std::arch` will provide a faster function that has slightly different behavior than the `std::simd` equivalent. -For example, [`_mm_min_ps`](`core::arch::x86_64::_mm_min_ps`) can be slightly faster than [`SimdFloat::simd_min`], but does not conform to the IEEE standard also used by [`f32::min`]. +For example, [`_mm_min_ps`](`core::arch::x86_64::_mm_min_ps`)[^1] can be slightly faster than [`SimdFloat::simd_min`], but does not conform to the IEEE standard also used by [`f32::min`]. When necessary, [`Simd<T, N>`] can be converted to the types provided by `std::arch` to make use of target-specific functions. Many targets simply don't have SIMD, or don't support SIMD for a particular element type. In those cases, regular scalar operations are generated instead. + +[^1]: `_mm_min_ps(x, y)` is equivalent to `x.simd_lt(y).select(x, y)` |
