| 1 | #[cfg(not(all(any(target_arch = "x86", target_arch = "x86_64"), feature = "simd")))] |
|---|---|
| 2 | #[inline(always)] |
| 3 | pub fn as_i32(value: f32) -> i32 { |
| 4 | value as i32 |
| 5 | } |
| 6 | |
| 7 | #[cfg(all(any(target_arch = "x86", target_arch = "x86_64"), feature = "simd"))] |
| 8 | #[inline(always)] |
| 9 | pub fn as_i32(value: f32) -> i32 { |
| 10 | #[cfg(target_arch = "x86")] |
| 11 | use core::arch::x86::*; |
| 12 | #[cfg(target_arch = "x86_64")] |
| 13 | use core::arch::x86_64::*; |
| 14 | |
| 15 | unsafe { _mm_cvtss_si32(_mm_set_ss(value)) } |
| 16 | } |
| 17 |
