Поделиться через


_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 (Generate Intrinsic Functions) при компиляции проекта, может оказаться, что _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");
}

Output

SSE2 enabled.

Эквивалент в .NET Framework

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Для получения дополнительной информации см. Примеры вызовов неуправляемого кода.

См. также

Ссылки

Функции библиотеки CRT