値の伝播

Visual Fortran は,変数と定数に代入される値 (DATA 文のものを含む) を,それらが使用されているすべての場所で追跡します。Visual Fortran は,効率がよくなるのであれば,それらの場所で値そのものを使用します。

副プログラムをコンパイルするとき,Visual Fortran はプログラムを解析して,サブルーチンが 2 度以上呼び出された場合に,伝播を安全に行えるかどうかを確認します。

値の伝播は,一般により多くの値の伝播を引き起こします。Visual Fortran は実行時の演算,比較,および飛越しを,さらには文全体を削除することができます。

次の例では,定数が伝播されるために,実行時には複数の演算が削除されます。

	元のコード			最適化されたコード
	
	   PI = 3.14			   .
	   .				   .
	   .				   .
	   .				   .
	   PIOVER2 = PI/2		   PIOVER2 = 1.57
	   .				   .
	   .				   .
	   .				   .
	   I = 100			   I = 100
	   .				   .
	   .				   .
	   .				   .
	   IF (I.GT.1) GOTO 10		   .
	   .				   .
	   .				   .
	   .				   .
	10 A(I) = 3.0*Q			10 A(100) = 3.0*Q