]> Cypherpunks.ru repositories - gostls13.git/commit
[dev.link] cmd/link: add runtime.pcheader
authorJeremy Faller <jeremy@golang.org>
Wed, 24 Jun 2020 18:30:16 +0000 (14:30 -0400)
committerJeremy Faller <jeremy@golang.org>
Thu, 30 Jul 2020 19:36:06 +0000 (19:36 +0000)
commitba9c639470cb962a799116fea55c91638752fe87
tree2fecdbd49216a01f2ed5d070c5755bf3a6fa80ec
parentb3e3c339ff02ccd1cf76eb07513e4f9051a55333
[dev.link] cmd/link: add runtime.pcheader

As of July 2020, a fair amount of the new linker's live memory, and
runtime is spent generating pclntab. In an effort to streamline that
code, this change starts breaking up the generation of runtime.pclntab
into smaller chunks that can run later in a link. These changes are
described in an (as yet not widely distributed) document that lays out
an improved format. Largely the work consists of breaking up
runtime.pclntab into smaller pieces, stopping much of the data
rewriting, and getting runtime.pclntab into a form where we can reason
about its size and look to shrink it. This change is the first part of
that work -- just pulling out the header, and demonstrating where a
majority of that work will be.

Change-Id: I65618d0d0c780f7e5977c9df4abdbd1696fedfcb
Reviewed-on: https://go-review.googlesource.com/c/go/+/241598
Run-TryBot: Jeremy Faller <jeremy@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Reviewed-by: Austin Clements <austin@google.com>
src/cmd/link/internal/ld/data.go
src/cmd/link/internal/ld/pcln.go
src/cmd/link/internal/ld/symtab.go
src/cmd/link/internal/loader/symbolbuilder.go
src/debug/gosym/pclntab.go
src/debug/gosym/pclntab_test.go
src/debug/gosym/testdata/pcln115.gz [new file with mode: 0644]
src/runtime/symtab.go