]> Cypherpunks repositories - gostls13.git/commit
cmd/compile/internal/gc: speed up arith const tests
authorJosh Bleecher Snyder <josharian@gmail.com>
Sat, 24 Mar 2018 23:18:07 +0000 (16:18 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Wed, 28 Mar 2018 17:44:28 +0000 (17:44 +0000)
commit8623503fe54642a21854c551129d550139f3bbac
tree5b0a7ed41338358561f7487d172e1a254aa6faf7
parent360c19157ae5465c9548bd9e050263b9e336c9bf
cmd/compile/internal/gc: speed up arith const tests

This change reduces the time to run this test on my machine from

real 0m2.491s
user 0m3.020s
sys 0m0.331s

to

real 0m0.237s
user 0m0.180s
sys 0m0.173s

This will make it reasonable to add more constants to the test.
I am also hopeful that it might help a bit with intermittent
cmd/compile/internal/gc test timeouts on the build dashboard
on the slower builders.

The time savings are entirely in compilation time,
by avoiding generating one giant func main.
Instead, generate tables of tests to be run,
which are translated into static data,
and then loop over those tests.

While we're here, do some minor cleanup:

* Remove the _ssa suffix on function names,
  as that was only needed during ssa bootstrapping.
* Clean up error handling during test generation.
* Make functions single-line, to reduce future diff sizes.
  Diffing giant files is slow.

Change-Id: Ic5fccdb71679169bea756c7d33c07d05e4801860
Reviewed-on: https://go-review.googlesource.com/102956
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/gc/testdata/arithConst.go
src/cmd/compile/internal/gc/testdata/gen/arithConstGen.go