Call tree for embedded software

Ron picture Ron · Jun 11, 2009 · Viewed 9k times · Source

Does anyone know some tools to create a call tree for C application that will run on a microcontroller (Cortex-M3)? It could be generated from source code (not ideal), object code (prefered solution), or at runtime (acceptable). I've looked at gprof, but there's still a lot missing to get it to work on an embedded system.

An added bonus would be that the tool also gives the maximum stack depth.

Update: solution is preferably free.

Answer

Hexagon picture Hexagon · Jun 11, 2009

One good way to achieve this is by using the --callgraph option to the ARM linker (armlink) that is part of RVCT (not free).

For more details - callgraph documentation.

I realize from one of the comments that you are looking for a gcc-based solution, which this isn't. But it may still be helpful.