/Oi (создание встроенных функций)
Обновлен: Ноябрь 2007
Заменяет вызов некоторых функций на встроенные или какие-либо другие формы функции, которые способствуют более быстрому выполнению приложения.
/Oi[-]
Заметки
Программы, использующие встроенные функции, выполняются быстрее, поскольку у них нет дополнительных издержек на вызов функции, но могут быть большего размера из-за создания дополнительного кода.
Дополнительные сведения о функциях, имеющих встроенную форму, см. в описании intrinsic.
Параметр /Oi представляет собой запрос компилятору на замену вызова некоторых функций встроенными функциями. Компилятор может вызывать функцию (и не заменять вызов функции на встроенную форму), если это приведет к повышению производительности.
Специфика для платформы x86
Встроенные функции с плавающей запятой не выполняют каких-либо особых проверок входных значений. Поэтому они работают с ограниченным диапазоном входных данных и имеют обработку исключений и граничные условия, отличные от стандартных процедур библиотеки с тем же именем. При использовании встроенных форм теряется обработка исключений IEEE и функции _matherr и errno. Последнее, в свою очередь, приводит к утрате ANSI-совместимости. Однако использование встроенных форм может значительно ускорить выполнение программ с плавающей запятой. Кроме того для многих программ вопросы совместимости не имеют практического значения.
Чтобы переопределить создание фактических встроенных параметров с плавающей запятой, следует использовать /Za, /Ze (отключить расширения языка). В этом случае функции создаются как стандартные библиотечные процедуры, которые передают аргументы непосредственно в чип с плавающей запятой, а не в стек программы.
Специфика для платформы x86 — окончание
Также можно использовать intrinsic, чтобы создавать встроенные функции, или function (C/C++) для явного принудительного вызова функции.
Установка данного параметра компилятора в среде разработки Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Дополнительные сведения см. в разделе Открытие свойств страниц проекта.
Щелкните папку C/C++.
Перейдите на страницу свойств Оптимизация.
Измените свойство Включить встроенные функции.
Установка данного параметра компилятора программным способом
- См. раздел EnableIntrinsicFunctions.
См. также
Ссылки
Параметры /O (оптимизация кода)