Condividi tramite


_mm_stream_ss

Sezione specifica Microsoft

Scrive i dati a 32 bit in una posizione di memoria senza inquinare le cache.

Sintassi

void _mm_stream_ss(
   float * Destination,
   __m128 Source
);

Parametri

Destinazione
[out] Puntatore alla posizione in cui sono scritti i dati di origine.

Origine
[in] Numero a 128 bit che contiene il float valore da scrivere nei 32 bit inferiori.

Valore restituito

Nessuno.

Requisiti

Intrinsic Architettura
_mm_stream_ss SSE4a

<File di intestazione intrin.h>

Osservazioni:

L'oggetto intrinseco genera l'istruzione movntss . Per determinare il supporto hardware per questa istruzione, chiamare l'oggetto intrinseco con InfoType=0x80000001 e controllare il __cpuid bit 6 di CPUInfo[2] (ECX). Questo bit è 1 quando l'istruzione è supportata e 0 in caso contrario.

Se si esegue codice che usa l'intrinseco sull'hardware _mm_stream_ss che non supporta l'istruzione movntss , i risultati sono imprevedibili.

Esempio

// 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

Fine sezione specifica Microsoft

Parti copyright 2007 di Advanced Micro Devices, Inc. Tutti i diritti riservati. Riprodotto con l'autorizzazione da Advanced Micro Devices, Inc.

Vedi anche

_mm_stream_sd
_mm_stream_ps
_mm_store_ss
_mm_sfence
Intrinseci del compilatore