-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make new symbol mangling scheme default for compiler itself. #90054
Make new symbol mangling scheme default for compiler itself. #90054
Conversation
Is it permissible to mix the mangling like this? I guess that makes sense -- presumably we're encoding a bit somewhere indicating the mangling for -Zshare-generics and the like? r=me |
Yes, we re-construct which version is needed: rust/compiler/rustc_symbol_mangling/src/lib.rs Lines 231 to 247 in d45ed75
It's not particularly pretty. |
@bors r=Mark-Simulacrum |
📌 Commit 456283c has been approved by |
…piler, r=Mark-Simulacrum Make new symbol mangling scheme default for compiler itself. As suggest in rust-lang#89917 (comment), this PR enables the new symbol mangling scheme for the compiler itself. The standard library is still compiled using the legacy mangling scheme so that the new symbol format does not show up in user code (yet). r? `@Mark-Simulacrum`
It looks like most of the effects in #89917 are due to increased linker time which, while rustc will take longer to link, shouldn't make the compiler itself slower. However, no reason not to be cautious here as well 🙂 |
☀️ Test successful - checks-actions |
Finished benchmarking commit (a3f7c4d): comparison url. Summary: This change led to moderate relevant mixed results 🤷 in compiler performance.
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression |
As suggest in #89917 (comment), this PR enables the new symbol mangling scheme for the compiler itself. The standard library is still compiled using the legacy mangling scheme so that the new symbol format does not show up in user code (yet).
r? @Mark-Simulacrum