Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O C++ Build Insights SDK é compatível com o Visual Studio 2017 e posterior. Para ver a documentação destas versões, defina o controlo seletor de versão do Visual Studio para este artigo para Visual Studio 2017 ou posterior. Encontra-se na parte superior do índice desta página.
Eventos do compilador
COMPILADOR
LINHA_DE_COMANDO
ENVIRONMENT_VARIABLE
FILE_INPUT
OBJ_OUTPUT
FRONT_END_PASS
BACK_END_PASS
Eventos front-end do compilador
C1_DLL
FRONT_END_FILE
TEMPLATE_INSTANTIATION
SYMBOL_NAME
MÓDULO
HEADER_UNIT
PRECOMPILED_HEADER
Eventos de back-end do compilador
C2_DLL
ANÁLISE_COMPLETA_DO_PROGRAMA
De Cima para Baixo
DE BAIXO PARA CIMA
CODE_GENERATION
TÓPICO
FUNÇÃO
FORCE_INLINEE
Eventos de vinculação
VINCULADOR
LINHA_DE_COMANDO
ENVIRONMENT_VARIABLE
FILE_INPUT
EXECUTABLE_IMAGE_OUTPUT
EXP_OUTPUT
IMP_LIB_OUTPUT
LIB_OUTPUT
PASSE1
PRE_LTCG_OPT_REF
LTCG
OPT_REF
OPT_ICF
OPT_LBR
PASSE2
Tabela de eventos
| Evento | Propriedade | Descrição |
|---|---|---|
| BACK_END_PASS | Tipo | Atividade |
| Principais | COMPILADOR | |
| Subordinados | C2_DLL | |
| Propriedades | - Caminho absoluto para o arquivo de origem de entrada - Caminho absoluto para o ficheiro de objeto de saída |
|
| Classes de captura |
Atividade CompilerPass BackEndPass |
|
| Descrição | Ocorre no início e na terminação da passagem de back-end do compilador. Este passo é responsável por otimizar o código-fonte C/C++ analisado e convertê-lo em código de máquina. | |
| de baixo para cima | Tipo | Atividade |
| Principais | ANÁLISE_COMPLETA_DO_PROGRAMA | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade De baixo para cima |
|
| Descrição | Ocorre no início e no fim de toda a passagem ascendente da análise do programa. | |
| C1_DLL | Tipo | Atividade |
| Principais | FRONT_END_PASS | |
| Subordinados |
FRONT_END_FILE SYMBOL_NAME TEMPLATE_INSTANTIATION |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade C1DLL |
|
| Descrição | Ocorre no início e no fim de uma c1.dll ou c1xx.dll invocação. Essas DLLs são o front-end C e C++ do compilador. Eles são invocados apenas pelo driver do compilador (cl.exe). | |
| C2_DLL | Tipo | Atividade |
| Principais |
BACK_END_PASS LTCG |
|
| Subordinados |
CODE_GENERATION ANÁLISE_COMPLETA_DO_PROGRAMA |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade C2DLL |
|
| Descrição | Ocorre no início e no fim de uma c2.dll invocação. Esta DLL é o back-end do compilador. É chamado pelo driver do compilador (cl.exe). Também é invocado pelo vinculador (link.exe) quando a geração de código de tempo de link é usada. | |
| GERAÇÃO_DE_CÓDIGO | Tipo | Atividade |
| Principais | C2_DLL | |
| Subordinados |
FUNÇÃO TÓPICO |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade Geração de código |
|
| Descrição | Ocorre no início e na parada da fase de geração de código do back-end. | |
| LINHA_DE_COMANDO | Tipo | Evento simples |
| Principais |
COMPILADOR VINCULADOR |
|
| Subordinados | Nenhum | |
| Propriedades | - A linha de comando que foi usada para invocar cl.exe ou link.exe | |
| Classes de captura |
SimpleEvent Linha de comando |
|
| Descrição | Ocorre quando o compilador e o vinculador terminam de avaliar a linha de comando. A linha de comando avaliada inclui todos os parâmetros cl.exe e link.exe passados através de um arquivo de resposta. Ele também inclui parâmetros para cl.exe e link.exe passados por meio de variáveis de ambiente, como CL, _CL_, LINK e _LINK_. | |
| COMPILADOR | Tipo | Atividade |
| Principais | Nenhum | |
| Subordinados |
BACK_END_PASS LINHA_DE_COMANDO ENVIRONMENT_VARIABLE FILE_INPUT OBJ_OUTPUT FRONT_END_PASS |
|
| Propriedades | - Versão do compilador - Diretório de trabalho - Caminho absoluto para o cl.exe invocado |
|
| Classes de captura |
Atividade Invocação Compilador |
|
| Descrição | Ocorre no início e no fim de uma cl.exe invocação. | |
| VARIÁVEL_DE_AMBIENTE | Tipo | Evento simples |
| Principais |
COMPILADOR VINCULADOR |
|
| Subordinados | Nenhum | |
| Propriedades | - O nome da variável de ambiente - O valor da variável ambiente. |
|
| Classes de captura |
SimpleEvent EnvironmentVariable |
|
| Descrição | Ocorre uma vez para cada variável de ambiente existente no momento em que cl.exe ou link.exe são invocadas. | |
| SAÍDA_DE_IMAGEM_EXECUTÁVEL | Tipo | Evento simples |
| Principais | VINCULADOR | |
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para uma DLL ou arquivo de saída executável. | |
| Classes de captura |
SimpleEvent FileOutput ExecutableImageOutput |
|
| Descrição | Ocorre quando uma das entradas do vinculador é uma DLL ou um arquivo de imagem executável. | |
| EXP_OUTPUT | Tipo | Evento simples |
| Principais | VINCULADOR | |
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para um arquivo de saída .exp . | |
| Classes de captura |
SimpleEvent FileOutput ExpOutput |
|
| Descrição | Ocorre quando uma das saídas do vinculador é um arquivo .exp . | |
| FILE_INPUT | Tipo | Evento simples |
| Principais |
COMPILADOR VINCULADOR |
|
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para o arquivo de entrada - O tipo de arquivo de entrada |
|
| Classes de captura |
SimpleEvent FileInput |
|
| Descrição | Ocorre para anunciar cl.exe ou link.exe entrada. | |
| FORCE_INLINEE | Tipo | Evento simples |
| Principais | FUNÇÃO | |
| Subordinados | Nenhum | |
| Propriedades | - O nome da função inline forçada. - O tamanho da função embutida à força, representada como uma contagem de instruções em formato intermediário. |
|
| Classes de captura |
Atividade ForceInlinee |
|
| Descrição | Ocorre quando uma função está sendo inserida à força em outra função através do uso da __forceinline palavra-chave. |
|
| FRONT_END_FILE | Tipo | Atividade |
| Principais |
C1_DLL FRONT_END_FILE |
|
| Subordinados |
FRONT_END_FILE TEMPLATE_INSTANTIATION |
|
| Propriedades | - Caminho absoluto para o arquivo. | |
| Classes de captura |
Atividade FrontEndFile |
|
| Descrição | Ocorre quando o front-end do compilador inicia e para de processar um arquivo. Este evento é recursivo. A recursão acontece quando o front-end está analisando arquivos incluídos. | |
| FRONT_END_PASS | Tipo | Atividade |
| Principais | COMPILADOR | |
| Subordinados |
C1_DLL MÓDULO HEADER_UNIT PRECOMPILED_HEADER |
|
| Propriedades | - Caminho absoluto para o arquivo de origem de entrada - Caminho absoluto para o ficheiro de objeto de saída |
|
| Classes de captura |
Atividade CompilerPass FrontEndPass |
|
| Descrição | Ocorre no início e no término da etapa front-end do compilador. Este passo é responsável por analisar o código-fonte C/C++ e convertê-lo em linguagem intermediária. | |
| FUNÇÃO | Tipo | Atividade |
| Principais |
CODE_GENERATION TÓPICO De Cima para Baixo |
|
| Subordinados | FORCE_INLINEE | |
| Propriedades | - Nome da função | |
| Classes de captura |
Atividade Função |
|
| Descrição | Ocorre ao iniciar e terminar gerando o código para uma função. | |
| HEADER_UNIT | Tipo | Atividade |
| Principais | FRONT_END_PASS | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
SimpleEvent TipoUnidadeTradução Unidade de cabeçalho |
|
| Descrição | Ocorre no início da passagem de front-end e representa que uma unidade de tradução de cabeçalho está a ser processada. | |
| IMP_LIB_OUTPUT | Tipo | Evento simples |
| Principais | VINCULADOR | |
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para um arquivo de saída de biblioteca de importação. | |
| Classes de captura |
SimpleEvent FileOutput ImpLibOutput |
|
| Descrição | Ocorre quando uma das saídas do vinculador é uma biblioteca de importação. | |
| LIB_OUTPUT | Tipo | Evento simples |
| Principais | VINCULADOR | |
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para um ficheiro de saída de uma biblioteca estática. | |
| Classes de captura |
SimpleEvent FileOutput LibOutput |
|
| Descrição | Ocorre quando uma das saídas do vinculador é uma biblioteca estática. | |
| VINCULADOR | Tipo | Atividade |
| Principais | Nenhum | |
| Subordinados |
LINHA_DE_COMANDO ENVIRONMENT_VARIABLE EXECUTABLE_IMAGE_OUTPUT EXP_OUTPUT FILE_INPUT IMP_LIB_OUTPUT LIB_OUTPUT PASSE1 PASSE2 |
|
| Propriedades | - Versão Linker - Diretório de trabalho - Caminho absoluto para o link.exe invocado |
|
| Classes de captura |
Atividade Invocação Vinculador |
|
| Descrição | Ocorre no início e no fim de uma link.exe invocação. | |
| LTCG | Tipo | Atividade |
| Principais | PASSE1 | |
| Subordinados | C2_DLL | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade LTCG |
|
| Descrição | Ocorre no início e na paragem da geração de código durante o tempo de ligação. | |
| MÓDULO | Tipo | Atividade |
| Principais | FRONT_END_PASS | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
SimpleEvent TipoUnidadeTradução Módulo |
|
| Descrição | Ocorre no início do passo de front-end e representa que uma unidade de tradução de módulo está sendo processada. | |
| OBJ_OUTPUT | Tipo | Evento simples |
| Principais | COMPILADOR | |
| Subordinados | Nenhum | |
| Propriedades | - O caminho absoluto para o arquivo de saída .obj | |
| Classes de captura |
SimpleEvent FileOutput ObjOutput |
|
| Descrição | Ocorre uma vez para cada saída .obj produzida por cl.exe. | |
| OPT_ICF | Tipo | Atividade |
| Principais | PASSE1 | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade OptICF |
|
| Descrição | Ocorre no início e na parada da otimização idêntica do vinculador de dobragem COMDAT (/OPT:ICF). | |
| OPT_LBR | Tipo | Atividade |
| Principais | PASSE1 | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade OptLBR |
|
| Descrição | Ocorre no início e na parada da otimização do vinculador de ramificação longa (/OPT:LBR). | |
| OPT_REF | Tipo | Atividade |
| Principais | PASSE1 | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade OptRef |
|
| Descrição | Ocorre no início e no término da eliminação de funções e dados não referenciados nas otimizações do ligador (/OPT:REF). | |
| ETAPA1 | Tipo | Atividade |
| Principais | VINCULADOR | |
| Subordinados |
LTCG OPT_ICF OPT_LBR OPT_REF |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade Passe1 |
|
| Descrição | Ocorre no início e na parada do passe do vinculador 1. | |
| PASSE2 | Tipo | Atividade |
| Principais | VINCULADOR | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade Passe2 |
|
| Descrição | Ocorre no início e na parada do passe do vinculador 2. | |
| CABEÇALHO_PRÉ-COMPILADO | Tipo | Atividade |
| Principais | FRONT_END_PASS | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
SimpleEvent TipoUnidadeTradução PrecompiledHeader |
|
| Descrição | Ocorre no início do passo front-end e representa que uma unidade de conversão de cabeçalho pré-compilado (PCH) está sendo processada. | |
| PRE_LTCG_OPT_REF | Tipo | Atividade |
| Principais | PASSE1 | |
| Subordinados | Nenhum | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade PreLTCGOptRef |
|
| Descrição | Ocorre no início e na parada do passo de otimização do vinculador que elimina funções e dados não referenciados (/OPT:REF). Isso é feito antes da geração de código no tempo de ligação. | |
| SYMBOL_NAME | Tipo | Evento simples |
| Principais | C1_DLL | |
| Subordinados | Nenhum | |
| Propriedades | - Uma chave de tipo - O nome do tipo |
|
| Classes de captura |
SimpleEvent SymbolName |
|
| Descrição | Ocorre no final do passo de front-end: uma vez para cada tipo envolvido em instanciações de modelo. A chave é um identificador numérico para o tipo, enquanto o nome é a sua representação de texto. As chaves de tipo são exclusivas dentro do traço em análise. No entanto, chaves diferentes provenientes de passagens front-end diferentes do compilador podem apontar para o mesmo tipo. A comparação de tipos entre diferentes passagens do front-end do compilador requer o uso dos seus nomes. eventos SYMBOL_NAME são emitidos no final de um passo front-end do compilador, após todas as instanciações de modelo ocorrerem. | |
| TEMPLATE_INSTANTIATION | Tipo | Atividade |
| Principais |
C1_DLL FRONT_END_FILE TEMPLATE_INSTANTIATION |
|
| Subordinados | TEMPLATE_INSTANTIATION | |
| Propriedades | - A chave para o tipo especializado - A chave para o tipo do modelo primário - O tipo de modelo que foi instanciado |
|
| Classes de captura |
Atividade TemplateInstantiation |
|
| Descrição | Ocorre no início e no final de uma instanciação de modelo. Um tipo de modelo primário (como vector) é instanciado, resultando em um tipo especializado (como std::vector<int>). Uma chave é dada para ambos os tipos. Use o evento SYMBOL_NAME para converter uma chave no nome do tipo. As chaves de tipo são exclusivas dentro do traço em análise. No entanto, chaves diferentes provenientes de passagens front-end diferentes do compilador podem apontar para o mesmo tipo. A comparação de tipos entre diferentes passagens front-end do compilador requer o uso de nomes de símbolos. Este evento é recursivo. A recursão acontece em alguns casos quando o front-end está instanciando modelos aninhados. |
|
| TÓPICO | Tipo | Atividade |
| Principais |
CODE_GENERATION De Cima para Baixo |
|
| Subordinados | FUNÇÃO | |
| Propriedades | Nenhum | |
| Classes de captura |
Atividade Tópico |
|
| Descrição | Ocorre no início e no final de uma execução de thread de back-end do compilador. Um thread que está sendo suspenso é considerado encerrado. Um thread que está a ser ativado é considerado como iniciado. | |
| TOP_DOWN | Tipo | Atividade |
| Principais | ANÁLISE_COMPLETA_DO_PROGRAMA | |
| Subordinados |
FUNÇÃO TÓPICO |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade De cima para baixo |
|
| Descrição | Ocorre no início e no fim da passagem de cima para baixo de toda a análise do programa. | |
| TRANSLATION_UNIT_TYPE | Tipo | Atividade |
| Principais | FRONT_END_PASS | |
| Subordinados |
MÓDULO HEADER_UNIT PRECOMPILED_HEADER |
|
| Propriedades | - O tipo de unidade de tradução. | |
| Classes de captura |
SimpleEvent TipoUnidadeTradução |
|
| Descrição | Ocorre no início do passo de front-end. O tipo identifica se essa passagem está processando um módulo, uma unidade de cabeçalho ou um cabeçalho pré-compilado. | |
| ANÁLISE_DO_PROGRAMA_INTEIRO | Tipo | Atividade |
| Principais | C2_DLL | |
| Subordinados |
DE BAIXO PARA CIMA De Cima para Baixo |
|
| Propriedades | Nenhum | |
| Classes de captura |
Atividade WholeProgramAnalysis |
|
| Descrição | Ocorre no início e no término da fase de análise do programa completo da geração de código em tempo de ligação. |