Compartir a través de


_mm_stream_ss

Específicos de Microsoft

Escribe datos de 32 bits en una ubicación de memoria sin contaminar las memorias caché.

Sintaxis

void _mm_stream_ss(
   float * Destination,
   __m128 Source
);

Parámetros

Destino
[out] Puntero a la ubicación donde se escriben los datos de origen.

Origen
[in] Número de 128 bits que contiene el valor float que se escribirá en sus 32 bits inferiores.

Valor devuelto

Ninguno.

Requisitos

Intrinsic Arquitectura
_mm_stream_ss SSE4a

Archivo de encabezado<intrin.h>

Comentarios

El intrínseco genera la instrucción movntss. Para determinar la compatibilidad de hardware con esta instrucción, llame al intrínseco __cpuid con InfoType=0x80000001 y compruebe el bit 6 de CPUInfo[2] (ECX). Este bit es 1 cuando se admite la instrucción y 0 cuando no.

Si ejecuta código que usa el intrínseco _mm_stream_ss en hardware que no admite la instrucción movntss, los resultados son impredecibles.

Ejemplo

// 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[2] = " << f[2] << ", f[3] = " << f[3] << endl;
}
f[0] = -1, f[1] = -2
f[2] = -3, f[3] = 3

FIN de Específicos de Microsoft

Copyright 2007 de Advanced Micro Devices, Inc en determinadas secciones. Todos los derechos reservados. Reproducido con el permiso de Advanced Micro Devices, Inc.

Consulte también

_mm_stream_sd
_mm_stream_ps
_mm_store_ss
_mm_sfence
Intrínsecos del compilador