When a branch target is a stub, the target is simply shown as *STUB@address*.

Branch Targets in Disassembly Listings

By default, the symbols shown for branch targets in disassembly are limited to 30 characters. You can change the limit by setting the following variable in the measurement configuration file or the

.caliperinit file:

disasm_target_name_limit = limit

Source Position Correlation

In addition to printing address and function names, HP Caliper prints source position information when it is available and appropriate. This capability depends on extra information generated by the compiler and is not always available. For example, if the executable was stripped, this information cannot be shown.

If a program was compiled at a high optimization level, the source position is shown with a ~ sign.

NOTE: On Linux, correlating sample data to source files created with GNU compilers requires

that you use the -gcompiler option to produce debug information. For example: gcc —g—O

foo.c

Source Line Data

Performance data shown for source lines is, by default, enclosed in parentheses to help differentiate it from bundle-level and instruction-level data. To have reports show source line data without parentheses, set the following variable in the measurement configuration file or the .caliperinit file:

use_parens_for_statement_data = False

Alternatively, you can turn off reporting of source line data altogether by setting the following variable in the measurement configuration file or the .caliperinit file:

suppress_statement_data = True

Data attributed to a source line is data-aggregated across all bundles whose first instruction is associated with the source line. This occurs even though the instruction bundle might cross source line boundaries. Therefore, data attributed to source statements will not always be completely accurate.

Column numbers emitted by the C and C++ and Fortran compilers and shown in reports are not generally accurate, except for legacy HP C. However, they correctly reflect relative positions in the source line. For example, column 4 represents a location in the source line that occurs before column 5, though neither column 4 nor column 5 necessarily refers to the specific columns in the source line.

Address Types Shown

The following list describes the address types reported by HP Caliper:

In the list of included and excluded load modules near the top of reports, HP Caliper reports the run-time address range of each load module.

For function start addresses, HP Caliper reports link-time addresses, the offset from the text base of the containing load module.

HP Caliper reports each disassembled instruction address as an offset from a function start address.

HP Caliper reports addresses with no known function name and no known load module as run-time addresses.

110 Controlling the Content of Reports

Page 110
Image 110
HP UX Caliper Software manual Source Position Correlation, Address Types Shown, Branch Targets in Disassembly Listings