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

auto-ilp32、Qauto-ilp32

32 ビット・ポインターに安全に変換できる 64 ビット・ポインターがあるかどうか、および 32 ビットの long に安全に変換できる 64 ビットの long (Linux*) があるかどうか、プログラムを解析するようにコンパイラーに指示します。

アーキテクチャーの制限

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

構文

Linux* および macOS*:

-auto-ilp32

Windows*:

/Qauto-ilp32

引数

なし

デフォルト

オフ

最適化は実行されません。

説明

このオプションは、32 ビット・ポインターに安全に変換できる 64 ビット・ポインターがあるかどうか、および 32 ビットの long に安全に変換できる 64 ビットの long (Linux*) があるかどうか、プログラムを解析するようにコンパイラーに指示します。

macOS* システムでこの最適化が行われるようにするには、-no-pie オプションも指定する必要があります。

このオプションを有効にするには、コンパイラーは [Q]ipo オプションを使用した最適化の実行、およびプログラムによるライブラリー/外部呼び出しの解析ができなければなりません。Linux* システムでは、-x オプションで SSE3 またはそれ以上を指定しない限り、このオプションは効果がありません。

このオプションでは、実行プログラムのサイズは 232 バイトまでに制限され、すべてのデータは 32 ビット以内で表現されなければなりません。32 ビットのシステムで正常に動作するプログラムは、暗黙的にこれらの条件を満たしています。プログラムがこれらの制約に違反する場合、予期しない動作が発生することがあります。

IDE オプション

なし

代替オプション

なし

関連情報