C++ Build Insights SDK は、Visual Studio 2017 以降と互換性があります。 これらのバージョンのドキュメントを表示するには、この記事の Visual Studio バージョン セレクター コントロールを Visual Studio 2017 以降に設定します。 このページの目次の一番上にあります。
コンパイラ イベント
コンパイラ
COMMAND_LINE
ENVIRONMENT_VARIABLE
FILE_INPUT
OBJ_OUTPUT
FRONT_END_PASS
BACK_END_PASS
コンパイラ フロントエンド イベント
C1_DLL
FRONT_END_FILE
TEMPLATE_INSTANTIATION
SYMBOL_NAME
モジュール
HEADER_UNIT
PRECOMPILED_HEADER
コンパイラ バックエンド イベント
C2_DLL
WHOLE_PROGRAM_ANALYSIS
TOP_DOWN
BOTTOM_UP
CODE_GENERATION
糸
機能
FORCE_INLINEE
リンカー イベント
リンカ
COMMAND_LINE
ENVIRONMENT_VARIABLE
FILE_INPUT
EXECUTABLE_IMAGE_OUTPUT
EXP_OUTPUT
IMP_LIB_OUTPUT
LIB_OUTPUT
PASS1
PRE_LTCG_OPT_REF
LTCG
OPT_REF
OPT_ICF
OPT_LBR
PASS2
イベント テーブル
イベント | プロパティ | 説明 |
---|---|---|
BACK_END_PASS | タイプ | アクティビティ |
父母 | コンパイラ | |
子 | C2_DLL | |
プロパティ | - 入力ソース ファイルへの絶対パス - 出力オブジェクト ファイルへの絶対パス |
|
キャプチャ クラス |
アクティビティ CompilerPass BackEndPass |
|
説明 | コンパイラのバックエンド パスの開始時と停止時に発生します。 このパスでは、解析された C/C++ ソース コードの最適化と、マシン コードへの変換が行われます。 | |
BOTTOM_UP | タイプ | アクティビティ |
父母 | WHOLE_PROGRAM_ANALYSIS | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ BottomUp |
|
説明 | プログラム全体の分析のボトムアップ パスの開始時と停止時に発生します。 | |
C1_DLL | タイプ | アクティビティ |
父母 | FRONT_END_PASS | |
子 |
FRONT_END_FILE SYMBOL_NAME TEMPLATE_INSTANTIATION |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ C1DLL |
|
説明 | c1.dll または c1xx.dll の呼び出しの開始時と停止時に発生します。 これらの DLL は、コンパイラの C および C++ フロントエンドです。 これらは、コンパイラ ドライバー (cl.exe) によってのみ呼び出されます。 | |
C2_DLL | タイプ | アクティビティ |
父母 |
BACK_END_PASS LTCG |
|
子 |
CODE_GENERATION WHOLE_PROGRAM_ANALYSIS |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ C2DLL |
|
説明 | c2.dll の呼び出しの開始時と停止時に発生します。 この DLL は、コンパイラのバックエンドです。 コンパイラ ドライバー (cl.exe) によって呼び出されます。 また、リンク時のコード生成が使用されるときにも、リンカーによって (link.exe) 呼び出されます。 | |
CODE_GENERATION | タイプ | アクティビティ |
父母 | C2_DLL | |
子 |
機能 糸 |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ CodeGeneration |
|
説明 | バックエンドのコード生成フェーズの開始時と停止時に発生します。 | |
COMMAND_LINE | タイプ | 簡易イベント |
父母 |
コンパイラ リンカ |
|
子 | なし | |
プロパティ | - cl.exe または link.exe を呼び出すために使用されたコマンド ライン | |
キャプチャ クラス |
SimpleEvent CommandLine |
|
説明 | コンパイラとリンカーによるコマンド ラインの評価が完了すると発生します。 評価されるコマンド ラインには、応答ファイルを介して渡された cl.exe と link.exe のすべてのパラメーターが含まれます。 また、CL、_CL_、LINK、_LINK_ などの環境変数を介して渡された cl.exe および link.exe へのパラメーターも含まれます。 | |
コンパイラ | タイプ | アクティビティ |
父母 | なし | |
子 |
BACK_END_PASS COMMAND_LINE ENVIRONMENT_VARIABLE FILE_INPUT OBJ_OUTPUT FRONT_END_PASS |
|
プロパティ | - コンパイラのバージョン - 作業ディレクトリ - 呼び出された cl.exe への絶対パス |
|
キャプチャ クラス |
アクティビティ [呼び出し] コンパイラ |
|
説明 | cl.exe の呼び出しの開始時と停止時に発生します。 | |
ENVIRONMENT_VARIABLE | タイプ | 簡易イベント |
父母 |
コンパイラ リンカ |
|
子 | なし | |
プロパティ | - 環境変数の名前 - 環境変数の値。 |
|
キャプチャ クラス |
SimpleEvent 環境変数 |
|
説明 | cl.exe または link.exe が呼び出されたときに、既存のすべての環境変数に対して 1 回発生します。 | |
EXECUTABLE_IMAGE_OUTPUT | タイプ | 簡易イベント |
父母 | リンカ | |
子 | なし | |
プロパティ | - DLL または実行可能な出力ファイルへの絶対パス。 | |
キャプチャ クラス |
SimpleEvent FileOutput ExecutableImageOutput |
|
説明 | リンカーの入力の 1 つが DLL または実行可能イメージ ファイルの場合に発生します。 | |
EXP_OUTPUT | タイプ | 簡易イベント |
父母 | リンカ | |
子 | なし | |
プロパティ | - .exp 出力ファイルへの絶対パス。 | |
キャプチャ クラス |
SimpleEvent FileOutput ExpOutput |
|
説明 | リンカーの出力の 1 つが .exp ファイルである場合に発生します。 | |
FILE_INPUT | タイプ | 簡易イベント |
父母 |
コンパイラ リンカ |
|
子 | なし | |
プロパティ | - 入力ファイルへの絶対パス - 入力ファイルの種類 |
|
キャプチャ クラス |
SimpleEvent FileInput |
|
説明 | cl.exe または link.exe の入力を通知するために発生します。 | |
FORCE_INLINEE | タイプ | 簡易イベント |
父母 | 機能 | |
子 | なし | |
プロパティ | - 強制インライン化関数の名前。 - 中間命令数として表される、強制インライン化関数のサイズ。 |
|
キャプチャ クラス |
アクティビティ ForceInlinee |
|
説明 |
__forceinline キーワードを使用することにより、関数が別の関数に強制インライン化されると発生します。 |
|
FRONT_END_FILE | タイプ | アクティビティ |
父母 |
C1_DLL FRONT_END_FILE |
|
子 |
FRONT_END_FILE TEMPLATE_INSTANTIATION |
|
プロパティ | - ファイルへの絶対パス。 | |
キャプチャ クラス |
アクティビティ FrontEndFile |
|
説明 | コンパイラ フロントエンドによるファイルの処理が開始および停止したときに発生します。 このイベントは再帰的です。 再帰は、フロントエンドでインクルード ファイルが解析されると発生します。 | |
FRONT_END_PASS | タイプ | アクティビティ |
父母 | コンパイラ | |
子 |
C1_DLL モジュール HEADER_UNIT PRECOMPILED_HEADER |
|
プロパティ | - 入力ソース ファイルへの絶対パス - 出力オブジェクト ファイルへの絶対パス |
|
キャプチャ クラス |
アクティビティ CompilerPass FrontEndPass |
|
説明 | コンパイラのフロントエンド パスの開始時と停止時に発生します。 このパスでは、C/C++ ソース コードの解析と、中間言語への変換が行われます。 | |
機能 | タイプ | アクティビティ |
父母 |
CODE_GENERATION 糸 TOP_DOWN |
|
子 | FORCE_INLINEE | |
プロパティ | - 関数の名前 | |
キャプチャ クラス |
アクティビティ 関数 |
|
説明 | 関数のコードの生成の開始時と停止時に発生します。 | |
HEADER_UNIT | タイプ | アクティビティ |
父母 | FRONT_END_PASS | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
SimpleEvent TranslationUnitType HeaderUnit |
|
説明 | フロント エンド パスの開始時点で発生し、ヘッダー ユニット翻訳単位が処理中であることを表します。 | |
IMP_LIB_OUTPUT | タイプ | 簡易イベント |
父母 | リンカ | |
子 | なし | |
プロパティ | - インポート ライブラリの出力ファイルへの絶対パス。 | |
キャプチャ クラス |
SimpleEvent FileOutput ImpLibOutput |
|
説明 | リンカーの出力の 1 つがインポート ライブラリである場合に発生します。 | |
LIB_OUTPUT | タイプ | 簡易イベント |
父母 | リンカ | |
子 | なし | |
プロパティ | - スタティック ライブラリ出力ファイルへの絶対パス。 | |
キャプチャ クラス |
SimpleEvent FileOutput LibOutput |
|
説明 | リンカーの出力の 1 つがスタティック ライブラリである場合に発生します。 | |
リンカ | タイプ | アクティビティ |
父母 | なし | |
子 |
COMMAND_LINE ENVIRONMENT_VARIABLE EXECUTABLE_IMAGE_OUTPUT EXP_OUTPUT FILE_INPUT IMP_LIB_OUTPUT LIB_OUTPUT PASS1 PASS2 |
|
プロパティ | - リンカーのバージョン - 作業ディレクトリ - 呼び出された link.exe への絶対パス |
|
キャプチャ クラス |
アクティビティ [呼び出し] リンカー |
|
説明 | link.exe の呼び出しの開始時と停止時に発生します。 | |
LTCG | タイプ | アクティビティ |
父母 | PASS1 | |
子 | C2_DLL | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ LTCG |
|
説明 | リンク時のコード生成の開始時と停止時に発生します。 | |
モジュール | タイプ | アクティビティ |
父母 | FRONT_END_PASS | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
SimpleEvent TranslationUnitType モジュール |
|
説明 | フロント エンド パスの開始時点で発生し、モジュール翻訳単位が処理中であることを表します。 | |
OBJ_OUTPUT | タイプ | 簡易イベント |
父母 | コンパイラ | |
子 | なし | |
プロパティ | - .obj 出力ファイルへの絶対パス | |
キャプチャ クラス |
SimpleEvent FileOutput ObjOutput |
|
説明 | cl.exe によって生成されるすべての .obj 出力に対して 1 回発生します。 | |
OPT_ICF | タイプ | アクティビティ |
父母 | PASS1 | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ OptICF |
|
説明 | 同じ COMDAT フォールド (/OPT:ICF) のリンカー最適化の開始時と停止時に発生します。 | |
OPT_LBR | タイプ | アクティビティ |
父母 | PASS1 | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ OptLBR |
|
説明 | 長い分岐 (/OPT:LBR) のリンカー最適化の開始時と停止時に発生します。 | |
OPT_REF | タイプ | アクティビティ |
父母 | PASS1 | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ OptRef |
|
説明 | 参照されていない関数とデータの削除 (/OPT:REF) のリンカー最適化の開始時と停止時に発生します。 | |
PASS1 | タイプ | アクティビティ |
父母 | リンカ | |
子 |
LTCG OPT_ICF OPT_LBR OPT_REF |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ Pass1 |
|
説明 | リンカーのパス 1 の開始時と停止時に発生します。 | |
PASS2 | タイプ | アクティビティ |
父母 | リンカ | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ Pass2 |
|
説明 | リンカーのパス 2 の開始時と停止時に発生します。 | |
PRECOMPILED_HEADER | タイプ | アクティビティ |
父母 | FRONT_END_PASS | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
SimpleEvent TranslationUnitType PrecompiledHeader |
|
説明 | フロント エンド パスの開始時点で発生し、プリコンパイル済みヘッダー (PCH) 翻訳単位が処理中であることを表します。 | |
PRE_LTCG_OPT_REF | タイプ | アクティビティ |
父母 | PASS1 | |
子 | なし | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ PreLTCGOptRef |
|
説明 | 参照されていない関数とデータを除去する (/OPT:REF) リンカー最適化パスの開始時と停止時に発生します。 リンク時コード生成の前に行われます。 | |
SYMBOL_NAME | タイプ | 簡易イベント |
父母 | C1_DLL | |
子 | なし | |
プロパティ | - 型のキー - 型の名前 |
|
キャプチャ クラス |
SimpleEvent SymbolName |
|
説明 | フロントエンド パスの最後で、テンプレートのインスタンス化に含まれるすべての型に対して 1 回発生します。 キーは型の数値識別子であり、名前はテキスト表現です。 型のキーは、分析対象のトレース内で一意です。 ただし、異なるコンパイラ フロントエンド パスから受け取る異なるキーで、同じ型が示されている場合があります。 異なるコンパイラ フロントエンド パスの間で型を比較するには、その名前を使用する必要があります。 SYMBOL_NAME イベントは、すべてのテンプレートのインスタンス化が行われた後で、コンパイラ フロントエンド パスの最後に生成されます。 | |
TEMPLATE_INSTANTIATION | タイプ | アクティビティ |
父母 |
C1_DLL FRONT_END_FILE TEMPLATE_INSTANTIATION |
|
子 | TEMPLATE_INSTANTIATION | |
プロパティ | - 特殊な型のキー - プライマリ テンプレートの型のキー - インスタンス化されたテンプレートの種類 |
|
キャプチャ クラス |
アクティビティ TemplateInstantiation |
|
説明 | テンプレートのインスタンス化の開始時と終了時に発生します。 プライマリ テンプレート型 (vector など) がインスタンス化され、結果として特殊な型 (std::vector<int> など) になります。 キーは両方の型に対して与えられます。 キーを型の名前に変換するには、SYMBOL_NAME イベントを使用します。 型のキーは、分析対象のトレース内で一意です。 ただし、異なるコンパイラ フロントエンド パスから受け取る異なるキーで、同じ型が示されている場合があります。 異なるコンパイラ フロントエンド パスの間で型を比較するには、シンボルの名前を使用する必要があります。 このイベントは再帰的です。 再帰は、フロントエンドによって入れ子になったテンプレートがインスタンス化されると発生する場合があります。 |
|
糸 | タイプ | アクティビティ |
父母 |
CODE_GENERATION TOP_DOWN |
|
子 | 機能 | |
プロパティ | なし | |
キャプチャ クラス |
アクティビティ スレッド |
|
説明 | コンパイラ バックエンドのスレッド実行の開始時と終了時に発生します。 中断されたスレッドは、終了されたものと見なされます。 再開されたスレッドは、開始されたものと見なされます。 | |
TOP_DOWN | タイプ | アクティビティ |
父母 | WHOLE_PROGRAM_ANALYSIS | |
子 |
機能 糸 |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ TopDown |
|
説明 | プログラムの分析のトップダウン パス全体の開始時と停止時に発生します。 | |
TRANSLATION_UNIT_TYPE | タイプ | アクティビティ |
父母 | FRONT_END_PASS | |
子 |
モジュール HEADER_UNIT PRECOMPILED_HEADER |
|
プロパティ | - 翻訳単位の型。 | |
キャプチャ クラス |
SimpleEvent TranslationUnitType |
|
説明 | フロントエンド パスの開始時に発生します。 この型は、このパスがモジュール、ヘッダー ユニット、またはプリコンパイル済みヘッダーを処理するかどうかを識別します。 | |
WHOLE_PROGRAM_ANALYSIS | タイプ | アクティビティ |
父母 | C2_DLL | |
子 |
BOTTOM_UP TOP_DOWN |
|
プロパティ | なし | |
キャプチャ クラス |
アクティビティ WholeProgramAnalysis |
|
説明 | リンク時コード生成のプログラム全体の分析フェーズの開始時と停止時に発生します。 |