日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
LLVM-COV(1) LLVM LLVM-COV(1) 名称 llvm-cov - カバレッジ情報を出力する 書式 llvm-cov command [args...] 解説 llvm-cov ツールは、プロファイルデータを出力するために計装されるプログラ ムのためのコードカバレッジ情報を表示します。それは、gcov スタイルのカバ レッジで、または clang の計装に基づくプロファイリングで動作するために使 用することができます。 プログラムが gcov の基本の名前で呼び出されるなら、それは、あたかも llvm-cov gcov コマンドが呼び出されたかのように振る舞います。そうでなけ れば、コマンドが、提供されるべきです。 コマンド • gcov • show • report • export GCOV コマンド 書式 llvm-cov gcov [options] SOURCEFILE 解説 llvm-cov gcov ツールは、コードカバレッジデータファイルを読み込み、指定 されたソースファイルのためのカバレッジ情報を表示します。それは、GCC の バージョン 4.2 から gcov ツールと互換性があり、また、gcov のいくつかの 後のバージョンと互換性があります。 llvm-cov gcov を使用するために、利用者は、それが実行するような、カバ レッジデータを収集する利用者のアプリケーションの計装されたバージョンを 最初に構築しなければなければなりません。計装に追加する -fprofile-arcs と -ftest-coverage オプションでコンパイルします。(代わりに、利用者は、 それらの他のオプションの両方を含んでいる --coverage オプションを使用す ることができます。) 利用者は、デバッグ情報 (-g) をつけ、最適化なし (-O0) でコンパイルするべきです。そうでなければ、カバレッジデータは、 ソースコードに元通り正確にマップすることができません。 利用者が、計装されたコードをコンパイルする時に、.gcno データファイル は、オブジェクトファイルごとに生成されます。これらの .gcno ファイルは、 カバレッジデータの半分を含んでいます。データの他の半分は、利用者が、オ ブジェクトファイルごとに個別の .gcda ファイルで計装されたプログラムを実 行するとき、生成される .gcda ファイルに由来します。利用者がプログラムを 実行するたびに、実行のカウントは、あらゆる既存の .gcda ファイルに合計さ れるので、利用者がそれらの内容を含んでほしくないなら、あらゆる古いファ イルを必ず削除するように気を付けてください。 デフォルトで、.gcda ファイルは、オブジェクトファイルと同じディレクトリ に書き込まれますが、利用者は、GCOV_PREFIX と GCOV_PREFIX_STRIP 環境変数 を設定することによって上書きすることができます。GCOV_PREFIX_STRIP 変数 は、オブジェクトファイルディレクトリへの絶対パスの開始から削除される多 くのディレクトリ構成要素を指定します。それらのディレクトリを取り除いた 後に、GCOV_PREFIX 変数からの接頭辞が追加されます。これらの環境変数に よって、利用者は、オリジナルのオブジェクトファイルディレクトリがアクセ ス可能ではないマシンで計装されたプログラムを実行することができますが、 次に、利用者は、llvm-cov gcov が、それらを見つけることを期待するオブ ジェクトファイルディレクトリを元の .gcda ファイルをコピーする必要があり ます。 いったん利用者がカバレッジデータファイルを生成すると、利用者がカバレッ ジの結果を検査したい各メインソースファイルのために llvm-cov gcov を実行 します。これは、以前に利用者がコンパイラを実行したのと同じディレクトリ から実行されるべきです。指定されたソースファイルのための結果は、.gcov 接尾辞を追加することによって指定されたファイルに書き込まれます。また、 個別の出力ファイルは、追加された .gcov 接尾辞もメインのソースファイルに よって含まれるファイルごとに作成されます。 .gcov 出力ファイルの基本的な内容は、すべての行に前に追加された実行カウ ントと行番号があるソースファイルのコピーです。実行カウントは、行があら ゆる実行形式のコードを含んでいないなら、- として表示されます。行がコー ドを含んでいますが、決してそのコードが実行されなかったなら、カウント は、##### として表示されます。 オプション -a, --all-blocks すべての基本的なブロックを表示します。ソースコードの単一の行に複 数のブロックがあるなら、このオプションによって、llvm-cov は、全 体の行のためのちょうど 1 つのカウントの代わりにブロックごとのカ ウントを表示します。 -b, --branch-probabilities 条件分岐の確率とブランチ情報の要約を表示します。 -c, --branch-counts 確率の代わりにブランチカウントを表示します (-b を必要とします)。 -f, --function-summaries 全体のソースファイルのためのちょうど 1 つの要約の代わりに関数ご とにカバレッジの要約を表示します。 --help 利用可能なオプションを表示します (より多く表示するためには、 --help-hidden)。 -l, --long-file-names メインのソースファイルから含まれるファイルのカバレッジ出力のため に、出力ファイル名への接頭辞として ## が続いているメインのファイ ル名を追加します。これは、メインのファイルとインクルードファイル の両方のための完全なパスを使用する --preserve-paths オプションと 組み合わせることができます。 -n, --no-output あらゆる .gcov ファイルを出力しません。要約情報は、まだ表示され ます。 -o=<DIR|FILE>, --object-directory=<DIR>, --object-file=<FILE> DIR かまたは FILE のパスに基づいたオブジェクトを見つけます。利用 者が特定のオブジェクトファイルを指定するなら、カバレッジデータ ファイルは、.gcno と .gcda 拡張子がある同じベース名があることが 期待されます。利用者がディレクトリを指定するなら、ファイルは、 ソースファイルと同じベース名がある、そのディレクトリにあることが 期待されます。 -p, --preserve-paths カバレッジ出力ファイルを指定するとき、パス構成要素を保存します。 ソースファイル名に加えて、そのファイルへのパスからディレクトリを インクルードします。ディレクトリは、削除された . ディレクトリと ^ 文字によって置き換えられた .. ディレクトリがある # 文字によっ て区切られます。--long-file-names オプションで使用されるとき、こ れは、メインのファイル名とインクルードファイル名の両方に適用しま す。 -u, --unconditional-branches --branch-probabilities オプションのための出力に無条件分岐を含め ます。 -version llvm-cov のバージョンを表示します。 終了ステータス llvm-cov gcov は、入力ファイルを読み込むことができないなら、1 を返しま す。そうでなければ、それは、0 で終了します。 SHOW コマンド 書式 llvm-cov show [options] -instr-profile PROFILE BIN [-object BIN,...] [[-object BIN]] [SOURCES] 解説 llvm-cov show コマンドは、プロファイルデータ PROFILE を使用してバイナリ BIN ... の行カバレッジによって行を表示します。それは、SOURCES でリスト されたファイルのためのカバレッジだけを表示するためにオプションでフィル タリングすることができます。 llvm-cov show を使用するために、利用者は、プロファイルとカバレッジデー タを出力するために計装でコンパイルされるプログラムを必要とします。clang でそのようなプログラムを構築するためには、-fprofile-instr-generate と -fcoverage-mapping フラグを使用します。clang ドライバとリンクしているな ら、必要な実行時のライブラリがリンクされることを確実にするために、 -fprofile-instr-generate をリンク段階に渡します。 カバレッジ情報は、実行形式またはライブラリ自体の構築で格納され、これ は、利用者が BIN 引数として llvm-cov show に渡すべきものです。プロファ イルデータは、通常、この計装されたプログラムを実行することによって生成 されます。プログラムが終了するとき、llvm-profdata merge ツールを使用し て PROFILE 引数のために適切な形式に変換することができる、通常 default.profraw と呼ばれる、生のプロファイルファイルに書き込みます。 オプション -show-line-counts 行ごとに実行カウントを表示します。別の -show オプションが使用さ れないなら、デフォルトは、真です。 -show-expansions プリプロセッサのマクロまたはテキストのインクルージョン、ソース ファイルの表示のインラインのような、インクルージョンを展開しま す。デフォルトは、偽です。 -show-instantiations C++ のテンプレートのような、複数回インスタンス化されたソース領域 のために、組み合わされた要約と同様に個別に各インスタンス化を表示 します。デフォルトは、真です。 -show-regions 領域が始まる文字を指すキャレットを表示することによって、領域ごと の実行カウントを表示します。デフォルトは、偽です。 -show-line-counts-or-regions 行にただ 1 つの領域があるなら、行ごとに実行カウントを表示します が、行に複数があるなら、個別の領域を表示します。デフォルトは、偽 です。 -use-color 色出力を有効にするか、または無効にします。デフォルトで、これは、 自動検出されます。 -arch=[*NAMES*] N 番目に指定されたバイナリに対応するリストの N 番目のエントリの ようなアーキテクチャのリストを指定します。カバーされたオブジェク トが普遍的なバイナリであるなら、これは、使用するアーキテクチャを 指定します。普遍的なバイナリに含められていないか、または普遍的で ないバイナリと一致しないアーキテクチャを使用するために、アーキテ クチャを指定するエラーです。 -name=<NAME> 与えられる名前がある関数のためだけのコードカバレッジを表示しま す。 -name-whitelist=<FILE> 与えられたファイルにリストされた関数のためだけのコードカバレッジ を表示します。ファイルの各行は、whitelist_fun: で始まるべきで、 直後に受け付ける関数の名前が続きます。この名前は、ワイルドカード の表現を指定できます。 -name-regex=<PATTERN> 与えられた正規表現と一致している関数のためだけのコードカバレッジ を表示します。 -ignore-filename-regex=<PATTERN> 与えられた正規表現と一致しているファイルパスがあるソースコード ファイルをスキップします。 -format=<FORMAT> 指定された出力形式を使用します。サポートされた形式は、次の通りで す: "text", "html"。 -tab-size=<TABSIZE> 報告を準備するとき、<TABSIZE> 空白でタブを置き換えます。現在、こ れは、html 形式のためだけサポートされます。 -output-dir=PATH カバレッジの報告を書き込むためのディレクトリを指定します。ディレ クトリが存在しないなら、それは、作成されます。関数の view モード で使用されるとき (すなわち、-name または -name-regex が特有の関 数を選択するために使用されるとき)、報告は、 PATH/functions.EXTENSION に書き込まれます。ファイルの view モー ドで使用されるとき、ファイルごとの 1 つの報告は、 PATH/REL_PATH_TO_FILE.EXTENSION に書き込まれます。 -Xdemangler=<TOOL>|<TOOL-OPTION> シンボルのデマングラ (demangler) を指定します。これは、報告をよ り人間に読み込み可能にするために使用することができます。引数をデ マングラ (demangler) に供給するために、このオプションを複数回指 定することができます (例えば、C++ のための -Xdemangler c++filt -Xdemangler -n)。デマングラ (demangler) は、標準入力 (stdin) か らシンボルの改行で区切られたリストを読み込み、同じ長さの改行で区 切られたリストを標準出力 (stdout) に書き込むことが期待されていま す。 -num-threads=N, -j=N ファイルの報告おw書き込む N スレッドを使用します (-output-dir が 指定されるときのみ適用可能です)。N=0 であるとき、llvm-cov は、使 用するスレッドの適切な数を自動検出します。これは、デフォルトで す。 -line-coverage-gt=<N> 与えられたしきい値より大きな行カバレッジがある関数のためだけの コードカバレッジを表示します。 -line-coverage-lt=<N> 与えられたしきい値より少ない行カバレッジがある関数のためだけコー ドカバレッジを表示します。 -region-coverage-gt=<N> 与えられたしきい値より大きい領域カバレッジがある関数のためだけ コードカバレッジを表示します。 -region-coverage-lt=<N> 与えられたしきい値より少ない領域カバレッジがある関数のためだけ コードカバレッジを表示します。 -path-equivalence=<from>,<to> ローカルなソースファイルのパスへのカバレッジデータのパスをマップ します。これによって、利用者は、1 つのマシンのカバレッジデータを 生成することができ、次に、利用者が、異なるパスで同じファイルがあ る異なるマシンの llvm-cov を使用します。 REPORT コマンド 書式 llvm-cov report [options] -instr-profile PROFILE BIN [-object BIN,...] [[-object BIN]] [SOURCES] 解説 llvm-cov report コマンドは、プロファイルデータ PROFILE 使用して、バイナ リ BIN ... のカバレッジの要約を表示します。それは、SOURCES にリストされ たファイルのためのカバレッジを表示するだけのために、オプションでフィル タリングすることができます。 ソースファイルが提供されないなら、要約の行は、カバレッジデータのファイ ルごとに印刷 (表示) されます。いくらかのファイルが提供されるなら、 -show-functions オプションが有効であるなら、リストされたファイルの関数 ごとに要約を表示することができます。 カバレッジと生成しているプロファイルデータのためのプログラムのコンパイ ルに関する情報については、SHOW コマンド を参照してください。 オプション -use-color[=VALUE] 色出力を有効にするか、または無効にします。デフォルトで、これは、 自動検出されます。 -arch=<name> カバーされたバイナリが普遍的なバイナリであるなら、使用するアーキ テクチャを選択します。普遍的なバイナリに含められていないか、また は普遍的でないバイナリと一致しないアーキテクチャを使用するため に、アーキテクチャを指定するエラーです。 -show-functions 関数ごとのカバレッジ要約を表示します。デフォルトは、偽です。 -show-instantiation-summary すべての関数のインスタンス化のための統計を表示します。デフォルト は、偽です。 -ignore-filename-regex=<PATTERN> 与えられた正規表現と一致しているファイルパスがあるソースコード ファイルをスキップします。 EXPORT コマンド 書式 llvm-cov export [options] -instr-profile PROFILE BIN [-object BIN,...] [[-object BIN]] [SOURCES] 解説 llvm-cov export コマンドは、JSON としてプロファイルデータ PROFILE を使 用して、バイナリ BIN ... のカバレッジの領域、関数、展開と要約をエクス ポートします。それは、SOURCES でリストされたファイルのためのカバレッジ をエクスポートするだけのためにオプションでフィルタをかけることができま す。 カバレッジと生成しているプロファイルデータのためのプログラムのコンパイ ルに関する情報については、SHOW コマンド を参照してください。 オプション -arch=<name> カバーされたバイナリが普遍的なバイナリであるなら、使用するアーキ テクチャを選択します。普遍的なバイナリに含められていないか、また は普遍的でないバイナリと一致しないアーキテクチャを使用するため に、アーキテクチャを指定するエラーです。 -summary-only カバレッジデータのファイルごとの要約情報だけをエクスポートしま す。このモードは、個別の関数または領域のようなより小さい単位のた めのカバレッジ情報をエクスポートしません。結果は、:program: llvm-cov report コマンドによって生成されるものと同じとなります が、テキストではなく、JSON 形式で提出されます。 -ignore-filename-regex=<PATTERN> 与えられた正規表現と一致しているファイルパスがあるソースコード ファイルをスキップします。 作者 LLVM チーム (http://llvm.org/) によってメンテナンスされています。 COPYRIGHT 2003-2018, LLVM Project 7 2018-08-02 LLVM-COV(1)