]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: introduce LivenessMap and LivenessIndex
authorAustin Clements <austin@google.com>
Thu, 22 Mar 2018 16:04:51 +0000 (12:04 -0400)
committerAustin Clements <austin@google.com>
Tue, 22 May 2018 14:43:36 +0000 (14:43 +0000)
commitd7d9df8a5b1a4d8a40bb606a96bd5c6abe34e5a2
tree0ef59b7ad2960a10bcd4b19499e75eb117e32731
parent02495da6b6b1ee27612c27f24883b9b28c2c1a6e
cmd/compile: introduce LivenessMap and LivenessIndex

Currently liveness only produces a stack map index at each safe point,
so the information is summarized in a map[*ssa.Value]int. We're about
to have both a stack map index and a register map index, so replace
the int with a LivenessIndex type we can extend, and replace the map
with a LivenessMap that we can also change more easily in the future.

This also gives us an easy hook for defining the value that means "not
a safe point".

Passes toolstash -cmp.

For #24543.

Change-Id: Ic4c069839635efed4fd0f603899b80f8be3b56ec
Reviewed-on: https://go-review.googlesource.com/109347
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/compile/internal/gc/plive.go
src/cmd/compile/internal/gc/ssa.go