Use the Trace view to display a graphical navigation chart that shows function executions with a navigational timeline. In addition, the disassembly trace shows function calls with associated addresses and if selected, instructions. Clicking on a specific time in the chart synchronizes the Disassembly view.
When a trace has been captured, the debugger extracts the information from the trace stream and decompresses it to provide a full disassembly, with symbols, of the executed code.
The left-hand column of the chart shows the percentages of the total trace for each function. For example, if a total of 1000 instructions are executed and 300 of these instructions are associated with
myFunction() then this function is displayed with 30%.
In the navigational timeline, the color coding is a heat map showing the executed instructions and the number of instructions each function executes in each timeline. The darker red color shows more instructions and the lighter yellow color shows fewer instructions. At a scale of 1:1 however, the color scheme changes to display memory access instructions as a darker red color, branch instructions as a medium orange color, and all the other instructions as a lighter green color.
Figure 15-48 Trace view with a scale of 100:1
The Trace view might not be visible by default. To add this view:
- Ensure that you are in the Development Studio perspective.
- Select Window > Show View > Trace.
The Trace view navigation chart contains several tabs:
- Trace tab shows the graphical timeline and disassembly.
- Capture Device tab gives information about the trace capture device and the trace buffer, and allows you to configure the trace capture.
- Source tab gives information about the trace source.
- Ranges tab allows you to limit the trace capture to a specific address range.
The Trace tab also shows:
- Buffer Size
Size of the trace buffer to store trace records. This is determined by the trace capture device. The trace records can be instruction records or non-instruction records.
- Buffer Used
Amount of the trace buffer that is already used for trace records.
- Records in Page
The total number of instruction records and non-instruction records in the current Trace view.
- Records Visible
The number of trace records visible in the disassembly area of the Trace view.