summaryrefslogtreecommitdiff
path: root/libgo
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2017-07-21 18:08:01 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2017-07-21 18:08:01 +0000
commit527223661a797d2f96dc2d0fbb651f1725b8ad90 (patch)
treece53328cf0bac125f37c14cfb44a59b308575461 /libgo
parente9e43806a4dcff2a9a68004876bc8a28f7fdfd91 (diff)
downloadgcc-527223661a797d2f96dc2d0fbb651f1725b8ad90.tar.gz
runtime: handle PPC/PPC64 GNU/Linux in getSiginfo
Updates golang/go#20931 Reviewed-on: https://go-review.googlesource.com/50631 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@250436 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgo')
-rw-r--r--libgo/runtime/go-signal.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libgo/runtime/go-signal.c b/libgo/runtime/go-signal.c
index ad29662d0fd..d274865074f 100644
--- a/libgo/runtime/go-signal.c
+++ b/libgo/runtime/go-signal.c
@@ -215,6 +215,11 @@ getSiginfo(siginfo_t *info, void *context __attribute__((unused)))
ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gregs[REG_EIP];
#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.