_mm_stream_ss
Específicos do Microsoft
Grava dados de 32 bits para um local de memória sem polua os caches.
void _mm_stream_ss(
float * Dest,
__m128 Source
);
Parâmetros
[out]Dest
Um ponteiro para o local onde os dados de origem são gravados.[in]Source
Um número de 128 bits que contém o float valor a ser gravado em sua parte inferior de 32 bits..
Valor de retorno
Nenhum.
Requisitos
Intrínseca |
Arquitetura |
---|---|
_mm_stream_ss |
SSE4a |
Arquivo de cabeçalho <intrin.h>
Comentários
Nesse intrínsecas gera o movntss instrução. Para determinar o suporte de hardware para essa instrução, chame o __cpuid intrínseca com InfoType=0x80000001e verificar o bit 6 do CPUInfo[2] (ECX). Este bit é 1 quando a instrução é suportada e 0 caso contrário.
Se você executar o código que usa o _mm_stream_ss intrínseca em hardware não oferece suporte a movntss instruções, os resultados são imprevisíveis.
Exemplo
// 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;
}
END Microsoft específicos
Copyright 2007 pela Advanced Micro dispositivos, Inc. todos os direitos reservados. Reproduzido com permissão do Advanced Micro dispositivos, Inc.