]> Cypherpunks repositories - gostls13.git/commit
ld: 25% faster
authorRuss Cox <rsc@golang.org>
Sat, 9 Apr 2011 13:44:20 +0000 (09:44 -0400)
committerRuss Cox <rsc@golang.org>
Sat, 9 Apr 2011 13:44:20 +0000 (09:44 -0400)
commit1bc84b7e18ae704483ab028bb2030970bbc0b2f3
treeb3cc18d44af119730dd6e8a3a28abd3c5aa24d7b
parentebaf01f0526f349dd207798dc5771219e9d8a8ca
ld: 25% faster

The ld time was dominated by symbol table processing, so
  * increase hash table size
  * emit fewer symbols in gc (just 1 per string, 1 per type)
  * add read-only lookup to avoid creating spurious symbols
  * add linked list to speed whole-table traversals

Breaks dwarf generator (no idea why), so disable dwarf.

Reduces time for 6l to link godoc by 25%.

R=ken2
CC=golang-dev
https://golang.org/cl/4383047
20 files changed:
src/cmd/5g/gobj.c
src/cmd/5l/l.h
src/cmd/6g/gobj.c
src/cmd/6l/asm.c
src/cmd/6l/l.h
src/cmd/6l/obj.c
src/cmd/8g/gobj.c
src/cmd/8l/l.h
src/cmd/gc/go.h
src/cmd/gc/lex.c
src/cmd/gc/obj.c
src/cmd/gc/reflect.c
src/cmd/ld/data.c
src/cmd/ld/dwarf.c
src/cmd/ld/elf.c
src/cmd/ld/go.c
src/cmd/ld/lib.c
src/cmd/ld/lib.h
src/cmd/ld/pe.c
src/cmd/ld/symtab.c