aboutsummaryrefslogtreecommitdiff
path: root/libgo
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2017-07-21 18:08:01 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2017-07-21 18:08:01 +0000
commit0ab71760942f9ca14b9b7530455f390271db3106 (patch)
treece53328cf0bac125f37c14cfb44a59b308575461 /libgo
parentb3530b946f208bb581d2bcba2b311331a70bb97f (diff)
downloadgcc-0ab71760942f9ca14b9b7530455f390271db3106.zip
gcc-0ab71760942f9ca14b9b7530455f390271db3106.tar.gz
gcc-0ab71760942f9ca14b9b7530455f390271db3106.tar.bz2
runtime: handle PPC/PPC64 GNU/Linux in getSiginfo
Updates golang/go#20931 Reviewed-on: https://go-review.googlesource.com/50631 From-SVN: r250436
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 ad29662..d274865 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.