[PATCH] New tool libLLVM.dylib for clients who want to dynamically link all of LLVM

Chris Bieneman cbieneman at apple.com
Tue Aug 19 10:13:52 PDT 2014


Initially the biggest difference is the exported API, what parts of LLVM are linked into it, and the file size. The patch I’m proposing exports the full C API, pulls in a few parts of LLVM that aren’t in libLTO (like the JIT), and results in a dylib a little less than 10% bigger.

I’m also hoping to do some more work in the build configs to support users dynamically specifying which components to include in libLLVM, and having the build process automatically generate the export list.

-Chris

> On Aug 19, 2014, at 9:54 AM, Bob Wilson <bob.wilson at apple.com> wrote:
> 
> 
>> On Aug 18, 2014, at 3:51 PM, Chris Bieneman <cbieneman at apple.com> wrote:
>> 
>> This patch adds a new tool libLLVM.dylib which exports the full C API, and can be optionally built for clients who want to link LLVM dynamically.
>> 
>> I will be working on some more build system extensions to allow users to better fine-tune the dylib to their uses.
> 
> Chris, I haven’t yet looked at this is detail, but I’m wondering how it relates to libLTO.dylib. At least on Darwin, we have gradually been expanding the use of libLTO.dylib for things besides LTO, adding various other functions from the C API, with the intention that it would eventually become an alias for libLLVM.dylib. Would this be a good time to make that transition?
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits





More information about the llvm-commits mailing list