diff options
| author | Matthew Dempsky <mdempsky@google.com> | 2022-12-20 12:00:36 -0800 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2023-01-26 00:28:25 +0000 |
| commit | 6d4101ea68477bf1d762f7466523de0b95bec0ca (patch) | |
| tree | 6f248c5e9315ab048a304c43dd45835e167d011c /src | |
| parent | 4a0e84a1be52d9a57574de0421d9aa38522a0b71 (diff) | |
| download | go-6d4101ea68477bf1d762f7466523de0b95bec0ca.tar.xz | |
cmd/compile/internal/pkginit: remove dependency on typecheck.Resolve
The use of typecheck.Resolve was previously necessary to interoperate
with the non-unified frontend, because it hooked into iimport. It's no
longer necessary with unified IR, where we can just lookup the
".inittask" symbol and access Def directly.
Updates #57410.
Change-Id: I73bdfd53f65988ececd2b777743cd8b591a6db48
Reviewed-on: https://go-review.googlesource.com/c/go/+/458616
Auto-Submit: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/compile/internal/pkginit/init.go | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/cmd/compile/internal/pkginit/init.go b/src/cmd/compile/internal/pkginit/init.go index e13a7fbfe0..57593fdb9b 100644 --- a/src/cmd/compile/internal/pkginit/init.go +++ b/src/cmd/compile/internal/pkginit/init.go @@ -75,14 +75,14 @@ func Task() *ir.Name { // Find imported packages with init tasks. for _, pkg := range typecheck.Target.Imports { - n := typecheck.Resolve(ir.NewIdent(base.Pos, pkg.Lookup(".inittask"))) - if n.Op() == ir.ONONAME { + n, ok := pkg.Lookup(".inittask").Def.(*ir.Name) + if !ok { continue } - if n.Op() != ir.ONAME || n.(*ir.Name).Class != ir.PEXTERN { + if n.Op() != ir.ONAME || n.Class != ir.PEXTERN { base.Fatalf("bad inittask: %v", n) } - deps = append(deps, n.(*ir.Name).Linksym()) + deps = append(deps, n.Linksym()) } if base.Flag.ASan { // Make an initialization function to call runtime.asanregisterglobals to register an |
