mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 18:13:01 +00:00
Sometimes, at least on arm platforms, we get a stack trace with only one function. When this happens and massif removes the top fn, we end up trying to create an execontext of 0 ips, as the only fn is removed, and an execontext of 0 ips causes the assert in m_execontext.c So, do whatever to avoid to crash when having a single fn stacktrace. The whatever means use a null execontext, which is an execontext of one single address 0x0. Note that this is just to bypass the crash. What is shown by massif is not very nice (but what could we show ?). Note that instead of using such a null execontext, we could rather just keep the single ips. But that might create a lot of single fn entries in the xtree and/or show undesired functions. So, we the null execontext, which is shown as 0xFFFFFFFFFFFFFFFF ??? in the massif output. Tested on amd64 by artificially creating stacktrace of one fn.