4 ms·
" lld is not at feature parity with gold yet, so it is too early to make a conclusion, but we are working hard to maintain or improve lld’s speed while adding m
by DannyBee 11y ago
" lld is not at feature parity with gold yet, so it is too early to make a conclusion, but we are working hard to maintain or improve lld’s speed while adding more features."
LLD does not yet support string section merging, which iant mentions is the slowest part of gold.
So "so far so good", but "jury is still out"
- rwmj 11y agoSo wait, modifying gold to fix (or even remove) the slow string section merging wasn't a possibility? It sounds a lot less work than writing a completely new linker.
- msbarnett 11y agogold is GPL v3. Even if that route was less work, it wouldn't be compatible with the LLVM project's goal to produce a permissive-licensed suite of tools (UIUC, broadly similar to BSD). This matters to important LLVM backers like Apple, who employ a lot of the core devs.
- DannyBee 11y ago"LLVM project's goal to produce a permissive-licensed suite of tools" This is really far down the goal list ;-) "This matters to important LLVM backers like Apple, who employ a lot of the core devs." As mentioned numerous times, the vast majority of core devs are non-Apple at this point. More to the point here, the person who wrote the blog post, and is responsible for the vast majority of LLD as it exists today, ruiu, works at Google (happily, ELF is being pushed along by others as well) I'm responsible for the entire C++ platform there, and I can happily state that i don't give a single whit about whether LLD is permissively licensed or not.
- DannyBee 11y agogold is deliberately ELF only, LLD supports PE, ELF, Mach-O.