_mm_stream_ss
Только для систем Microsoft
Записывает 32 бита данных в расположение в памяти без polluting кэши.
void _mm_stream_ss(
float * Dest,
__m128 Source
);
Параметры
[исходящий] Dest
Указатель на место, где исходные данные записываются.[входящий] Source
128 Бита, содержащее значение float чисел, записываемое в его битах снизу 32.
Возвращаемое значение
Отсутствует.
Требования
Встроенный объект |
Архитектура |
---|---|
_mm_stream_ss |
SSE4a |
Файл заголовка <intrin.h>
Заметки
Этот встроенный создает инструкцию movntss. Чтобы определить аппаратную поддержку этой инструкции вызовите внутреннего элемента __cpuid с InfoType=0x80000001 и контрольным двоичные разрядом 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;
}
ЭЛЕМЕНТ, относящийся Майкрософт
Авторские права 2007 предварительными микро- Устройствами, Inc все права защищены. Воспроизведено с разрешением от предварительных микро- Устройств, Inc
См. также
Ссылки
Встроенные объекты компилятора
Другие ресурсы
Расширения SIMD потоковой передачи, которые поддерживают кэширование