Sun Studio 12: Fortran プログラミングガイド

8.3.1 拡張 tcov 解析

tcov を使用するには、 -xprofile=tcov を付けてコンパイルします。プログラムを実行するとき、カバレージデータは program.profile/tcovd に格納されます。program は実行可能ファイルの名前です。実行可能ファイルが a.out の場合、a.out.profile/tcovd が作成されます。

tcov -x dirname source_files を実行して、ソースファイルごとにマージされたカバレージ解析を作成します。レポートは、現在のディレクトリにある file.tcov に書き込まれます。

簡単な例を実行します。


demo% f95 -o onetwo -xprofile=tcov one.f two.f
demo% onetwo
       ... プログラムからの出力が表示される
demo% tcov -x onetwo.profile one.f two.f
demo% cat one.f.tcov two.f.tcov
                       program one
      1 ->             do i=1,10
      10 ->                     call two(i)
                       end do
      1 ->             end
       .....etc
demo%

環境変数 $SUN_PROFDATA$SUN_PROFDATA_DIR を使用すると、中間データ収集ファイルが格納される場所を指定できます。中間データ収集ファイルは *.dtcovd ファイルで、それぞれ古いスタイルの tcov と新しいスタイルの tcov によって作成されます。

これらの環境変数を使用して、異なる実行から収集されたデータを分けることができます。これらの環境変数を設定すると、実行プログラムは実行データを $SUN_PROFDATA_DIR/$SUN_PROFDATA/ 中のファイルに書き込みます。

同様に、tcov が読み出すディレクトリは、tcov -x $SUN_PROFDATA で指定されます。$SUN_PROFDATA_DIR が設定された場合、tcov はそれを前に付けて、作業中のディレクトリではなく、$SUN_PROFDATA_DIR/$SUN_PROFDATA/ 中でファイルを探します。

それぞれ、このあとの実行のたびに tcovd ファイルに、さらにデータが追加されます。各オブジェクトファイルのデータは、ソースファイルが再コンパイルされたあとにプログラムがはじめて実行されるときにクリアされます。プログラム全体のデータは、tcovd ファイルを削除したときにクリアされます。

詳細は、tcov(1) のマニュアルページを参照してください。