Various codegen_llvm cleanups#138674
Conversation
|
rustbot has assigned @compiler-errors. Use |
|
@bors r=compiler-errors |
|
🌲 The tree is currently closed for pull requests below priority 100. This pull request will be tested once the tree is reopened. |
|
@bors rollup |
…iaskrgr Rollup of 10 pull requests Successful merges: - rust-lang#136177 (clarify BufRead::{fill_buf, consume} docs) - rust-lang#138654 (Remove the regex dependency from coretests) - rust-lang#138655 (rustc-dev-guide sync) - rust-lang#138656 (Remove double nesting in post-merge workflow) - rust-lang#138658 (CI: mirror alpine and centos images to ghcr) - rust-lang#138659 (coverage: Don't store a body span in `FunctionCoverageInfo`) - rust-lang#138661 (Revert: Add *_value methods to proc_macro lib) - rust-lang#138670 (Remove existing AFIDT implementation) - rust-lang#138674 (Various codegen_llvm cleanups) - rust-lang#138684 (use then in docs for `fuse` to enhance readability) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#138674 - oli-obk:llvm-cleanups, r=compiler-errors Various codegen_llvm cleanups Mostly just adding safe wrappers and deduplicating code
| let actual_type_di_node = type_di_node(cx, actual_type); | ||
| Some(cx.create_template_type_parameter(name.as_str(), actual_type_di_node)) | ||
| }) | ||
| let generics = cx.tcx.generics_of(def.did()); |
There was a problem hiding this comment.
This generics_of is now called unconditionally and is likely the source of the perf regression
There was a problem hiding this comment.
Turns out that wasn't it
Guard a query invocation out of perf reasons Should fix the perf regression from rust-lang#138674
| &name_in_debuginfo, | ||
| &work_dir, | ||
| "", | ||
| llvm::ChecksumKind::None, |
There was a problem hiding this comment.
Maybe this. Empty string now, null pointer before
There was a problem hiding this comment.
But that wouldn't explain the query count changes
Avoid sending a non-null pointer for empty strings Another try at fixing the perf regression from rust-lang#138674 r? `@ghost`
|
Perf triage: What's the status of this regression? Last attempt I saw is #138775, any developments since that or do we want to revert? |
|
I'm gonna have try to revert individual commits and see which one actually caused the regression |
…iaskrgr Rollup of 10 pull requests Successful merges: - rust-lang#136177 (clarify BufRead::{fill_buf, consume} docs) - rust-lang#138654 (Remove the regex dependency from coretests) - rust-lang#138655 (rustc-dev-guide sync) - rust-lang#138656 (Remove double nesting in post-merge workflow) - rust-lang#138658 (CI: mirror alpine and centos images to ghcr) - rust-lang#138659 (coverage: Don't store a body span in `FunctionCoverageInfo`) - rust-lang#138661 (Revert: Add *_value methods to proc_macro lib) - rust-lang#138670 (Remove existing AFIDT implementation) - rust-lang#138674 (Various codegen_llvm cleanups) - rust-lang#138684 (use then in docs for `fuse` to enhance readability) r? `@ghost` `@rustbot` modify labels: rollup
|
Reverted in #139874 |
|
FWIW, next time we see a regression this big, we should IMO revert immediately. It's too easy for something like this to fall through the cracks, and reverting later is more annoying, due to needing backports, more conflicts to be resolved etc. |
Mostly just adding safe wrappers and deduplicating code