]> Cypherpunks.ru repositories - gostls13.git/commit
[dev.regabi] cmd/compile: remove gc ↔ ssa cycle hacks
authorRuss Cox <rsc@golang.org>
Wed, 18 Nov 2020 02:47:56 +0000 (21:47 -0500)
committerRuss Cox <rsc@golang.org>
Wed, 25 Nov 2020 17:30:36 +0000 (17:30 +0000)
commit048debb2246d17ecd19ccfd603e8544d5e7946a0
treebaed7610d5f186d2650d831d416573dc55fd80ae
parent84e2bd611f9b62ec3b581f8a0d932dc4252ceb67
[dev.regabi] cmd/compile: remove gc ↔ ssa cycle hacks

The cycle hacks existed because gc needed to import ssa
which need to know about gc.Node. But now that's ir.Node,
and there's no cycle anymore.

Don't know how much it matters but LocalSlot is now
one word shorter than before, because it holds a pointer
instead of an interface for the *Node. That won't last long.

Now that they're not necessary for interface satisfaction,
IsSynthetic and IsAutoTmp can move to top-level ir functions.

Change-Id: Ie511e93466cfa2b17d9a91afc4bd8d53fdb80453
Reviewed-on: https://go-review.googlesource.com/c/go/+/272931
Trust: Russ Cox <rsc@golang.org>
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
16 files changed:
src/cmd/compile/fmtmap_test.go
src/cmd/compile/internal/gc/order.go
src/cmd/compile/internal/gc/pgen.go
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/gc/typecheck.go
src/cmd/compile/internal/ir/node.go
src/cmd/compile/internal/ir/sizeof_test.go
src/cmd/compile/internal/ssa/config.go
src/cmd/compile/internal/ssa/deadstore.go
src/cmd/compile/internal/ssa/debug.go
src/cmd/compile/internal/ssa/export_test.go
src/cmd/compile/internal/ssa/location.go
src/cmd/compile/internal/ssa/nilcheck.go
src/cmd/compile/internal/ssa/regalloc.go
src/cmd/compile/internal/ssa/sizeof_test.go
src/cmd/compile/internal/ssa/stackalloc.go