SDK de C++ Build Insights: tabla de eventosC++ Build Insights SDK: event table

El SDK de C++ Build Insights es compatible con Visual Studio 2017 y versiones superiores.The C++ Build Insights SDK is compatible with Visual Studio 2017 and above. Para ver la documentación de estas versiones, establezca el control selector de Versión de Visual Studio para este artículo en Visual Studio 2017 o Visual Studio 2019.To see the documentation for these versions, set the Visual Studio Version selector control for this article to Visual Studio 2017 or Visual Studio 2019. Se encuentra en la parte superior de la tabla de contenido de esta página.It's found at the top of the table of contents on this page.

Eventos del compiladorCompiler events

COMPILERCOMPILER
COMMAND_LINECOMMAND_LINE
ENVIRONMENT_VARIABLEENVIRONMENT_VARIABLE
FILE_INPUTFILE_INPUT
OBJ_OUTPUTOBJ_OUTPUT
FRONT_END_PASSFRONT_END_PASS
BACK_END_PASSBACK_END_PASS

Eventos front-end de compiladorCompiler front-end events

C1_DLLC1_DLL
FRONT_END_FILEFRONT_END_FILE
TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION
SYMBOL_NAMESYMBOL_NAME

Eventos de back-end de compiladorCompiler back-end events

C2_DLLC2_DLL
WHOLE_PROGRAM_ANALYSISWHOLE_PROGRAM_ANALYSIS
TOP_DOWNTOP_DOWN
BOTTOM_UPBOTTOM_UP
CODE_GENERATIONCODE_GENERATION
THREADTHREAD
FUNCTIONFUNCTION
FORCE_INLINEEFORCE_INLINEE

Eventos de enlazadorLinker events

LINKERLINKER
COMMAND_LINECOMMAND_LINE
ENVIRONMENT_VARIABLEENVIRONMENT_VARIABLE
FILE_INPUTFILE_INPUT
EXECUTABLE_IMAGE_OUTPUTEXECUTABLE_IMAGE_OUTPUT
EXP_OUTPUTEXP_OUTPUT
IMP_LIB_OUTPUTIMP_LIB_OUTPUT
LIB_OUTPUTLIB_OUTPUT
PASS1PASS1
PRE_LTCG_OPT_REFPRE_LTCG_OPT_REF
LTCGLTCG
OPT_REFOPT_REF
OPT_ICFOPT_ICF
OPT_LBROPT_LBR
PASS2PASS2

Tabla de eventosEvent table

