インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

Qpatchable-addresses

静的に割り当てられたアドレスへの参照がパッチできるようにコードを生成するようにコンパイラーに指示します。

アーキテクチャーの制限

インテル® 64 アーキテクチャーでのみ利用できます。

構文

Linux* および macOS*:

なし

Windows*:

/Qpatchable-addresses

引数

なし

デフォルト

オフ

コンパイラーはパッチ可能なアドレスを生成しません。

説明

このオプションは、静的に割り当てられたアドレスへの参照を任意の 64 ビット・アドレスでパッチできるようにコードを生成するようにコンパイラーに指示します。

通常、インテル® 64 アーキテクチャーで実行される Windows* コンパイラーは、静的に割り当てられたコードとデータの参照に 32 ビットの相対アドレス指定を使用します。これは、Windows* オブジェクト形式で決められている、コードまたはデータがアクセスポイントから 2GB 以内にあるとの仮定に基づいています。

ただし、一部のパッチシステムでは、グローバルアドレスを (アクセスポイントから 2GB 以内にはない可能性のある) 任意の 64 ビット・アドレスに置き換えることができると便利です。

このオプションを指定すると、コンパイラーは 32 ビットの相対アドレス指定よりも 64 ビットの直接アドレス指定を優先し、追加のコード変更を必要としない場所にパッチされるようにします。一般に 64 ビットの直接アドレス指定よりも、32 ビットの相対アドレス指定の方が効率的なため、このオプションによりコードサイズが増加し、パフォーマンスに影響を与えることがあります。

IDE オプション

なし

代替オプション

なし