Share via


SDK de C++ Build Insights: tabla de eventos

El SDK de C++ Build Insights es compatible con Visual Studio 2017 y versiones posteriores. Para ver la documentación de estas versiones, establezca el control de selector de Versión de Visual Studio para este artículo en Visual Studio 2017 o versiones posteriores. Se encuentra en la parte superior de la tabla de contenido de esta página.

Eventos del compilador

COMPILER
COMMAND_LINE
ENVIRONMENT_VARIABLE
FILE_INPUT
OBJ_OUTPUT
FRONT_END_PASS
BACK_END_PASS

Eventos front-end de compilador

C1_DLL
FRONT_END_FILE
TEMPLATE_INSTANTIATION
SYMBOL_NAME
MODULE
HEADER_UNIT
PRECOMPILED_HEADER

Eventos de back-end de compilador

C2_DLL
WHOLE_PROGRAM_ANALYSIS
TOP_DOWN
BOTTOM_UP
CODE_GENERATION
THREAD
FUNCTION
FORCE_INLINEE

Eventos de enlazador

LINKER
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

Tabla de eventos

Evento Propiedad Descripción
BACK_END_PASS Tipo Actividad
Parents COMPILER
Children C2_DLL
Propiedades -Ruta de acceso absoluta al archivo de origen de entrada
-Ruta de acceso absoluta al archivo de objeto de salida
Clases de captura Actividad
CompilerPass
BackEndPass
Descripción Se produce al iniciar y detener el paso de back-end del compilador. Este paso es responsable de optimizar el código fuente de C/ C++ analizado y convertirlo en código máquina.
BOTTOM_UP Tipo Actividad
Parents WHOLE_PROGRAM_ANALYSIS
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
BottomUp
Descripción Se produce al iniciar y detener el pase de abajo arriba del análisis del programa entero.
C1_DLL Tipo Actividad
Parents FRONT_END_PASS
Children FRONT_END_FILE
SYMBOL_NAME
TEMPLATE_INSTANTIATION
Propiedades Ninguno
Clases de captura Actividad
C1DLL
Descripción Se produce al iniciar y detener una invocación de c1.dll o c1xx.dll. Estos archivos DLL son front-end de C y C++ del compilador. Se invocan únicamente mediante el controlador del compilador (cl.exe).
C2_DLL Tipo Actividad
Parents BACK_END_PASS
LTCG
Children CODE_GENERATION
WHOLE_PROGRAM_ANALYSIS
Propiedades Ninguno
Clases de captura Actividad
C2DLL
Descripción Se produce al iniciar y detener una invocación de c2.dll. Este archivo DLL es el back-end del compilador. Lo llama el controlador del compilador (cl.exe). También lo invoca el enlazador (link.exe) cuando se utiliza la generación de código en tiempo de vínculo.
CODE_GENERATION Tipo Actividad
Parents C2_DLL
Children FUNCTION
THREAD
Propiedades Ninguno
Clases de captura Actividad
CodeGeneration
Descripción Se produce al iniciar y detener la fase de generación de código del back-end.
COMMAND_LINE Tipo Evento sencillo
Parents COMPILER
LINKER
Children Ninguno
Propiedades -La línea de comandos que se usó para invocar cl.exe o link.exe
Clases de captura SimpleEvent
CommandLine
Descripción Se produce cuando el compilador y el enlazador finalizan la evaluación de la línea de comandos. La línea de comandos evaluada incluye todos los parámetros cl.exe y link.exe pasados mediante un archivo de respuesta. También incluye parámetros para cl.exe y link.exe pasados mediante variables de entorno, como CL, _CL_, LINK y _LINK_.
COMPILER Tipo Actividad
Parents Ninguno
Children BACK_END_PASS
COMMAND_LINE
ENVIRONMENT_VARIABLE
FILE_INPUT
OBJ_OUTPUT
FRONT_END_PASS
Propiedades -Versión del compilador
-Directorio de trabajo
-La ruta de acceso absoluta al archivo cl.exe invocado
Clases de captura Actividad
Invocación
Compilador
Descripción Se produce al iniciar y detener una invocación de cl.exe.
ENVIRONMENT_VARIABLE Tipo Evento sencillo
Parents COMPILER
LINKER
Children Ninguno
Propiedades -Nombre de la variable de entorno.
-Valor de la variable de entorno.
Clases de captura SimpleEvent
EnvironmentVariable
Descripción Se produce una vez para cada variable de entorno existente en el momento en que se invoca cl.exe o link.exe.
EXECUTABLE_IMAGE_OUTPUT Tipo Evento sencillo
Parents LINKER
Children Ninguno
Propiedades -La ruta de acceso absoluta a un archivo DLL o a un archivo de salida ejecutable.
Clases de captura SimpleEvent
FileOutput
ExecutableImageOutput
Descripción Se produce cuando una de las entradas del enlazador es un archivo DLL o un archivo de imagen ejecutable.
EXP_OUTPUT Tipo Evento sencillo
Parents LINKER
Children Ninguno
Propiedades -La ruta de acceso absoluta a un archivo de salida .exp.
Clases de captura SimpleEvent
FileOutput
ExpOutput
Descripción Se produce cuando una de las salidas del enlazador es un archivo .exp.
FILE_INPUT Tipo Evento sencillo
Parents COMPILER
LINKER
Children Ninguno
Propiedades -La ruta de acceso absoluta al archivo de entrada.
-El tipo de archivo de entrada.
Clases de captura SimpleEvent
FileInput
Descripción Se produce para anunciar una entrada cl.exe o link.exe.
FORCE_INLINEE Tipo Evento sencillo
Parents FUNCTION
Children Ninguno
Propiedades -El nombre de la función insertada por la fuerza.
-El tamaño de la función insertada por la fuerza, representada como un recuento de instrucciones intermedias.
Clases de captura Actividad
ForceInlinee
Descripción Se produce cuando una función se inserta por la fuerza en otra función mediante el uso de la palabra clave __forceinline.
FRONT_END_FILE Tipo Actividad
Parents C1_DLL
FRONT_END_FILE
Children FRONT_END_FILE
TEMPLATE_INSTANTIATION
Propiedades -La ruta de acceso absoluta al archivo.
Clases de captura Actividad
FrontEndFile
Descripción Se produce cuando el front-end del compilador inicia y detiene el procesamiento de un archivo. Este evento es recursivo. La recursividad se produce cuando el front-end está analizando los archivos incluidos.
FRONT_END_PASS Tipo Actividad
Parents COMPILER
Children C1_DLL
MODULE
HEADER_UNIT
PRECOMPILED_HEADER
Propiedades -Ruta de acceso absoluta al archivo de origen de entrada
-Ruta de acceso absoluta al archivo de objeto de salida
Clases de captura Actividad
CompilerPass
FrontEndPass
Descripción Se produce al iniciar y detener el pase del front-end del compilador. Este pase es responsable de analizar el código fuente de C/C++ y convertirlo en lenguaje intermedio.
FUNCTION Tipo Actividad
Parents CODE_GENERATION
THREAD
TOP_DOWN
Children FORCE_INLINEE
Propiedades -Nombre de la función.
Clases de captura Actividad
Function
Descripción Se produce al iniciar y finalizar la generación del código para una función.
HEADER_UNIT Tipo Actividad
Parents FRONT_END_PASS
Children Ninguno
Propiedades Ninguno
Clases de captura SimpleEvent
TranslationUnitType
HeaderUnit
Descripción Se produce al principio del pase de front-end y representa que se está procesando una unidad de traducción de unidades de encabezado.
IMP_LIB_OUTPUT Tipo Evento sencillo
Parents LINKER
Children Ninguno
Propiedades -La ruta de acceso absoluta a un archivo de salida de la biblioteca de importación.
Clases de captura SimpleEvent
FileOutput
ImpLibOutput
Descripción Se produce cuando una de las salidas del enlazador es una biblioteca de importación.
LIB_OUTPUT Tipo Evento sencillo
Parents LINKER
Children Ninguno
Propiedades -La ruta de acceso absoluta a un archivo de salida de la biblioteca estática.
Clases de captura SimpleEvent
FileOutput
LibOutput
Descripción Se produce cuando una de las salidas del enlazador es una biblioteca estática.
LINKER Tipo Actividad
Parents Ninguno
Children COMMAND_LINE
ENVIRONMENT_VARIABLE
EXECUTABLE_IMAGE_OUTPUT
EXP_OUTPUT
FILE_INPUT
IMP_LIB_OUTPUT
LIB_OUTPUT
PASS1
PASS2
Propiedades -Versión del enlazador.
-Directorio de trabajo
-La ruta de acceso absoluta al archivo link.exe invocado
Clases de captura Actividad
Invocación
Enlazador
Descripción Se produce al iniciar y detener una invocación de link.exe.
LTCG Tipo Actividad
Parents PASS1
Children C2_DLL
Propiedades Ninguno
Clases de captura Actividad
LTCG
Descripción Se produce al iniciar y detener la generación de código en tiempo de vínculo.
MODULE Tipo Actividad
Parents FRONT_END_PASS
Children Ninguno
Propiedades Ninguno
Clases de captura SimpleEvent
TranslationUnitType
Módulo
Descripción Se produce al principio del pase de front-end y representa que se está procesando una unidad de traducción de un módulo.
OBJ_OUTPUT Tipo Evento sencillo
Parents COMPILER
Children Ninguno
Propiedades -La ruta de acceso absoluta al archivo de salida .obj
Clases de captura SimpleEvent
FileOutput
ObjOutput
Descripción Se produce una vez para cada salida . obj generada por cl.exe.
OPT_ICF Tipo Actividad
Parents PASS1
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
OptICF
Descripción Se produce al iniciar y detener la optimización del enlazador de plegamientos de COMDAT idénticos (/OPT:ICF).
OPT_LBR Tipo Actividad
Parents PASS1
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
OptLBR
Descripción Se produce al iniciar y detener la optimización del enlazador de rama larga (/OPT:LBR).
OPT_REF Tipo Actividad
Parents PASS1
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
OptRef
Descripción Se produce al iniciar y detener las funciones sin referencia y la optimización del enlazador de la eliminación de datos (/OPT:REF).
PASS1 Tipo Actividad
Parents LINKER
Children LTCG
OPT_ICF
OPT_LBR
OPT_REF
Propiedades Ninguno
Clases de captura Actividad
Pass1
Descripción Se produce al iniciar y detener el paso 1 del enlazador.
PASS2 Tipo Actividad
Parents LINKER
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
Pass2
Descripción Se produce al iniciar y detener el paso 2 del enlazador.
PRECOMPILED_HEADER Tipo Actividad
Parents FRONT_END_PASS
Children Ninguno
Propiedades Ninguno
Clases de captura SimpleEvent
TranslationUnitType
PrecompiledHeader
Descripción Se produce al principio del pase de front-end y representa que se está procesando una unidad de traducción de un encabezado precompilado (PCH).
PRE_LTCG_OPT_REF Tipo Actividad
Parents PASS1
Children Ninguno
Propiedades Ninguno
Clases de captura Actividad
PreLTCGOptRef
Descripción Se produce al iniciar y detener el pase de optimización del enlazador que elimina las funciones y los datos sin referencia (/OPT:REF). Se realiza antes de la generación de código en tiempo de vínculo.
SYMBOL_NAME Tipo Evento sencillo
Parents C1_DLL
Children Ninguno
Propiedades -Una clave de tipo
-El nombre del tipo.
Clases de captura SimpleEvent
SymbolName
Descripción Se produce al final del pase del front-end: una vez por cada tipo implicado en las instancias de plantilla. La clave es un identificador numérico del tipo, mientras que el nombre es su representación de texto. Las claves de tipo son únicas en el seguimiento que se está analizando. Sin embargo, las distintas claves que provienen de diferentes pases del front-end del compilador pueden apuntar al mismo tipo. La comparación de tipos entre diferentes pases del front-end del compilador requiere el uso de sus nombres. Los eventos de SYMBOL_NAME se emiten al final de un pase del front-end del compilador, después de que se hayan realizado todas las creaciones de instancias de plantilla.
TEMPLATE_INSTANTIATION Tipo Actividad
Parents C1_DLL
FRONT_END_FILE
TEMPLATE_INSTANTIATION
Children TEMPLATE_INSTANTIATION
Propiedades -La clave para el tipo especializado.
-La clave del tipo de la plantilla principal
-El tipo de plantilla de la que se ha creado una instancia.
Clases de captura Actividad
TemplateInstantiation
Descripción Se produce al principio y al final de una instancia de plantilla. Se crea una instancia de un tipo de plantilla principal (como vector), lo que da como resultado un tipo especializado (como std::vector<int>). Se proporciona una clave para ambos tipos. Use el evento SYMBOL_NAME para convertir una clave en el nombre del tipo. Las claves de tipo son únicas en el seguimiento que se está analizando. Sin embargo, las distintas claves que provienen de diferentes pases del front-end del compilador pueden apuntar al mismo tipo. La comparación de tipos entre diferentes pases del front-end del compilador requiere el uso de nombres de símbolos. Este evento es recursivo. En algunos casos, la recursividad se produce cuando el front-end crea instancias de plantillas anidadas.
THREAD Tipo Actividad
Parents CODE_GENERATION
TOP_DOWN
Children FUNCTION
Propiedades Ninguno
Clases de captura Actividad
Subproceso
Descripción Se produce al principio y al final de la ejecución de un subproceso del back-end del compilador. Un subproceso que se está suspendiendo se considera finalizado. Un subproceso que se está reactivando se considera iniciado.
TOP_DOWN Tipo Actividad
Parents WHOLE_PROGRAM_ANALYSIS
Children FUNCTION
THREAD
Propiedades Ninguno
Clases de captura Actividad
TopDown
Descripción Se produce al iniciar y detener el pase de arriba abajo del programa entero.
TRANSLATION_UNIT_TYPE Tipo Actividad
Parents FRONT_END_PASS
Children MODULE
HEADER_UNIT
PRECOMPILED_HEADER
Propiedades - Tipo de unidad de traducción
Clases de captura SimpleEvent
TranslationUnitType
Descripción Se produce al principio del pase de front-end. El tipo identifica si este pase está procesando un módulo, una unidad de encabezado o un encabezado precompilado.
WHOLE_PROGRAM_ANALYSIS Tipo Actividad
Parents C2_DLL
Children BOTTOM_UP
TOP_DOWN
Propiedades Ninguno
Clases de captura Actividad
WholeProgramAnalysis
Descripción Se produce al iniciar y detener la fase de análisis del programa entero de generación de código en tiempo de vínculo.