Oracle Solaris Studio 12.2: Fortran ユーザーズガイド

3.4.107 –xaddr32[={ yes|no}]

(x86/x64 のみ) -xaddr32=yes コンパイルフラグは、生成される実行可能ファイルまたは共有オブジェクトを 32 ビットアドレス空間に制限します。

この方法で実行可能ファイルをコンパイルすると、32 ビットアドレス空間に制限されたプロセスが生成されます。-xaddr32=no を指定すると、通常の 64 ビットバイナリが生成されます。-xaddr32 オプションを指定しないと、-xaddr32=no が想定されます。-xaddr32 だけを指定すると、-xaddr32=yes が使用されます。

このオプションは -m64 コンパイルだけに適用され、SF1_SUNW_ADDR32 ソフトウェア機能をサポートする Solaris プラットフォームでのみ適用されます。Linux カーネルはアドレス空間制限をサポートしないため、このオプションは Linux では使用できません。-xaddr32 オプションは Linux では無視されます。

リンクするときには、単一のオブジェクトファイルが -xaddr32=yes を使用してコンパイルされていると、出力ファイル全体が -xaddr32=yes を使用してコンパイルされていると見なされます。32 ビットアドレス空間に制限された共有オブジェクトは、制限された 32 ビットモードアドレス空間内で実行されるプロセスによってロードされる必要があります。詳細は、『リンカーとライブラリ』で説明されている SF1_SUNW_ADDR32 ソフトウェア機能の定義を参照してください。