Relatively few PRs affecting performance, but massive improvements thanks to the update to LLVM 18 (PR #12005), as well as the merging of two related compiler queries (PR #120919) and other small improvements from a rollup (PR #121055).
Triage done by @pnkfelix. Revision range: 74c3f5a1..5af21304
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.5% | [0.5%, 0.5%] | 1 |
Regressions ❌ (secondary) | 7.1% | [0.5%, 78.5%] | 17 |
Improvements ✅ (primary) | -2.4% | [-13.9%, -0.4%] | 222 |
Improvements ✅ (secondary) | -2.0% | [-9.8%, -0.3%] | 155 |
All ❌✅ (primary) | -2.4% | [-13.9%, 0.5%] | 223 |
3 Regressions, 1 Improvements, 6 Mixed; 1 of them in rollups 65 artifact comparisons made in total
Tracking import use types for more accurate redundant import checking #117772 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.4% | [0.2%, 1.0%] | 44 |
Regressions ❌ (secondary) | 0.7% | [0.4%, 1.1%] | 13 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.4% | [0.2%, 1.0%] | 44 |
macro_rules: Preserve all metavariable spans in a global side table #119673 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.4% | [0.1%, 1.3%] | 26 |
Regressions ❌ (secondary) | 0.5% | [0.1%, 3.3%] | 12 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.4% | [0.1%, 1.3%] | 26 |
Always evaluate free constants and statics, even if previous errors occurred #121087 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.8% | [0.4%, 2.0%] | 4 |
Regressions ❌ (secondary) | 1.0% | [0.3%, 5.2%] | 11 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | - | - | 0 |
All ❌✅ (primary) | 0.8% | [0.4%, 2.0%] | 4 |
pattern_analysis: Move constructor selection logic to PlaceInfo
#120692 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | - | - | 0 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -1.8% | [-1.9%, -1.7%] | 6 |
All ❌✅ (primary) | - | - | 0 |
Merge impl_polarity
and impl_trait_ref
queries #120919 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.6% | [0.5%, 0.7%] | 3 |
Regressions ❌ (secondary) | 1.5% | [1.5%, 1.5%] | 1 |
Improvements ✅ (primary) | -0.3% | [-0.7%, -0.2%] | 43 |
Improvements ✅ (secondary) | -0.4% | [-0.5%, -0.2%] | 5 |
All ❌✅ (primary) | -0.3% | [-0.7%, 0.7%] | 46 |
Update to LLVM 18 #120055 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 1.1% | [0.7%, 3.5%] | 7 |
Improvements ✅ (primary) | -2.4% | [-14.1%, -0.5%] | 233 |
Improvements ✅ (secondary) | -1.6% | [-8.0%, -0.3%] | 160 |
All ❌✅ (primary) | -2.4% | [-14.1%, -0.5%] | 233 |
Rollup of 8 pull requests #121055 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | 0.2% | [0.2%, 0.2%] | 2 |
Regressions ❌ (secondary) | 0.9% | [0.8%, 0.9%] | 2 |
Improvements ✅ (primary) | -0.9% | [-1.8%, -0.2%] | 9 |
Improvements ✅ (secondary) | -0.6% | [-1.1%, -0.3%] | 21 |
All ❌✅ (primary) | -0.7% | [-1.8%, 0.2%] | 11 |
cargo update
#120454 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 1.4% | [0.8%, 1.9%] | 10 |
Improvements ✅ (primary) | - | - | 0 |
Improvements ✅ (secondary) | -0.9% | [-3.4%, -0.2%] | 15 |
All ❌✅ (primary) | - | - | 0 |
Store static initializers in metadata instead of the MIR of statics. #116564 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 15.9% | [0.4%, 81.2%] | 8 |
Improvements ✅ (primary) | -0.4% | [-0.5%, -0.2%] | 8 |
Improvements ✅ (secondary) | -2.5% | [-8.9%, -0.4%] | 18 |
All ❌✅ (primary) | -0.4% | [-0.5%, -0.2%] | 8 |
Clean up potential_query_instability with FxIndexMap and UnordMap #120931 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) | - | - | 0 |
Regressions ❌ (secondary) | 0.2% | [0.2%, 0.2%] | 4 |
Improvements ✅ (primary) | -0.2% | [-0.2%, -0.2%] | 2 |
Improvements ✅ (secondary) | -6.6% | [-6.6%, -6.6%] | 1 |
All ❌✅ (primary) | -0.2% | [-0.2%, -0.2%] | 2 |