SymbolSerializer::writeOneSymbol function is called very often and creates a temporary SymbolSerializer
RecordBuffer is always created with a constant size so it's much faster to allocate this memory on the stack instead of heap
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
The results of this and the other 2 patches look promising. Some initial benchmarks where I linked clang.exe using MSVC, lld with patch, and lld without patch are:
MSVC linker - 71.59s
lld without these 3 patches - 47.98s
lld with these 3 patches - 29.91s
Definitely a solid improvement. I'll run some more timings on Monday when I'm back in the office (as well as looking more closely at the 3 patches).
Thanks!