Repository navigation
Split LintLevelsBuilder::add into add_ast and add_hir - #164790
Conversation
|
This shouldn't have any perf effect, but this method is called a lot so lets verify |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`
| } | ||
| } else { | ||
| None | ||
| fn insert_lint_level_overrides(&mut self, attrs: &[impl AttributeExt]) { |
There was a problem hiding this comment.
I'm also contemplating ways to not have to use AttributeExt here, I'd love to get rid of that trait eventually
There was a problem hiding this comment.
It appears SINGLE_USE_LIFETIMES is an ast pass and MISSING_DOCS is a hir pass, so you could also just add them in add_ast and add_hir respectively, I don't think the implementation needs to be shared.
There was a problem hiding this comment.
Thanks for the good idea, implemented!
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (6daff4c): comparison URL. Overall result: ❌ regressions - please read:Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. Next, please: If you can, justify the regressions found in this try perf run in writing along with @bors rollup=never rustc-perf Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.6%, secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 1.3%, secondary 2.4%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 487.722s -> 488.616s (0.18%) |
67fc716 to
5e7dd56
Compare
|
Oof that's terrible, lets try again |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (06e3f88): comparison URL. Overall result: ❌✅ regressions and improvements - no action neededBenchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up. @rustbot label: -S-waiting-on-perf -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.8%, secondary 0.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -0.5%, secondary 0.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 487.722s -> 490.055s (0.48%) |
|
Some changes occurred in compiler/rustc_attr_ir
cc @rust-lang/clippy |
…uwer Rollup of 3 perf-sensitive pull requests Successful merges: - #163845 (Add various `#[inline]` annotations for simple functions on hot paths that don't get inlined) - #164122 (Don't emit allow attributes in try/contract desugaring) - #164260 (create fast path for attributes created in builtin macro expansions) Failed merges: - #164790 (Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`)
…uwer Rollup of 4 perf-sensitive pull requests Successful merges: - #163845 (Add various `#[inline]` annotations for simple functions on hot paths that don't get inlined) - #164122 (Don't emit allow attributes in try/contract desugaring) - #164260 (create fast path for attributes created in builtin macro expansions) - #164300 (Deduplicate DefId encodings in the query cache) Failed merges: - #164790 (Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`)
…uwer Rollup of 4 perf-sensitive pull requests Successful merges: - #163845 (Add various `#[inline]` annotations for simple functions on hot paths that don't get inlined) - #164122 (Don't emit allow attributes in try/contract desugaring) - #164260 (create fast path for attributes created in builtin macro expansions) - #164300 (Deduplicate DefId encodings in the query cache) Failed merges: - #164790 (Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`)
…uwer Rollup of 5 pull requests Successful merges: - #163845 (Add various `#[inline]` annotations for simple functions on hot paths that don't get inlined) - #164122 (Don't emit allow attributes in try/contract desugaring) - #164260 (create fast path for attributes created in builtin macro expansions) - #164300 (Deduplicate DefId encodings in the query cache) - #164929 (Revert "rustc_codegen_gcc subtree update") Failed merges: - #164790 (Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`)
This comment has been minimized.
This comment has been minimized.
6078f8c to
75a6567
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
75a6567 to
7aa7bb9
Compare
|
@bors r=mejrs force |
Split `LintLevelsBuilder::add` into `add_ast` and `add_hir` Just making the code nicer r? @mejrs
…uwer Rollup of 5 pull requests Successful merges: - #164790 (Split `LintLevelsBuilder::add` into `add_ast` and `add_hir`) - #163952 (Remove ignore-unsafe tidy check in alloc/linklist) - #164691 (Minor lints and performance improvements for LLDB visualizers) - #164925 (Cleanup `rustdoc-html` tests) - #164941 (Update actions/setup-python action to v7.1.0)
|
Note This PR was benchmarked as part of triage of its containing rollup: triage URL. Finished benchmarking commit (24e1a68): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary -1.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesThis perf run didn't have relevant results for this metric. Binary sizeResults (primary 0.1%, secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Artifact size: 405.81 MiB -> 405.99 MiB (0.05%) |
|
oh interesting, where did that perf come from |
View all comments
Just making the code nicer
r? @mejrs