mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-04 09:53:04 +03:00
Rollup merge of #89865 - tmandry:llvm-static, r=Mark-Simulacrum
Allow static linking LLVM with ThinLTO There's no reason not to allow this if the user wants it. It works, at least in a local build on linux host. For our use case, we're happy to spend more time building the compiler if it creates a speedup every time we run it, and we've observed speedups like this with clang.
This commit is contained in:
@@ -825,15 +825,10 @@ pub fn parse(args: &[String]) -> Config {
|
||||
};
|
||||
}
|
||||
|
||||
if config.llvm_thin_lto {
|
||||
// If we're building with ThinLTO on, we want to link to LLVM
|
||||
// shared, to avoid re-doing ThinLTO (which happens in the link
|
||||
// step) with each stage.
|
||||
assert_ne!(
|
||||
llvm.link_shared,
|
||||
Some(false),
|
||||
"setting link-shared=false is incompatible with thin-lto=true"
|
||||
);
|
||||
if config.llvm_thin_lto && llvm.link_shared.is_none() {
|
||||
// If we're building with ThinLTO on, by default we want to link
|
||||
// to LLVM shared, to avoid re-doing ThinLTO (which happens in
|
||||
// the link step) with each stage.
|
||||
config.llvm_link_shared = true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user