aboutsummaryrefslogtreecommitdiff
path: root/src/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd')
-rw-r--r--src/cmd/internal/objabi/stack.go15
-rw-r--r--src/cmd/link/internal/ld/stackcheck.go2
2 files changed, 4 insertions, 13 deletions
diff --git a/src/cmd/internal/objabi/stack.go b/src/cmd/internal/objabi/stack.go
index 5a2f641a75..7c7ff4e058 100644
--- a/src/cmd/internal/objabi/stack.go
+++ b/src/cmd/internal/objabi/stack.go
@@ -9,18 +9,9 @@ import (
"internal/buildcfg"
)
-// For the linkers. Must match Go definitions.
-
-const (
- STACKSYSTEM = 0
- StackSystem = STACKSYSTEM
-)
-
-func StackLimit(race bool) int {
- // This arithmetic must match that in runtime/stack.go:{_StackGuard,_StackLimit}.
- stackGuard := 928*stackGuardMultiplier(race) + StackSystem
- stackLimit := stackGuard - StackSystem - abi.StackSmall
- return stackLimit
+func StackNosplit(race bool) int {
+ // This arithmetic must match that in runtime/stack.go:stackNosplit.
+ return abi.StackNosplitBase * stackGuardMultiplier(race)
}
// stackGuardMultiplier returns a multiplier to apply to the default
diff --git a/src/cmd/link/internal/ld/stackcheck.go b/src/cmd/link/internal/ld/stackcheck.go
index c82dafe51e..24a96fb996 100644
--- a/src/cmd/link/internal/ld/stackcheck.go
+++ b/src/cmd/link/internal/ld/stackcheck.go
@@ -61,7 +61,7 @@ func (ctxt *Link) doStackCheck() {
// The call to morestack in every splittable function ensures
// that there are at least StackLimit bytes available below SP
// when morestack returns.
- limit := objabi.StackLimit(*flagRace) - sc.callSize
+ limit := objabi.StackNosplit(*flagRace) - sc.callSize
if buildcfg.GOARCH == "arm64" {
// Need an extra 8 bytes below SP to save FP.
limit -= 8