[llvm-dev] [cfe-dev] Why do we static link all llvm libraries in every executable?

David Blaikie via llvm-dev llvm-dev at lists.llvm.org
Tue Jan 26 07:45:37 PST 2016


On Tue, Jan 26, 2016 at 12:44 AM, Yury Gribov via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> On 01/25/2016 09:16 PM, Joerg Sonnenberger via llvm-dev wrote:
>
>> On Mon, Jan 25, 2016 at 10:13:35AM -0800, Yin Ma via llvm-dev wrote:
>>
>>> If we separate several shared libraries something like
>>> libclang.so, libllvm.so and let all executables and llvmgold.so just
>>> linked with .so. A lot of space could be saved and
>>> loading performance could be improved.
>>>
>>
>> There is a build option to do exactly that. It comes at a significant
>> price for startup, e.g. clang will take 10x as long for building a small
>> example.
>>
>
> Is this to process runtime relocations or run constructors? I wonder if
> Prelink or ElfHack could help.
>

Runtime relocations, I would imagine (global ctors would have to run in
either mode - so shouldn't represent a difference, I would think?)


>
> Joerg
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160126/132cfacf/attachment.html>


More information about the llvm-dev mailing list