[PATCH] D93351: [llvm-shlib] Build backend libraries as loadable modules
Chris Bieneman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 27 16:18:38 PDT 2021
beanz added a reviewer: bogner.
beanz added a subscriber: bogner.
beanz added a comment.
+ 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.
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