aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/internal/sys
diff options
context:
space:
mode:
authorClément Chigot <clement.chigot@atos.net>2019-01-09 14:05:17 +0100
committerIan Lance Taylor <iant@golang.org>2019-01-09 22:06:51 +0000
commit20ac64a2dd1f7993101d7e069eab3b84ab2c0bd2 (patch)
tree44cabd19b42991b488294b861f53afb0302c6b37 /src/runtime/internal/sys
parenta5318bf5d676b3dfc10a1843668e3593cbdc87c5 (diff)
downloadgo-20ac64a2dd1f7993101d7e069eab3b84ab2c0bd2.tar.xz
cmd/dist, cmd/link, runtime: fix stack size when cross-compiling aix/ppc64
This commit allows to cross-compiling aix/ppc64. The nosplit limit must twice as large as on others platforms because of AIX syscalls. The stack limit, especially stackGuardMultiplier, was set by cmd/dist during the bootstrap and doesn't depend on GOOS/GOARCH target. Fixes #29572 Change-Id: Id51e38885e1978d981aa9e14972eaec17294322e Reviewed-on: https://go-review.googlesource.com/c/157117 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/internal/sys')
-rw-r--r--src/runtime/internal/sys/stubs.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/runtime/internal/sys/stubs.go b/src/runtime/internal/sys/stubs.go
index 5328023268..10b0173f60 100644
--- a/src/runtime/internal/sys/stubs.go
+++ b/src/runtime/internal/sys/stubs.go
@@ -11,3 +11,6 @@ const RegSize = 4 << (^Uintreg(0) >> 63) // unsafe.Sizeof(uintreg(0))
const SpAlign = 1*(1-GoarchArm64) + 16*GoarchArm64 // SP alignment: 1 normally, 16 for ARM64
var DefaultGoroot string // set at link time
+
+// AIX requires a larger stack for syscalls.
+const StackGuardMultiplier = StackGuardMultiplierDefault*(1-GoosAix) + 2*GoosAix