opt-subscript-in-range、Qopt-subscript-in-range

 

ループの添字式の中間演算でオーバーフローがないことを、コンパイラーが仮定するかどうか指定します。

IDE オプション

なし

アーキテクチャー

IA-32 アーキテクチャーおよびインテル® 64 アーキテクチャー

構文

Linux および Mac OS X:

-opt-subscript-in-range

-no-opt-subscript-in-range

Windows:

/Qopt-subscript-in-range

/Qopt-subscript-in-range-

引数

なし

デフォルト

-no-opt-subscript-in-range
または /Qopt-subscript-in-range-

コンパイラーは、ループの添字式の中間演算でオーバーフローを仮定します。

説明

このオプションは、ループの添字式の中間演算でオーバーフローがないことを、コンパイラーが仮定するかどうか指定します。

-opt-subscript-in-range (Linux および Mac OS X) または /Qopt-subscript-in-range (Windows) を指定すると、コンパイラーはデータ型の変換を無視し、添字式の中間演算でオーバーフローがないことを仮定します。この機能は、より多くのループ変換を可能にします。

代替オプション

なし

これらのオプションが役立つ例を次に示します。m は integer(kind=8) (64 ビット) 型として宣言され、添字内のその他の変数はすべて integer(kind=4) (32 ビット) として宣言されています。

A[ i + j + ( n + k) * m ]