diff options
Diffstat (limited to 'libgo/runtime/go-signal.c')
-rw-r--r-- | libgo/runtime/go-signal.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c index ad29662d0fd..8c7ecbae3b5 100644 --- a/libgo/runtime/go-signal.c +++ b/libgo/runtime/go-signal.c @@ -215,6 +215,16 @@ getSiginfo(siginfo_t *info, void *context __attribute__((unused))) ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gregs[REG_EIP]; #endif #endif +#ifdef __alpha__ + #ifdef __linux__ + ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.sc_pc; + #endif +#endif +#ifdef __PPC__ + #ifdef __linux__ + ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.regs->nip; + #endif +#endif if (ret.sigpc == 0) { // Skip getSiginfo/sighandler/sigtrampgo/sigtramp/handler. |