/QIPF_noPIC (產生與位置有關的程式碼)
Visual C++ 編譯器是預設為供 Itanium 產生與位置無關的程式碼。 /QIPF_noPIC 會產生附與位置有關之程式碼的影像。
/QIPF_noPIC
備註
注意事項 |
---|
/QIPF_noPIC 僅能在適用於 Itanium 的編譯器中使用。以 x64 或 x86 為目標的編譯器中,無法使用這個編譯器選項。 |
如果影像無法載入慣用的位址,與位置無關的程式碼可以比與位置有關的程式碼更迅速載入,因為與位置無關之程式碼中的相對位址在影像載入其慣用位址以外之其他位址時不會進行填補,而且 Windows 允許使用者共用不填補的相同程式碼,而有填補的程式碼是每個使用者各有不同的執行個體。
但是如果影像不能載入慣用位址時,與位置無關的程式碼效能也許會比與位置有關的程式碼差。例如伺服器應用程式,使用者不在乎 (可能會) 花較長的時間啟動,也很少同時執行應用程式的幾個複本,他們就可能會因與位置有關的程式碼所能提供的較佳效能而受益。
在 Visual Studio 開發環境中設定這個編譯器選項
- 在 Visual Studio 開發環境中,無法使用 /QIPF_noPIC。
若要以程式方式設定這個編譯器選項
- 請參閱 AdditionalOptions。