]> Cypherpunks repositories - gostls13.git/commit
cmd/compile, cmd/link: record lengths in object file
authorShahar Kohanim <skohanim@gmail.com>
Tue, 22 Mar 2016 22:44:07 +0000 (00:44 +0200)
committerShahar Kohanim <skohanim@gmail.com>
Wed, 30 Mar 2016 03:44:41 +0000 (03:44 +0000)
commit7f067c87d831f329d068fced1b136cd06039303c
tree379aea9d949ef1a0c5534cc218cb8aba322e5e5d
parent777a77b4d29853e13dc803b2923bf88b498ed306
cmd/compile, cmd/link: record lengths in object file

Record total number of relocations, pcdata, automatics, funcdata and files in
object file and use these numbers in the linker to allocate contiguous
slices to later be filled by the defined symbols.

name       old secs    new secs    delta
LinkCmdGo   0.52 ± 3%   0.49 ± 3%  -4.21%   (p=0.000 n=91+92)
LinkJuju    4.48 ± 4%   4.21 ± 7%  -6.08%  (p=0.000 n=96+100)

name       old MaxRSS  new MaxRSS  delta
LinkCmdGo   122k ± 2%   120k ± 4%  -1.66%   (p=0.000 n=98+93)
LinkJuju    799k ± 5%   865k ± 8%  +8.29%   (p=0.000 n=89+99)

GOGC=off

name       old secs    new secs    delta
LinkCmdGo   0.42 ± 2%   0.41 ± 0%  -2.98%    (p=0.000 n=89+70)
LinkJuju    3.61 ± 0%   3.52 ± 1%  -2.46%    (p=0.000 n=80+89)

name       old MaxRSS  new MaxRSS  delta
LinkCmdGo   130k ± 1%   128k ± 1%  -1.33%  (p=0.000 n=100+100)
LinkJuju   1.00M ± 0%  0.99M ± 0%  -1.70%  (p=0.000 n=100+100)

Change-Id: Ie08f6ccd4311bb78d8950548c678230a58635c73
Reviewed-on: https://go-review.googlesource.com/21026
Reviewed-by: David Crawshaw <crawshaw@golang.org>
Run-TryBot: David Crawshaw <crawshaw@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/cmd/internal/goobj/read.go
src/cmd/internal/obj/objfile.go
src/cmd/link/internal/ld/objfile.go