Я для этих целей на блекфине делал трассер - при входе/выходе в/из функцию специальный макрос сохраняет/извлекает в выделенной области памяти (в данном случае в блокнотной) специальную метку. Обработчик интерраптов использует эту инфу для вывода стека вызовов в дополнение к содержимому регистров. Получилось весьма кошерно.
Это моё личное предвзятое мнение. Любое совпадение с реальностью является случайным и непреднамеренным.