* strace.c (trace) [PTRACE_GETSIGINFO]: Fetch siginfo_t for SIGSEGV
and SIGBUS signals, use si_addr in output.
pc += (psr >> PSR_RI) & 0x3;
ptrace(PT_GETSIGINFO, pid, 0, (long) &si);
addr = (unsigned long) si.si_addr;
+#elif defined PTRACE_GETSIGINFO
+ if (WSTOPSIG(status) == SIGSEGV ||
+ WSTOPSIG(status) == SIGBUS) {
+ siginfo_t si;
+ if (ptrace(PTRACE_GETSIGINFO, pid,
+ 0, &si) == 0)
+ addr = (unsigned long)
+ si.si_addr;
+ }
#endif
printleader(tcp);
tprintf("--- %s (%s) @ %lx (%lx) ---",