Function core::arch::x86_64::_mm_round_ss

1.27.0 · source ·
pub unsafe fn _mm_round_ss(a: __m128, b: __m128, const ROUNDING: i32) -> __m128
Available on (x86 or x86-64) and target feature sse4.1 and x86-64 only.
Expand description

使用 ROUNDING 参数对 b 中的低位单精度 (32-bit) 浮点元素进行舍入,将结果作为单精度浮点元素存储在内部函数结果的低位元素中,并从 a 复制高位 3 个包装元素到内部函数结果的上层元素。

根据舍入参数进行舍入,该参数可以是以下之一:

#[cfg(target_arch = "x86")]
use std::arch::x86::*;
#[cfg(target_arch = "x86_64")]
use std::arch::x86_64::*;

// 四舍五入到最接近的值,并排除异常:
_MM_FROUND_TO_NEAREST_INT | _MM_FROUND_NO_EXC;
// 四舍五入并抑制异常:
_MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC;
// 汇总并排除异常:
_MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC;
// 截断并抑制异常:
_MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC;
// 使用 MXCSR.RC; 参见 `_MM_SET_ROUNDING_MODE`:
_MM_FROUND_CUR_DIRECTION;
Run

Intel’s documentation