eventoEvent PropiedadProperty DescripciónDescription
BACK_END_PASSBACK_END_PASS TipoType ActividadActivity
ParentsParents COMPILERCOMPILER
ChildrenChildren C2_DLLC2_DLL
PropiedadesProperties -Ruta de acceso absoluta al archivo de origen de entrada- Absolute path to input source file
-Ruta de acceso absoluta al archivo de objeto de salida- Absolute path to output object file
Clases de capturaCapture classes ActividadActivity
CompilerPassCompilerPass
BackEndPassBackEndPass
DescripciónDescription Se produce al iniciar y detener el paso de back-end del compilador.Occurs at the start and stop of the compiler back-end pass. Este paso es responsable de optimizar el código fuente de C/ C++ analizado y convertirlo en código máquina.This pass is responsible for optimizing parsed C/C++ source code and converting it into machine code.
BOTTOM_UPBOTTOM_UP TipoType ActividadActivity
ParentsParents WHOLE_PROGRAM_ANALYSISWHOLE_PROGRAM_ANALYSIS
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
BottomUpBottomUp
DescripciónDescription Se produce al iniciar y detener el pase de abajo arriba del análisis del programa entero.Occurs at the start and stop of the whole program analysis' bottom-up pass.
C1_DLLC1_DLL TipoType ActividadActivity
ParentsParents FRONT_END_PASSFRONT_END_PASS
ChildrenChildren FRONT_END_FILEFRONT_END_FILE
SYMBOL_NAMESYMBOL_NAME
TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
C1DLLC1DLL
DescripciónDescription Se produce al iniciar y detener una invocación de c1.dll o c1xx.dll.Occurs at the start and stop of a c1.dll or c1xx.dll invocation. Estos archivos DLL son front-end de C y C++ del compilador.These DLLs are the C and C++ front end of the compiler. Se invocan únicamente mediante el controlador del compilador ( cl.exe ).They're invoked solely by the compiler driver ( cl.exe ).
C2_DLLC2_DLL TipoType ActividadActivity
ParentsParents BACK_END_PASSBACK_END_PASS
LTCGLTCG
ChildrenChildren CODE_GENERATIONCODE_GENERATION
WHOLE_PROGRAM_ANALYSISWHOLE_PROGRAM_ANALYSIS
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
C2DLLC2DLL
DescripciónDescription Se produce al iniciar y detener una invocación de c2.dll.Occurs at the start and stop of a c2.dll invocation. Este archivo DLL es el back-end del compilador.This DLL is the back end of the compiler. Lo llama el controlador del compilador ( cl.exe ).It's called by the compiler driver ( cl.exe ). También lo invoca el enlazador ( link.exe ) cuando se utiliza la generación de código en tiempo de vínculo.It's also invoked by the linker ( link.exe ) when link-time code generation is used.
CODE_GENERATIONCODE_GENERATION TipoType ActividadActivity
ParentsParents C2_DLLC2_DLL
ChildrenChildren FUNCTIONFUNCTION
THREADTHREAD
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
CodeGenerationCodeGeneration
DescripciónDescription Se produce al iniciar y detener la fase de generación de código del back-end.Occurs at the start and stop of the back end's code generation phase.
COMMAND_LINECOMMAND_LINE TipoType Evento sencilloSimple Event
ParentsParents COMPILERCOMPILER
LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La línea de comandos que se usó para invocar cl.exe o link.exe- The command line that was used to invoke cl.exe or link.exe
Clases de capturaCapture classes SimpleEventSimpleEvent
CommandLineCommandLine
DescripciónDescription Se produce cuando el compilador y el enlazador finalizan la evaluación de la línea de comandos.Occurs when the compiler and linker are done evaluating the command line. La línea de comandos evaluada incluye todos los parámetros cl.exe y link.exe pasados mediante un archivo de respuesta.The evaluated command line includes all cl.exe and link.exe parameters passed via a response file. También incluye parámetros para cl.exe y link.exe pasados mediante variables de entorno, como CL, _CL_, LINK y _LINK_.It also includes parameters to cl.exe and link.exe passed via environment variables such as CL, _CL_, LINK, and _LINK_.
COMPILERCOMPILER TipoType ActividadActivity
ParentsParents NoneNone
ChildrenChildren BACK_END_PASSBACK_END_PASS
COMMAND_LINECOMMAND_LINE
ENVIRONMENT_VARIABLEENVIRONMENT_VARIABLE
FILE_INPUTFILE_INPUT
OBJ_OUTPUTOBJ_OUTPUT
FRONT_END_PASSFRONT_END_PASS
PropiedadesProperties -Versión del compilador- Compiler version
-Directorio de trabajo- Working directory
-La ruta de acceso absoluta al archivo cl.exe invocado- Absolute path to the invoked cl.exe
Clases de capturaCapture classes ActividadActivity
InvocaciónInvocation
CompiladorCompiler
DescripciónDescription Se produce al iniciar y detener una invocación de cl.exe.Occurs at the start and stop of a cl.exe invocation.
ENVIRONMENT_VARIABLEENVIRONMENT_VARIABLE TipoType Evento sencilloSimple Event
ParentsParents COMPILERCOMPILER
LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -Nombre de la variable de entorno.- The name of the environment variable
-Valor de la variable de entorno.- The value of the environment variable.
Clases de capturaCapture classes SimpleEventSimpleEvent
EnvironmentVariableEnvironmentVariable
DescripciónDescription Se produce una vez para cada variable de entorno existente en el momento en que se invoca cl.exe o link.exe.Occurs once for every existing environment variable at the time cl.exe or link.exe is invoked.
EXECUTABLE_IMAGE_OUTPUTEXECUTABLE_IMAGE_OUTPUT TipoType Evento sencilloSimple Event
ParentsParents LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta a un archivo DLL o a un archivo de salida ejecutable.- The absolute path to a DLL or executable output file.
Clases de capturaCapture classes SimpleEventSimpleEvent
FileOutputFileOutput
ExecutableImageOutputExecutableImageOutput
DescripciónDescription Se produce cuando una de las entradas del enlazador es un archivo DLL o un archivo de imagen ejecutable.Occurs when one of the linker inputs is a DLL or an executable image file.
EXP_OUTPUTEXP_OUTPUT TipoType Evento sencilloSimple Event
ParentsParents LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta a un archivo de salida .exp.- The absolute path to an .exp output file.
Clases de capturaCapture classes SimpleEventSimpleEvent
FileOutputFileOutput
ExpOutputExpOutput
DescripciónDescription Se produce cuando una de las salidas del enlazador es un archivo .exp.Occurs when one of the linker outputs is an .exp file.
FILE_INPUTFILE_INPUT TipoType Evento sencilloSimple Event
ParentsParents COMPILERCOMPILER
LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta al archivo de entrada.- The absolute path to the input file
-El tipo de archivo de entrada.- The type of input file
Clases de capturaCapture classes SimpleEventSimpleEvent
FileInputFileInput
DescripciónDescription Se produce para anunciar una entrada cl.exe o link.exe.Occurs to announce a cl.exe or link.exe input.
FORCE_INLINEEFORCE_INLINEE TipoType Evento sencilloSimple Event
ParentsParents FUNCTIONFUNCTION
ChildrenChildren NoneNone
PropiedadesProperties -El nombre de la función insertada por la fuerza.- The name of the force-inlined function.
-El tamaño de la función insertada por la fuerza, representada como un recuento de instrucciones intermedias.- The size of the force-inlined function, represented as an intermediate instruction count.
Clases de capturaCapture classes ActividadActivity
ForceInlineeForceInlinee
DescripciónDescription Se produce cuando una función se inserta por la fuerza en otra función mediante el uso de la palabra clave __forceinline .Occurs when a function is being force-inlined into another function through the use of the __forceinline keyword.
FRONT_END_FILEFRONT_END_FILE TipoType ActividadActivity
ParentsParents C1_DLLC1_DLL
FRONT_END_FILEFRONT_END_FILE
ChildrenChildren FRONT_END_FILEFRONT_END_FILE
TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION
PropiedadesProperties -La ruta de acceso absoluta al archivo.- Absolute path to the file.
Clases de capturaCapture classes ActividadActivity
FrontEndFileFrontEndFile
DescripciónDescription Se produce cuando el front-end del compilador inicia y detiene el procesamiento de un archivo.Occurs when the compiler front end starts and stops processing a file. Este evento es recursivo.This event is recursive. La recursividad se produce cuando el front-end está analizando los archivos incluidos.Recursion happens when the front end is parsing included files.
FRONT_END_PASSFRONT_END_PASS TipoType ActividadActivity
ParentsParents COMPILERCOMPILER
ChildrenChildren C1_DLLC1_DLL
PropiedadesProperties -Ruta de acceso absoluta al archivo de origen de entrada- Absolute path to input source file
-Ruta de acceso absoluta al archivo de objeto de salida- Absolute path to output object file
Clases de capturaCapture classes ActividadActivity
CompilerPassCompilerPass
FrontEndPassFrontEndPass
DescripciónDescription Se produce al iniciar y detener el pase del front-end del compilador.Occurs at the start and stop of the compiler front-end pass. Este pase es responsable de analizar el código fuente de C/C++ y convertirlo en lenguaje intermedio.This pass is responsible for parsing C/C++ source code and converting it into intermediate language.
FUNCTIONFUNCTION TipoType ActividadActivity
ParentsParents CODE_GENERATIONCODE_GENERATION
THREADTHREAD
TOP_DOWNTOP_DOWN
ChildrenChildren FORCE_INLINEEFORCE_INLINEE
PropiedadesProperties -Nombre de la función.- Name of the function
Clases de capturaCapture classes ActividadActivity
FunctionFunction
DescripciónDescription Se produce al iniciar y finalizar la generación del código para una función.Occurs when starting and ending generating the code for a function.
IMP_LIB_OUTPUTIMP_LIB_OUTPUT TipoType Evento sencilloSimple Event
ParentsParents LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta a un archivo de salida de la biblioteca de importación.- The absolute path to an import library output file.
Clases de capturaCapture classes SimpleEventSimpleEvent
FileOutputFileOutput
ImpLibOutputImpLibOutput
DescripciónDescription Se produce cuando una de las salidas del enlazador es una biblioteca de importación.Occurs when one of the linker's outputs is an import library.
LIB_OUTPUTLIB_OUTPUT TipoType Evento sencilloSimple Event
ParentsParents LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta a un archivo de salida de la biblioteca estática.- The absolute path to a static library output file.
Clases de capturaCapture classes SimpleEventSimpleEvent
FileOutputFileOutput
LibOutputLibOutput
DescripciónDescription Se produce cuando una de las salidas del enlazador es una biblioteca estática.Occurs when one of the linker's outputs is static library.
LINKERLINKER TipoType ActividadActivity
ParentsParents NoneNone
ChildrenChildren COMMAND_LINECOMMAND_LINE
ENVIRONMENT_VARIABLEENVIRONMENT_VARIABLE
EXECUTABLE_IMAGE_OUTPUTEXECUTABLE_IMAGE_OUTPUT
EXP_OUTPUTEXP_OUTPUT
FILE_INPUTFILE_INPUT
IMP_LIB_OUTPUTIMP_LIB_OUTPUT
LIB_OUTPUTLIB_OUTPUT
PASS1PASS1
PASS2PASS2
PropiedadesProperties -Versión del enlazador.- Linker version
-Directorio de trabajo- Working directory
-La ruta de acceso absoluta al archivo link.exe invocado- Absolute path to the invoked link.exe
Clases de capturaCapture classes ActividadActivity
InvocaciónInvocation
EnlazadorLinker
DescripciónDescription Se produce al iniciar y detener una invocación de link.exe.Occurs at the start and stop of a link.exe invocation.
LTCGLTCG TipoType ActividadActivity
ParentsParents PASS1PASS1
ChildrenChildren C2_DLLC2_DLL
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
LTCGLTCG
DescripciónDescription Se produce al iniciar y detener la generación de código en tiempo de vínculo.Occurs at the start and stop of link-time code generation.
OBJ_OUTPUTOBJ_OUTPUT TipoType Evento sencilloSimple Event
ParentsParents COMPILERCOMPILER
ChildrenChildren NoneNone
PropiedadesProperties -La ruta de acceso absoluta al archivo de salida .obj- The absolute path to the .obj output file
Clases de capturaCapture classes SimpleEventSimpleEvent
FileOutputFileOutput
ObjOutputObjOutput
DescripciónDescription Se produce una vez para cada salida . obj generada por cl.exe.Occurs once for every .obj output produced by cl.exe.
OPT_ICFOPT_ICF TipoType ActividadActivity
ParentsParents PASS1PASS1
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
OptICFOptICF
DescripciónDescription Se produce al iniciar y detener la optimización del enlazador de plegamientos de COMDAT idénticos (/OPT:ICF).Occurs at the start and stop of the identical COMDAT folding (/OPT:ICF) linker optimization.
OPT_LBROPT_LBR TipoType ActividadActivity
ParentsParents PASS1PASS1
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
OptLBROptLBR
DescripciónDescription Se produce al iniciar y detener la optimización del enlazador de rama larga (/OPT:LBR).Occurs at the start and stop of the long branch (/OPT:LBR) linker optimization.
OPT_REFOPT_REF TipoType ActividadActivity
ParentsParents PASS1PASS1
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
OptRefOptRef
DescripciónDescription Se produce al iniciar y detener las funciones sin referencia y la optimización del enlazador de la eliminación de datos (/OPT:REF).Occurs at the start and stop of the unreferenced functions and data elimination (/OPT:REF) linker optimization.
PASS1PASS1 TipoType ActividadActivity
ParentsParents LINKERLINKER
ChildrenChildren LTCGLTCG
OPT_ICFOPT_ICF
OPT_LBROPT_LBR
OPT_REFOPT_REF
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
Pass1Pass1
DescripciónDescription Se produce al iniciar y detener el paso 1 del enlazador.Occurs at the start and stop of the linker's pass 1.
PASS2PASS2 TipoType ActividadActivity
ParentsParents LINKERLINKER
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
Pass2Pass2
DescripciónDescription Se produce al iniciar y detener el paso 2 del enlazador.Occurs at the start and stop of the linker's pass 2.
PRE_LTCG_OPT_REFPRE_LTCG_OPT_REF TipoType ActividadActivity
ParentsParents PASS1PASS1
ChildrenChildren NoneNone
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
PreLTCGOptRefPreLTCGOptRef
DescripciónDescription Se produce al iniciar y detener el pase de optimización del enlazador que elimina las funciones y los datos sin referencia (/OPT:REF).Occurs at the start and stop of the linker optimization pass that eliminates unreferenced functions and data (/OPT:REF). Se realiza antes de la generación de código en tiempo de vínculo.It's done before link-time code generation.
SYMBOL_NAMESYMBOL_NAME TipoType Evento sencilloSimple Event
ParentsParents C1_DLLC1_DLL
ChildrenChildren NoneNone
PropiedadesProperties -Una clave de tipo- A type key
-El nombre del tipo.- The type's name
Clases de capturaCapture classes SimpleEventSimpleEvent
SymbolNameSymbolName
DescripciónDescription Se produce al final del pase del front-end: una vez por cada tipo implicado en las instancias de plantilla.Occurs at the end of the front-end pass: once for every type involved in template instantiations. La clave es un identificador numérico del tipo, mientras que el nombre es su representación de texto.The key is a numerical identifier for the type, while the name is its text representation. Las claves de tipo son únicas en el seguimiento que se está analizando.Type keys are unique within the trace being analyzed. Sin embargo, las distintas claves que provienen de diferentes pases del front-end del compilador pueden apuntar al mismo tipo.However, different keys coming from different compiler front-end passes may point to the same type. La comparación de tipos entre diferentes pases del front-end del compilador requiere el uso de sus nombres.Comparing types between different compiler front-end passes requires using their names. 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.SYMBOL_NAME events are emitted at the end of a compiler front-end pass, after all template instantiations have taken place.
TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION TipoType ActividadActivity
ParentsParents C1_DLLC1_DLL
FRONT_END_FILEFRONT_END_FILE
TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION
ChildrenChildren TEMPLATE_INSTANTIATIONTEMPLATE_INSTANTIATION
PropiedadesProperties -La clave para el tipo especializado.- The key for the specialized type
-La clave del tipo de la plantilla principal- The key for the primary template's type
-El tipo de plantilla de la que se ha creado una instancia.- The kind of template that was instantiated
Clases de capturaCapture classes ActividadActivity
TemplateInstantiationTemplateInstantiation
DescripciónDescription Se produce al principio y al final de una instancia de plantilla.Occurs at the beginning and end of a template instantiation. Se crea una instancia de un tipo de plantilla principal (como vector), lo que da como resultado un tipo especializado (como std::vector<int>).A primary template type (such as vector) is instantiated, resulting in a specialized type (such as std::vector<int>). Se proporciona una clave para ambos tipos.A key is given for both types. Use el evento SYMBOL_NAME para convertir una clave en el nombre del tipo.Use the SYMBOL_NAME event to convert a key into the type's name. Las claves de tipo son únicas en el seguimiento que se está analizando.Type keys are unique within the trace being analyzed. Sin embargo, las distintas claves que provienen de diferentes pases del front-end del compilador pueden apuntar al mismo tipo.However, different keys coming from different compiler front-end passes may point to the same type. La comparación de tipos entre diferentes pases del front-end del compilador requiere el uso de nombres de símbolos.Comparing types between different compiler front-end passes requires using symbol names. Este evento es recursivo.This event is recursive. En algunos casos, la recursividad se produce cuando el front-end crea instancias de plantillas anidadas.Recursion happens in some cases when the front end is instantiating nested templates.
THREADTHREAD TipoType ActividadActivity
ParentsParents CODE_GENERATIONCODE_GENERATION
TOP_DOWNTOP_DOWN
ChildrenChildren FUNCTIONFUNCTION
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
SubprocesoThread
DescripciónDescription Se produce al principio y al final de la ejecución de un subproceso del back-end del compilador.Occurs at the start and end of a compiler back-end thread execution. Un subproceso que se está suspendiendo se considera finalizado.A thread being suspended is considered ended. Un subproceso que se está reactivando se considera iniciado.A thread being woken up is considered started.
TOP_DOWNTOP_DOWN TipoType ActividadActivity
ParentsParents WHOLE_PROGRAM_ANALYSISWHOLE_PROGRAM_ANALYSIS
ChildrenChildren FUNCTIONFUNCTION
THREADTHREAD
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
TopDownTopDown
DescripciónDescription Se produce al iniciar y detener el pase de arriba abajo del programa entero.Occurs at the start and stop of the whole program analysis' top-down pass.
WHOLE_PROGRAM_ANALYSISWHOLE_PROGRAM_ANALYSIS TipoType ActividadActivity
ParentsParents C2_DLLC2_DLL
ChildrenChildren BOTTOM_UPBOTTOM_UP
TOP_DOWNTOP_DOWN
PropiedadesProperties NoneNone
Clases de capturaCapture classes ActividadActivity
WholeProgramAnalysisWholeProgramAnalysis
DescripciónDescription 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.Occurs at the start and stop of the whole-program analysis phase of link-time code generation.