]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: eliminate more nil checks of phis
authorJosh Bleecher Snyder <josharian@gmail.com>
Thu, 9 Mar 2017 21:30:20 +0000 (13:30 -0800)
committerDavid Chase <drchase@google.com>
Mon, 13 Mar 2017 18:38:28 +0000 (18:38 +0000)
commitc694f6f3a80bcb42960e021b279eb6d23baf2c50
tree07cdf32814ddc1f978a5cf49afc6dcfd4f58489a
parent4e0c7c3f61475116c4ae8d11ef796819d9c404f0
cmd/compile: eliminate more nil checks of phis

The existing implementation started by eliminating
nil checks for OpAddr, OpAddPtr, and OpPhis with
all non-nil args.

However, some OpPhis had all non-nil args,
but their args had not been processed yet.

Pull the OpPhi checks into their own loop,
and repeat until stabilization.

Eliminates a dozen additional nilchecks during make.bash.

Negligible compiler performance impact.

Change-Id: If7b803c3ad7582af7d9867d05ca13e03e109d864
Reviewed-on: https://go-review.googlesource.com/37999
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/ssa/nilcheck.go