[PATCH] D93351: [llvm-shlib] Build backend libraries as loadable modules
Tom Stellard via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 27 20:19:13 PDT 2021
tstellar added a comment.
In D93351#2908892 <https://reviews.llvm.org/D93351#2908892>, @beanz wrote:
> + at bogner
>
> Sorry for being late to the party. I think this very much needs to be under an option.
>
> On platforms that use this with clang it will have an adverse impact on compile time, because it will increase the number of C++ symbols that need to be resolved (normally backend symbols are internally resolved). I'm really curious what the performance impact is, I remember a number of years ago benchmarking that using libLLVM on macOS had something like a 10% performance regression over static linking.
>
> This also will have significant adverse impact on the initial use case that I added this support for, GPU backends. In GPU drivers the compiler usually comes bundled with a small number of backends, and the cost of dlopening would be extremely detrimental because the size of programs is so small that loading the compiler needs to be as fast as possible.
So you think even for users that already link against libLLVM.so this will perform significantly worse?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93351/new/
https://reviews.llvm.org/D93351
More information about the llvm-commits
mailing list