Oracle® Developer Studio 12.5: パフォーマンスアナライザ

印刷ビューの終了

更新: 2016 年 6 月
 
 

ソースリストと逆アセンブリリストを管理するコマンド

ここでは、注釈付きソースおよび逆アセンブリコードの表示を制御するコマンドを説明します。

source|src { filename | function-name } [ N]

指定したファイル、または指定した関数を含むファイルの注釈付きソースコードを書き出します。いずれの場合も、指定したファイルはパスの通っているディレクトリに存在する必要があります。ソースが GNU Fortran コンパイラでコンパイルされている場合は、ソースに表示されるように、関数名のあとにアンダースコアを 2 つ追加する必要があります。

省略可能なパラメータ N (正の整数) は、ファイル名または関数名があいまいでない場合にだけ使用します。このパラメータを指定した場合は、N 番目の候補が使用されます。数値指定子を使用せずにあいまいな名前を指定した場合、er_print ユーティリティーは可能性のあるオブジェクトファイル名のリストを出力します。指定した名前が関数の場合、関数の名前がオブジェクトファイル名に付加され、そのオブジェクトファイルの N の値を表す数字も出力されます。

関数名は function"file" としても指定できます。この場合、file は、関数の代替ソースコンテキストを指定するために使用されます。最初の命令の直後にその関数のインデックス行が追加されます。 インデックス行は、次の書式で山括弧内にテキストとして表示されます。

<Function: f_name>

関数のデフォルトソースコンテキストは、その関数の最初の命令が帰するソースファイルとして定義されます。これは通常、関数を含むオブジェクトモジュールを生成するためにコンパイルされたソースファイルです。代替ソースコンテキストは、関数に属する命令を含むほかのファイルから構成されます。このようなコンテキストには、インクルードファイルの命令と、指定の関数にインライン化された関数の命令が含まれます。 代替のソースコンテキストが存在する場合、デフォルトのソースコンテキストの冒頭に、代替ソースコンテキストが置かれている場所を示す拡張インデックス行のリストを次の形式で組み込みます。

<Function: f, instructions from source file src.h>


注 -  コマンド行から er_print ユーティリティーを起動するときに -source 引数を使用する場合は、file の引用符の前にバックスラッシュのエスケープ文字を付加する必要があります。つまり、関数名の形式は、function\"file\" となります。er_print ユーティリティーが対話モードにあるときは、バックスラッシュは不要です。使用しないでください。

通常、デフォルトのソースコンテキストが使用された場合は、そのファイルに入っているすべての関数についてメトリックが表示されます。ファイルを明示的に指定した場合は、指定した関数についてのみ、メトリックが表示されます。

disasm|dis { filename | function-name } [ N]

指定したファイル、または指定した関数を含むファイルの注釈付き逆アセンブリコードを出力します。指定したファイルは、パスの通っているディレクトリに存在する必要があります。

省略可能なパラメータ N の意味は、source コマンドと同じです。

scc com-spec

注釈付きソースのリストに含めるコンパイラの解説クラスを指定します。クラスリストはコロンで区切ったクラスのリストであり、次のメッセージクラスがゼロ個以上含まれています。

表 11  コンパイルコメントメッセージクラス
クラス
意味
b[asic]
基本的なレベルのメッセージを表示します。
v[ersion]
ソースファイル名、最終修正日付、コンパイラコンポーネントのバージョン、コンパイル日付とオプションなどのバージョンメッセージを表示します。
pa[rallel]
並列化に関するメッセージを表示します。
q[uery]
最適化に影響するコードに関する問い合わせメッセージを表示します。
l[oop]
ループの最適化と変換に関するメッセージを表示します。
pi[pe]
ループのパイプライン化に関するメッセージを表示します。
i[nline]
関数のインライン化に関するメッセージを表示します。
m[emops]
ロード、ストア、プリフェッチなどのメモリー操作に関するメッセージを表示します。
f[e]
フロントエンドメッセージを表示します。
co[degen]
コードジェネレータのメッセージを表示します。
cf
ソースの下部にコンパイラのフラグを表示します。
all
すべてのメッセージを表示します。
none
メッセージを表示しません。

all および none クラスは常に単独で指定します。

scc コマンドを省略した場合は、basic がデフォルトのクラスになります。class-list が空の状態で scc コマンドを入力した場合、コンパイラのコメントは出力されません。通常、scc コマンドは、.er.rc ファイルでのみ使用します。

sthresh value

注釈付きソースコードでのメトリックの強調表示に使用するしきい値の百分率を指定します。ファイル内のソース行で、メトリック値が、そのメトリックの最大値の value % 以上である場合、そのメトリックが発生する行の先頭に ## が挿入されます。

dcc com-spec

注釈付き逆アセンブリリストに含めるコンパイラの解説クラスを指定します。クラスリストは、コロンで区切られたクラスのリストです。利用可能なクラスのリストは、表 11 に示す注釈付きソースコードリストのクラスリストと同じです。次の表のオプションをクラスリストに追加できます。

表 12  dcc コマンドの追加オプション
オプション
意味
h[ex]
命令の 16 進値を示します。
noh[ex]
命令の 16 進値を示しません。
s[rc]
ソースリストと注釈付き逆アセンブリリストをインタリーブします。
nos[rc]
ソースリストと注釈付き逆アセンブリリストをインタリーブしません。
as[rc]
注釈付きソースコードと注釈付き逆アセンブリリストをインタリーブします。

dthresh value

注釈付き逆アセンブリコードでのメトリックの強調表示に使用するしきい値の百分率を指定します。ファイル内の命令行で、メトリック値が、そのメトリックの最大値の value % 以上である場合、そのメトリックが発生する行の先頭に ## が挿入されます。

cc com-spec

注釈付きのソースと逆アセンブリリストに含めるコンパイラの解説クラスを指定します。クラスリストは、コロンで区切られたクラスのリストです。利用可能なクラスのリストは、表 11 に示す注釈付きソースコードリストのクラスリストと同じです。