]> Cypherpunks repositories - gostls13.git/commitdiff
[dev.link] cmd/link/internal/loader: speed up Loader.RelocVariant
authorThan McIntosh <thanm@google.com>
Tue, 7 Apr 2020 12:01:24 +0000 (08:01 -0400)
committerThan McIntosh <thanm@google.com>
Tue, 7 Apr 2020 13:56:41 +0000 (13:56 +0000)
Remove some extra sanity-checking code from the loader's RelocVariant
method, since it was yielding a slowdown of 1-2% linking kubernetes
hyperkube (once again a reminder that relocation processing is a very
performance-sensitive part of the linker).

Change-Id: Ifbc0662f3f96c5f54131103ce6f7439ecfb9b9dc
Reviewed-on: https://go-review.googlesource.com/c/go/+/227477
Run-TryBot: Than McIntosh <thanm@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Jeremy Faller <jeremy@golang.org>
src/cmd/link/internal/loader/loader.go

index fdc020dd2aa8463551c3c086a9f062327fb89adb..acce23c0c2668a68203b21a6f614c28a330ce908 100644 (file)
@@ -2593,9 +2593,6 @@ func (l *Loader) SetRelocVariant(s Sym, ri int, v sym.RelocVariant) {
 // RelocVariant returns the 'variant' property of a relocation on
 // some specific symbol.
 func (l *Loader) RelocVariant(s Sym, ri int) sym.RelocVariant {
-       if relocs := l.Relocs(s); ri >= relocs.Count() {
-               panic("invalid relocation ID")
-       }
        return l.relocVariant[relocId{s, ri}]
 }