cmd/go: use gccSupportsFlag for -fsplit-stack

Don't assume that all (or only) 386/amd64 compilers support
    -fsplit-stack.
    
    Reviewed-on: https://go-review.googlesource.com/48592

From-SVN: r250216
This commit is contained in:
Ian Lance Taylor 2017-07-14 22:21:37 +00:00
parent b70bb05bd1
commit b9d36a8daf
2 changed files with 3 additions and 5 deletions

View File

@ -1,4 +1,4 @@
9294e79fced202ade7eb236bbe78b766e7e0374f
a77b1091fa83cfaf200e6dad26e92e42483bae43
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.

View File

@ -3092,8 +3092,7 @@ func (tools gccgoToolchain) cc(b *builder, p *Package, objdir, ofile, cfile stri
if pkgpath := gccgoCleanPkgpath(p); pkgpath != "" {
defs = append(defs, `-D`, `GOPKGPATH="`+pkgpath+`"`)
}
switch goarch {
case "386", "amd64":
if b.gccSupportsFlag("-fsplit-stack") {
defs = append(defs, "-fsplit-stack")
}
defs = tools.maybePIC(defs)
@ -3428,8 +3427,7 @@ func (b *builder) cgo(a *action, cgoExe, obj string, pcCFLAGS, pcLDFLAGS, cgofil
}
if _, ok := buildToolchain.(gccgoToolchain); ok {
switch goarch {
case "386", "amd64":
if b.gccSupportsFlag("-fsplit-stack") {
cgoCFLAGS = append(cgoCFLAGS, "-fsplit-stack")
}
cgoflags = append(cgoflags, "-gccgo")