Function core::arch::x86_64::_mm_round_sd

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

使用 ROUNDING 参数将 b 中的低位双精度浮点元素 (64-bit) 舍入,将结果作为双精度浮点元素存储在内部结果的低位元素中,并将高位元素从 a 复制到高位元素的内在结果。

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

#[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