[PATCH] D79467: [PDB] Optimize public symbol processing
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri May 8 15:03:54 PDT 2020
rnk added a comment.
Right, I remember actually reviewing D59226 <https://reviews.llvm.org/D59226>, and then thinking that it had landed. I will look into rebasing it, thanks for the reminder.
@akhuang, I was thinking of the TpiSource class in that patch when I was saying that there should be an easy way to merge in types from dependent DLLs.
Speaking of which, @aganea, since you are using clang to compile now, you should try adding `-Xclang -debug-info-kind=constructor` if you haven't already. It greatly reduces the amount of duplicate type info that clang emits.
Regarding the lock free hash table, I guess it's the only solution in the long run. I think there is still low hanging fruit before we get there. For me, the bottleneck is no longer type merging, it's symbol merging, which can be trivially parallelized. So, if we do things like:
- sequentially for all obj, run mergeDebugT
- parallel for all obj, merge .debug$S using type index maps
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79467/new/
https://reviews.llvm.org/D79467
More information about the llvm-commits
mailing list