Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Auto merge of rust-lang#34899 - michaelwoerister:always_internalize_s…
…ymbols, r=eddyb Run base::internalize_symbols() even for single-codegen-unit crates. The initial linkage-assignment (especially for closures) is a conservative one that makes some symbols more visible than they need to be. While this is not a correctness problem, it does force the LLVM inliner to be more conservative too, which results in poor performance. Once translation is based solely on MIR, it will be easier to also make the initial linkage assignment a better fitting one. Until then `internalize_symbols()` does a good job of preventing most performance regressions. This should solve the regressions reported in rust-lang#34891 and maybe also those in rust-lang#34831. As a side-effect, this will also solve most of the problematic cases described in rust-lang#34793. Not reliably so, however. For that, we still need a solution like the one implement in rust-lang#34830. cc @rust-lang/compiler
- Loading branch information