aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/os_aix.go
diff options
context:
space:
mode:
authorClément Chigot <clement.chigot@atos.net>2019-03-25 10:26:44 +0100
committerIan Lance Taylor <iant@golang.org>2019-03-26 20:04:42 +0000
commitb5cf035d1ca21ee4bf799c6d97b2759471b76483 (patch)
tree186ed54996563dae3e6e7716181e92c17c01f105 /src/runtime/os_aix.go
parente007916cea969c4d5917da931413fba4eb43e8f6 (diff)
downloadgo-b5cf035d1ca21ee4bf799c6d97b2759471b76483.tar.gz
go-b5cf035d1ca21ee4bf799c6d97b2759471b76483.zip
runtime: improve sigtramp on aix/ppc64 to handle SIGPROF
R14, R15 must be saved in sigtramp because they might be modified by Go code when a SIGPROF occurs. Fixes #28555 Change-Id: I573541f108d7d6aac8e60d33c649e5db943f3ef5 Reviewed-on: https://go-review.googlesource.com/c/go/+/169117 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/runtime/os_aix.go')
-rw-r--r--src/runtime/os_aix.go2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/runtime/os_aix.go b/src/runtime/os_aix.go
index 141ce3bb11..45c7174e05 100644
--- a/src/runtime/os_aix.go
+++ b/src/runtime/os_aix.go
@@ -233,6 +233,8 @@ func setSignalstackSP(s *stackt, sp uintptr) {
func (c *sigctxt) fixsigcode(sig uint32) {
}
+//go:nosplit
+//go:nowritebarrierrec
func sigaddset(mask *sigset, i int) {
(*mask)[(i-1)/64] |= 1 << ((uint32(i) - 1) & 63)
}