OPTIMIZE を指定してコンパイルする場合、MAXMEM オプションは、 メモリーを多く消費する特定の最適化のローカル・テーブル用に 使用されるメモリーの量を、指定したキロバイト数までに制限します。 指定できる最小キロバイト数は 1 です。指定できる最大キロバイト数は 2097152 で、デフォルトは 1048576 です。
最大値の 2097152 を指定した場合、 コンパイラーは無制限のメモリーが使用可能であることを想定します。 最大値より小さい値を MAXMEM に指定した場合 (特に OPT(2) オプションが 有効の場合) は、コンパイラーがメッセージを出すことがあります。 このメッセージは、最適化が禁止されていることを示し、MAXMEM に より大きな値を使用するようにユーザーに促します。
MAXMEM オプションは、使用可能なメモリーの量がデフォルト値によって 暗黙指定される量より少ない (または多い) ことが分かっている場合に 使用してください。
MAXMEM オプションに指定したメモリーが最適化に十分でない場合は、 最適化の品質が低下した状態でコンパイルが完了し、警告メッセージが出されます。
>>-MAXMEM--(size)----------------------------------------------><
省略形: MAXM
MAXMEM に大きなサイズを指定した場合は、 コンパイルされるソース・ファイル、ソース内のサブプログラムのサイズ、 およびコンパイル用に使用できる仮想記憶域のサイズによっては、 仮想記憶域の不足が原因でコンパイルが停止する場合があります。
MAXMEM オプションを使用する利点は、大規模で複雑なアプリケーションを コンパイルする場合に、コンパイラーが「仮想記憶域の不足」を示す エラー・メッセージを出してコンパイルを終了するのでなく、最適化品質の少し低下した オブジェクト・モジュールを作成して、警告メッセージを生成することです。