]> Cypherpunks repositories - gostls13.git/commit
[dev.ssa] cmd/compile: make cse faster
authorKeith Randall <khr@golang.org>
Thu, 28 Jan 2016 00:47:23 +0000 (16:47 -0800)
committerKeith Randall <khr@golang.org>
Thu, 28 Jan 2016 20:59:20 +0000 (20:59 +0000)
commit6a96a2fe5a95375e2f8cccca6d848728fef0e09f
tree38d12dceac0e17fd6dc1ecb3b62560295992c607
parent7b773946c09e075ed50c49e76e08f61c16616ee4
[dev.ssa] cmd/compile: make cse faster

It is one of the slowest compiler phases right now, and we
run two of them.

Instead of using a map to make the initial partition, use a sort.
It is much less memory intensive.

Do a few optimizations to avoid work for size-1 equivalence classes.

Implement -N.

Change-Id: I1d2d85d3771abc918db4dd7cc30b0b2d854b15e1
Reviewed-on: https://go-review.googlesource.com/19024
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/compile.go
src/cmd/compile/internal/ssa/config.go
src/cmd/compile/internal/ssa/cse.go
src/cmd/compile/internal/ssa/dom_test.go
src/cmd/compile/internal/ssa/export_test.go
src/cmd/compile/internal/ssa/nilcheck_test.go
src/cmd/compile/internal/ssa/regalloc.go
test/nilcheck.go
test/nilcheck_ssa.go [deleted file]