cmd/compile: add all runtime package dependencies to NoInstrumentPkgs

Currently, this list includes *almost* all runtime packages, but not
quite all.

We leave out internal/bytealg for reasons explained in the code.

Compiling with or without race instrumentation has no effect on the
other packages added to the list here, so this is a no-op change
today, but makes this more robust.

Change-Id: Iaec585b2efbc72983d8cb3929394524c42dd664d
Reviewed-on: https://go-review.googlesource.com/c/go/+/521701
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
Austin Clements 2023-07-06 11:15:27 -04:00
parent 3e73802c4a
commit 83e0704c50
1 changed files with 10 additions and 0 deletions

View File

@ -245,6 +245,16 @@ var NoInstrumentPkgs = []string{
"runtime/asan",
"internal/cpu",
"internal/abi",
// We omit bytealg even though it's imported by runtime because it also
// backs a lot of package bytes. Currently we don't have a way to omit race
// instrumentation when used from the runtime while keeping race
// instrumentation when used from user code. Somehow this doesn't seem to
// cause problems, though we may be skating on thin ice. See #61204.
//"internal/bytealg",
"internal/coverage/rtcov",
"internal/godebugs",
"internal/goexperiment",
"internal/goos",
}
// Don't insert racefuncenter/racefuncexit into the following packages.