_set_SSE2_enable
Включает или отключает использование инструкций Streaming SIMD Extensions 2 (SSE2) в математических подпрограммах CRT. (Эта функция недоступна в архитектурах x64, так как SSE2 включена по умолчанию.)
Синтаксис
int _set_SSE2_enable(
int flag
);
Параметры
flag
1 для включения реализации SSE2; 0 для отключения реализации SSE2. По умолчанию реализация SSE2 включена для процессоров, которые ее поддерживают.
Возвращаемое значение
Ненулевое значение, если реализация SSE2 включена; ноль, если реализация SSE2 отключена.
Замечания
Следующие функции имеют реализации SSE2, которые могут быть включены с помощью функции _set_SSE2_enable
:
Реализации этих функций SSE2 могут немного отличаться от реализаций по умолчанию. Промежуточные значения SSE2 — 64-разрядные числа с плавающей запятой, но промежуточные значения реализации по умолчанию — 80-разрядные числа с плавающей запятой.
Примечание.
Если при компиляции проекта используется параметр компилятора /Oi (создание встроенных функций), может оказаться, что функция _set_SSE2_enable
не оказывает никакого влияния. Параметр компилятора /Oi позволяет компилятору использовать встроенные функции для замены вызовов CRT. Это поведение переопределяет эффект _set_SSE2_enable
. Если вы хотите гарантировать, что /Oi не переопределяется _set_SSE2_enable
, используйте /Oi- для компиляции проекта. Это также может быть полезно при использовании других коммутаторов компилятора, которые подразумевают /Oi.
Реализация SSE2 используется только в том случае, если все исключения маскированы. Используется _control87
для _controlfp
маскирования исключений.
Требования
Маршрут | Обязательный заголовок |
---|---|
_set_SSE2_enable |
<math.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
// crt_set_SSE2_enable.c
// processor: x86
#include <math.h>
#include <stdio.h>
int main()
{
int i = _set_SSE2_enable(1);
if (i)
printf("SSE2 enabled.\n");
else
printf("SSE2 not enabled; processor does not support SSE2.\n");
}
SSE2 enabled.
См. также
Файлы среды выполнения C (CRT) и стандартной библиотеки C++ (STL) .lib