ILP32 32 ビットモデル用にコンパイルするには、-m32 オプションを使用します。ILP64 64 ビットモデル用にコンパイルするには、—m64 オプションを使用します。
ILP32 モデルは、C 言語の int、long、および pointer データ型がそれぞれ 32 ビット拡張であることを指定します。LP64 モデルは、long および pointer データ型がそれざれ 64 ビット拡張、int が 32 ビット拡張であることを指定します。Oracle Solaris および Oracle Linux OS はまた、LP64 データ型モデルの下で大規模ファイルや大規模配列もサポートしています。