Hi Lup, This Call Graph solution that you used is very useful!
I used a call graph solution called egypt some time ago to get a better vision of a legacy project that I should take care, I wrote down the steps here: https://acassis.wordpress.com/2020/05/08/creating-call-graph-function-for-c-program-compiled-with-gcc/ But it only generated static call graph images. This solution we found is way more complete. Thank you again for another great post! BR, Alan On 3/5/23, Lee, Lup Yuen <lu...@appkaki.com> wrote: > Last week we ran NuttX on Unicorn Emulator and we hit a baffling Arm64 > Exception. In this article we’ll create some tools to troubleshoot the > exception… > > 1. Render the Dynamic Call Graph for NuttX, to understand how it boots > > 2. Make it Clickable, so we can browse the NuttX Source Code as we explore > the Call Graph > > 3. We’ll use a Block Execution Hook in Unicorn Emulator to generate the > Call Graph with Rust > > 4. And call the Rust Libraries addr2line and gimli to map the Code > Addresses to NuttX Kernel Functions > > 5. Thanks to the (Clickable) Call Graph, we’ll describe the complete Boot > Sequence of NuttX on PinePhone > > 6. And explain how we might do Automated Daily Build and Test for NuttX on > PinePhone > > https://lupyuen.github.io/articles/unicorn2 > > Lup >