Edge profiling for executable program code having branches through stub code segments

   
   

Method and apparatus for profiling edges that pass through stub code segments in executable program code. The compilation and linking of a computer program sometimes generates stub code segments that implement the transfer of control to functions that are external to a local segment of code. Branches through the stub code segments hinder the analysis of edges relative to the source code. In various embodiments of the invention, edges are created to represent respective branch instructions in the executable program code. Each edge has a source attribute, a target attribute, and an edge-taken count attribute. During execution, the numbers of times edges are taken are counted, and stub entry points and stub targets are identified. For each edge having a target that matches an entry point of a stub code segment, the edge target is changed to the stub target associated with the matching entry point. By identifying edges that target stub code segments, edges that target stub code segments can be combined with other edges for correlation with the source code.

Método y aparato para perfilar los bordes que pasan con segmentos de código del trozo en código ejecutable del programa. La compilación y el ligarse de un programa de computadora genera a veces los segmentos de código del trozo que ponen la transferencia en ejecucio'n del control a las funciones que son externas a un segmento local del código. Los ramas con los segmentos de código del trozo obstaculizan el análisis de bordes concerniente al código de fuente. En las varias encarnaciones de la invención, los bordes se crean para representar instrucciones de rama respectivas en el código ejecutable del programa. Cada borde tiene una cualidad de la fuente, una cualidad de la blanco, y una cualidad borde-tomada de la cuenta. Durante la ejecución, los números de épocas que se toman los bordes se cuentan, y se identifican los puntos de entrada del trozo y las blancos del trozo. Para cada borde que tiene una blanco que empareje un punto de entrada de un segmento de código del trozo, la blanco del borde se cambia a la blanco del trozo asociada al punto de entrada que empareja. Identificando afila que los segmentos de código del trozo de la blanco, los bordes que los segmentos de código del trozo de la blanco se pueden combinar con otros bordes para la correlación con el código de fuente.

 
Web www.patentalert.com

< Testing regularly structured logic circuits in integrated circuit devices

< Priority coloring for VLSI designs

> Resource locator

> Apparatus and method to import a logical volume indicating explicit storage attribute specifications

~ 00133