Reputation: 505
I'm debugging a crash where a long-running method is called frequently before death. My primary concern is the difficulty in determining where nested and/or recursive calls are.
The Trace->Chart->Symbols window shows a graph of which function is running at a given time, which looks like this for the following calls:
display
|
drawChildren
/ \
drawTitle drawImage
| |
display display
| |
drawChildren drawChildren
display | _ _ _ _ _ _
drawChildren | |_ | |_| | _ | |_| | _|
drawTitle | |_| |_| | | | |
drawImage | |_| |_|
What I'd like is a something more akin to a flame graph, where the duration of each call is visible at a glance and nested calls are easier to spot:
display______________________________
drawChildren_______________________
drawTitle_______ drawImage_______
display_______ display_______
drawChildren drawChildren
I've tried looking at the list view, but I found it cumbersome to navigate for the amount of calls and iterations within our problematic code. I know the chart view can be sorted, but is there any way to get a different view of the data?
Upvotes: 3
Views: 1744
Reputation: 4183
I guess the commands which match best to your needs are
You won't find this commands in the menu. You have to type them in the command line on the bottom of the TRACE32 application window (behind B::
) or use the Softkey-Buttons below the command line to find these commands.
Note that you can synchronize the trace windows along each other with the option "/Track".
Upvotes: 4