go/internal/gcimporter
Florian Zenker fc702c522d internal/gcimporter: fix performance regression for unified IR
flattenImports used to traverse the transitive closure of all imports by
recursively visiting all imported packages. This is a lot of redundant
work, because flattening happens for every package, the recursion is not
necessary and this change removes the recursion.

Change-Id: Id5a1b3b15ef3ce8e0fc6c945b5484b3dd06bd6b6
Reviewed-on: https://go-review.googlesource.com/c/tools/+/450755
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
Reviewed-by: Florian Zenker <floriank@google.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
2022-11-15 19:01:52 +00:00
..
testdata
bexport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
bexport_test.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
bimport.go
exportdata.go
gcimporter.go
gcimporter_test.go
iexport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
iexport_common_test.go
iexport_go118_test.go
iexport_test.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
iimport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
israce_test.go
newInterface10.go
newInterface11.go
shallow_test.go internal/gcimporter: use nondeprecated go/packages mode bits 2022-11-07 21:25:05 +00:00
stdlib_test.go
support_go117.go
support_go118.go
unified_no.go
unified_yes.go
ureader_no.go
ureader_yes.go internal/gcimporter: fix performance regression for unified IR 2022-11-15 19:01:52 +00:00