_mm_stream_ss

Microsoft 专用

对内存位置编写 32 位数据没有污染缓存。

void _mm_stream_ss(
   float * Dest,
   __m128 Source
);

参数

  • [out] Dest
    对源数据写入的位置的指针。

  • [in] Source
    包含在其底部 32 位将写入的值。 float 的 128 位数字。

返回值

无。

要求

内部

体系结构

_mm_stream_ss

SSE4a

头文件 <intrin.h>

备注

此内部生成 movntss命令。 若要确定硬件为此命令支持,调用与 InfoType=0x80000001的 __cpuid 内部和校验位 6 CPUInfo[2] (ECX)。 当该指令受支持时,此位为 1,否则为 0。

如果运行使用在硬件的 _mm_stream_ss 内部不支持 movntss 命令的代码,结果是不可预知的。

示例

// Compile this sample with: /EHsc
#include <iostream>
#include <intrin.h>
using namespace std;

int main()
{
    __m128 vals;
    float f[4];

    f[0] = -1.;
    f[1] = -2.;
    f[2] = -3.;
    f[3] = -4.;
    vals.m128_f32[0] = 0.;
    vals.m128_f32[1] = 1.;
    vals.m128_f32[2] = 2.;
    vals.m128_f32[3] = 3.;
    _mm_stream_ss(&f[3], vals);
    cout << "f[0] = " << f[0] << ", f[1] = " << f[1] << endl;
    cout << "f[1] = " << f[1] << ", f[3] = " << f[3] << endl;
}
  

特定于 Microsoft 的结尾

由 Advanced Micro 设备,公司所有权利版权所有 2007 中保留了。 重现经 Advanced Micro 设备授予,公司

请参见

参考

_mm_stream_sd

编译器内部函数

其他资源

_mm_stream_ps

_mm_store_ss

_mm_sfence

流式支持缓存的 SIMD 扩展