]> Cypherpunks repositories - gostls13.git/commit
[dev.link] cmd/link: add new slice interface for querying aux symbols
authorThan McIntosh <thanm@google.com>
Fri, 25 Oct 2019 16:39:20 +0000 (12:39 -0400)
committerThan McIntosh <thanm@google.com>
Thu, 31 Oct 2019 01:09:14 +0000 (01:09 +0000)
commit851b1f40b48c02f6eeee160957c40dbad46df3bc
treeb536940558a9d547fca11f42dcc229f67301fbee
parente90e6e75f8f0b06a5b0c9c68d8d98b8f37b0d3e0
[dev.link] cmd/link: add new slice interface for querying aux symbols

Add a new loader.Loader.ReadAuxSyms method that returns a slice
containing the ids of the aux symbols for a specified global symbol.
This is similar to the new interface recently added that allows you to
get back a slice of relocations (as opposed to making calls into the
loader for each one). This was idea suggested by Cherry. Compilebench
numbers:

name                      old time/op       new time/op       delta
LinkCompiler                    1.63s ± 9%        1.57s ± 7%  -3.84%  (p=0.006 n=20+20)
LinkWithoutDebugCompiler        1.15s ±11%        1.11s ±11%    ~     (p=0.108 n=20+20)

name                      old user-time/op  new user-time/op  delta
LinkCompiler                    1.99s ± 8%        2.00s ±12%    ~     (p=0.751 n=19+19)
LinkWithoutDebugCompiler        1.14s ±11%        1.19s ±21%    ~     (p=0.183 n=20+20)

Change-Id: Iab6cbe18419aaa61d9cadb3f626a4515c71f2686
Reviewed-on: https://go-review.googlesource.com/c/go/+/203501
Reviewed-by: Jeremy Faller <jeremy@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/link/internal/ld/deadcode2.go
src/cmd/link/internal/loader/loader.go