From f4755fc7333f524666f6ba3140cee0d180bce8b3 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sun, 3 Jul 2022 13:32:54 -0700 Subject: [PATCH] cmd/dist: use purego tag when building the bootstrap binaries This is in addition to the current math_big_pure_go tag. Using purego ensures that we can build the cmd binaries with gccgo. For #53662 Change-Id: Ib82f8bf10659b5f94935f2b427ae8b2da875cd3b Reviewed-on: https://go-review.googlesource.com/c/go/+/415934 Reviewed-by: David Chase Run-TryBot: Ian Lance Taylor Reviewed-by: Ian Lance Taylor Run-TryBot: Ian Lance Taylor TryBot-Result: Gopher Robot Auto-Submit: Ian Lance Taylor --- src/cmd/dist/buildtool.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cmd/dist/buildtool.go b/src/cmd/dist/buildtool.go index 947da115e3..400c2e85b6 100644 --- a/src/cmd/dist/buildtool.go +++ b/src/cmd/dist/buildtool.go @@ -204,6 +204,8 @@ func bootstrapBuildTools() { // https://groups.google.com/d/msg/golang-dev/Ss7mCKsvk8w/Gsq7VYI0AwAJ // Use the math_big_pure_go build tag to disable the assembly in math/big // which may contain unsupported instructions. + // Use the purego build tag to disable other assembly code, + // such as in cmd/internal/notsha256. // Note that if we are using Go 1.10 or later as bootstrap, the -gcflags=-l // only applies to the final cmd/go binary, but that's OK: if this is Go 1.10 // or later we don't need to disable inlining to work around bugs in the Go 1.4 compiler. @@ -211,7 +213,7 @@ func bootstrapBuildTools() { pathf("%s/bin/go", goroot_bootstrap), "install", "-gcflags=-l", - "-tags=math_big_pure_go compiler_bootstrap", + "-tags=math_big_pure_go compiler_bootstrap purego", } if vflag > 0 { cmd = append(cmd, "-v")