Function core::arch::x86_64::_mm_loadr_ps

1.27.0 · source ·
pub unsafe fn _mm_loadr_ps(p: *const f32) -> __m128
Available on (x86 or x86-64) and target feature sse and x86-64 only.
Expand description

从对齐的内存中以相反的顺序将四个 f32 值加载到 __m128 中。

如果指针未与 128 位边界 (16 个字节) 对齐,则将触发一般保护错误 (致命程序崩溃)。

在功能上等效于以下代码序列 (假设 p 满足对齐限制) :

let a0 = *p;
let a1 = *p.add(1);
let a2 = *p.add(2);
let a3 = *p.add(3);
__m128::new(a3, a2, a1, a0)

这对应于指令 VMOVAPS/MOVAPS,然后进行一些改组。

Intel’s documentation