HomePhabricator

Do not use StringTableBuilder to build symbol table for .gdb_index.
Audit RequiredrL314092

Description

Do not use StringTableBuilder to build symbol table for .gdb_index.

Previously, we had two levels of hash table lookup. The first hash
lookup uses CachedHashStringRefs as keys and returns offsets in string
table. Then, we did the second hash table lookup to obtain GdbSymbol
pointers. But we can directly map strings to GDbSymbols.

One test file is updated in this patch because we no longer have a '\0'
byte at the start of the string pool, which was automatically inserted
by StringTableBuilder.

This patch speeds up Clang debug build (with -gdb-index) link time by
0.3 seconds.

Details

Auditors
Bigcheese
Committed
ruiuSep 24 2017, 7:29 PM
Parents
rL314091: Revert "Check we test CFI before using gold" and "Switch linux bot to gold"
Branches
Unknown
Tags
Unknown