]> Cypherpunks repositories - gostls13.git/commitdiff
test: restore no-gogcflags build shortcut, save time
authorDavid Chase <drchase@google.com>
Thu, 12 Mar 2020 00:17:14 +0000 (20:17 -0400)
committerDavid Chase <drchase@google.com>
Thu, 12 Mar 2020 17:37:13 +0000 (17:37 +0000)
With a clean cache on a laptop
before change
time go run run.go -- . fixedbugs
  real 2m10.195s
  user 3m16.547s
  sys 1m52.939s

Or, before, directly after make.bash (the actual use case we care about)
time go run run.go -- . fixedbugs
  real 2m8.704s
  user 3m12.327s
  sys 1m49.123s

after change
time go run run.go -- . fixedbugs
  real 1m38.915s
  user 2m38.389s
  sys 1m8.490s

Tests, fortunately, still seem to pass.

Latest version of this takes the slow route for cross-compilation, which includes wasm.

Change-Id: Iad19951612defa96c4e9830bce920c5e8733834a
Reviewed-on: https://go-review.googlesource.com/c/go/+/223083
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
test/run.go

index 6a52fe1a2280f343e8f3541c28a41afd0155962e..781c8d75ddce14c86a69841fa6db5270cdf5f659 100644 (file)
@@ -462,6 +462,10 @@ func goGcflags() string {
        return "-gcflags=all=" + os.Getenv("GO_GCFLAGS")
 }
 
+func goGcflagsIsEmpty() bool {
+       return "" == os.Getenv("GO_GCFLAGS")
+}
+
 // run runs a test.
 func (t *test) run() {
        start := time.Now()
@@ -1002,7 +1006,7 @@ func (t *test) run() {
                useTmp = false
                var out []byte
                var err error
-               if len(flags)+len(args) == 0 && goGcflags() == "" && !*linkshared {
+               if len(flags)+len(args) == 0 && goGcflagsIsEmpty() && !*linkshared && goarch == runtime.GOARCH && goos == runtime.GOOS {
                        // If we're not using special go command flags,
                        // skip all the go command machinery.
                        // This avoids any time the go command would