diff options
author | Matthew Dempsky <mdempsky@google.com> | 2020-12-24 15:42:37 -0800 |
---|---|---|
committer | Matthew Dempsky <mdempsky@google.com> | 2020-12-25 00:39:24 +0000 |
commit | 4b1d0fe66f3fcd80febc0e4be2850c06e3469da3 (patch) | |
tree | 26e5493a7e8c75e7111a638d9ffcf6d56d77c1d6 /src/cmd/compile/internal/gc/main.go | |
parent | 082cc8b7d9daf88db8779262aca8ab5692a00dfb (diff) | |
download | go-4b1d0fe66f3fcd80febc0e4be2850c06e3469da3.tar.gz go-4b1d0fe66f3fcd80febc0e4be2850c06e3469da3.zip |
[dev.regabi] cmd/compile: new devirtualization pkg [generated]
The devirtualization code was only in inl.go because it reused some of
the same helper functions as inlining (notably staticValue), but that
code all ended up in package ir instead anyway. Beyond that minor
commonality, it's entirely separate from inlining.
It's definitely on the small side, but consistent with the new
micropass-as-a-package approach we're trying.
[git-generate]
cd src/cmd/compile/internal/inline
rf '
mv Devirtualize Func
mv devirtualizeCall Call
mv Func Call devirtualize.go
mv devirtualize.go cmd/compile/internal/devirtualize
'
Change-Id: Iff7b9fe486856660a8107d5391c54b7e8d238706
Reviewed-on: https://go-review.googlesource.com/c/go/+/280212
Trust: Matthew Dempsky <mdempsky@google.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Diffstat (limited to 'src/cmd/compile/internal/gc/main.go')
-rw-r--r-- | src/cmd/compile/internal/gc/main.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/gc/main.go b/src/cmd/compile/internal/gc/main.go index 8483c87a38..ba3620e676 100644 --- a/src/cmd/compile/internal/gc/main.go +++ b/src/cmd/compile/internal/gc/main.go @@ -10,6 +10,7 @@ import ( "bufio" "bytes" "cmd/compile/internal/base" + "cmd/compile/internal/devirtualize" "cmd/compile/internal/dwarfgen" "cmd/compile/internal/escape" "cmd/compile/internal/inline" @@ -237,7 +238,7 @@ func Main(archInit func(*ssagen.ArchInfo)) { // Devirtualize. for _, n := range typecheck.Target.Decls { if n.Op() == ir.ODCLFUNC { - inline.Devirtualize(n.(*ir.Func)) + devirtualize.Func(n.(*ir.Func)) } } ir.CurFunc = nil |