/QIPF_noPIC (создание кода, зависящего от позиции)
Обновлен: Ноябрь 2007
По умолчанию компилятор Visual C++ для процессоров семейства Itanium создает код, не зависящий от позиции. Использование параметра /QIPF_noPIC позволяет создавать код, зависящий от позиции.
/QIPF_noPIC
Заметки
Примечание. |
---|
Параметр /QIPF_noPIC доступен только в компиляторах, предназначенных для Itanium. Этот параметр компилятора недоступен в компиляторах, предназначенных для платформы x64 или x86. |
Код, не зависящий от позиции, загружается быстрее, чем код, зависящий от позиции, в случае, если образ не удается загрузить по предпочтительному адресу, поскольку относительную адресацию в коде, не зависящем от позиции, не нужно исправлять, если образ загружается по адресу, отличному от предпочтительного. Помимо этого, операционная система Windows дает пользователям возможность использовать код совместно, если он не исправлялся, тогда как в случае исправления каждый пользователь получает отдельный экземпляр исправленного кода.
Тем не менее, код, не зависящий от позиции, может работать медленнее, чем код, зависящий от позиции, если образ не удалось загрузить по предпочтительному адресу. Так, например, серверное приложение, пользователей которого не затрагивает вопрос (возможного) увеличения времени загрузки, и которое редко запускается в нескольких экземплярах одновременно, может выиграть благодаря повышению производительности, обеспечиваемому кодом, зависящим от позиции.
Установка параметра компилятора в среде разработки Visual Studio
- Параметр /QIPF_noPIC недоступен в среде разработки Visual Studio.
Установка параметра компилятора программным способом
- См. раздел AdditionalOptions.