3

I understand there is system call mt__trce, but I would like an API method to give the call stack information that I can use in a C++ program. Is there such a method?

Toby Speight
  • 27,591
  • 48
  • 66
  • 103
Muru
  • 27
  • 2
  • mmm, is that Windows, Linux or Mac or what? – ForceBru Mar 29 '16 at 16:27
  • 1
    @ForceBru: tags (and subject) says AIX – Toby Speight Mar 29 '16 at 16:28
  • 1
    @ForceBru: Neither. AIX is IBM's proprietary Unix operating system. – doynax Mar 29 '16 at 16:28
  • With xlc, using `mt__trce` to dump a core for later analysis appears to be all you can do. If using glibc, you can use `backtrace()`. Look at the more generic question http://stackoverflow.com/questions/105659/how-can-one-grab-a-stack-trace-in-c ; several answers there give alternatives that may solve your problem. – patrickmdnet Jun 25 '16 at 20:35
  • @TobySpeight I´ve tried to do the same that you attempted and did not suceeded Have you found any way to dissect context->uc_mcontext.jmp_context aix structure to get PC and SP? My searches send me to this answer (bottom) that seems to get a backtrace, but i cant find the arm_pc or the gregs[REG_PC] structure on AIX. I should use them to get PC and SP and them get functions. http://stackoverflow.com/questions/29559347/how-to-unwind-the-stack-to-get-backtrace-for-the-specified-stack-pointer-sp – LeoPucciBr Mar 24 '17 at 18:17

0 Answers0