]> Cypherpunks.ru repositories - gostls13.git/commit
cmd/compile: when compiling with -N, avoid entry block
authorKeith Randall <khr@golang.org>
Mon, 3 May 2021 15:55:57 +0000 (08:55 -0700)
committerKeith Randall <khr@golang.org>
Tue, 4 May 2021 14:38:36 +0000 (14:38 +0000)
commit5e4f9b077f27c79a69677b7c15dbfd157b1698a4
tree146229d615286824b1fddef1a12d17af8a3f093c
parent0921211403731b5a8a38e2d2c647c288240e5b29
cmd/compile: when compiling with -N, avoid entry block

Lots of constant SSA values we put in the entry block so that
CSE can easily combine them. With -N, however, we don't run CSE, so
putting values in the entry block only serves to extend their lifetime
for no benefit.

Fixes #45897. The number of live SSA values per block goes from >5K to 22.
Memory use goes from ~3GB to ~400MB.

Change-Id: I620b423611790a900e0d4cd270eac5dbdddf2a2b
Reviewed-on: https://go-review.googlesource.com/c/go/+/316369
Trust: Keith Randall <khr@golang.org>
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/ssagen/ssa.go