From b12366bbb5e83ce0c4d3958d87c0872d2ad0e3e2 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Mon, 11 Jul 2022 16:49:19 -0400 Subject: [PATCH] cmd/dist: force stackGuardMultiplierDefault to 1 Nothing seems to break, not even the noopt builder. For #51256 (the conversation there is headed toward additional changes). Change-Id: Icb7ca451159a74f351c25d2cefb32c773b9bb017 Reviewed-on: https://go-review.googlesource.com/c/go/+/416859 Run-TryBot: Russ Cox Reviewed-by: Cherry Mui TryBot-Result: Gopher Robot --- src/cmd/dist/buildruntime.go | 23 ++--------------------- src/cmd/internal/objabi/stack.go | 2 +- src/runtime/internal/sys/consts.go | 2 +- 3 files changed, 4 insertions(+), 23 deletions(-) diff --git a/src/cmd/dist/buildruntime.go b/src/cmd/dist/buildruntime.go index e66a9f009f..6d88046566 100644 --- a/src/cmd/dist/buildruntime.go +++ b/src/cmd/dist/buildruntime.go @@ -7,8 +7,6 @@ package main import ( "bytes" "fmt" - "os" - "strings" ) /* @@ -19,15 +17,12 @@ import ( // // package sys // -// const StackGuardMultiplier = +// (Nothing right now!) func mkzversion(dir, file string) { var buf bytes.Buffer fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n") fmt.Fprintln(&buf) fmt.Fprintf(&buf, "package sys\n") - fmt.Fprintln(&buf) - fmt.Fprintf(&buf, "const StackGuardMultiplierDefault = %d\n", stackGuardMultiplierDefault()) - writefile(buf.String(), file, writeSkipSame) } @@ -78,26 +73,12 @@ func mkbuildcfg(file string) { // // package objabi // -// const stackGuardMultiplierDefault = +// (Nothing right now!) func mkobjabi(file string) { var buf bytes.Buffer fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n") fmt.Fprintln(&buf) fmt.Fprintf(&buf, "package objabi\n") - fmt.Fprintln(&buf) - fmt.Fprintf(&buf, "const stackGuardMultiplierDefault = %d\n", stackGuardMultiplierDefault()) writefile(buf.String(), file, writeSkipSame) } - -// stackGuardMultiplierDefault returns a multiplier to apply to the default -// stack guard size. Larger multipliers are used for non-optimized -// builds that have larger stack frames. -func stackGuardMultiplierDefault() int { - for _, s := range strings.Split(os.Getenv("GO_GCFLAGS"), " ") { - if s == "-N" { - return 2 - } - } - return 1 -} diff --git a/src/cmd/internal/objabi/stack.go b/src/cmd/internal/objabi/stack.go index 0c82a7c6dd..80bd1c0799 100644 --- a/src/cmd/internal/objabi/stack.go +++ b/src/cmd/internal/objabi/stack.go @@ -27,5 +27,5 @@ func stackGuardMultiplier() int { if buildcfg.GOOS == "aix" { return 2 } - return stackGuardMultiplierDefault + return 1 } diff --git a/src/runtime/internal/sys/consts.go b/src/runtime/internal/sys/consts.go index fffcf81d1f..c603716580 100644 --- a/src/runtime/internal/sys/consts.go +++ b/src/runtime/internal/sys/consts.go @@ -10,7 +10,7 @@ import ( ) // AIX requires a larger stack for syscalls. -const StackGuardMultiplier = StackGuardMultiplierDefault*(1-goos.IsAix) + 2*goos.IsAix +const StackGuardMultiplier = 1*(1-goos.IsAix) + 2*goos.IsAix // DefaultPhysPageSize is the default physical page size. const DefaultPhysPageSize = goarch.DefaultPhysPageSize -- 2.50.0