# 2025-08-12 Triage Log

This week saw almost no regressions, while we got some nice wins. One of them was [#143684](https://github.com/rust-lang/rust/pull/143684), which updated the LLVM version used by the Rust compiler to 21.

Triage done by **@kobzol**.
Revision range: [07b7dc90..6355cd39](https://perf.rust-lang.org/?start=07b7dc90ee4df5815dbb91ef8e98cb93571230f5&end=6355cd39c81e9699b1925c58d2ed3165bcab1715&absolute=false&stat=instructions%3Au)

**Summary**:

| (instructions:u)                   | mean  | range           | count |
|:----------------------------------:|:-----:|:---------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.5%  | [0.2%, 0.8%]    | 3     |
| Regressions ❌ <br /> (secondary)  | 0.7%  | [0.1%, 1.5%]    | 8     |
| Improvements ✅ <br /> (primary)   | -1.5% | [-22.8%, -0.2%] | 219   |
| Improvements ✅ <br /> (secondary) | -2.9% | [-18.8%, -0.1%] | 256   |
| All ❌✅ (primary)                 | -1.5% | [-22.8%, 0.8%]  | 222   |


2 Regressions, 2 Improvements, 9 Mixed; 5 of them in rollups
37 artifact comparisons made in total

#### Regressions

Revert #143906 [#145116](https://github.com/rust-lang/rust/pull/145116) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2886b36df4a646dd8d82fb65bf0c9d8d96c1f71a&end=de3efa79f95852c7427587f1d535bfea7c0d6779&stat=instructions:u)

| (instructions:u)                   | mean | range        | count |
|:----------------------------------:|:----:|:------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -    | -            | 0     |
| Regressions ❌ <br /> (secondary)  | 0.4% | [0.2%, 0.6%] | 10    |
| Improvements ✅ <br /> (primary)   | -    | -            | 0     |
| Improvements ✅ <br /> (secondary) | -    | -            | 0     |
| All ❌✅ (primary)                 | -    | -            | 0     |

- The tiny regressions were noise.
- Marked as triaged.

Rollup of 7 pull requests [#145236](https://github.com/rust-lang/rust/pull/145236) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=21a19c297d4f5a03501d92ca251bd7a17073c08a&end=53af067bb0b4edf9b5394e5f9b60942974b9fbc2&stat=instructions:u)

| (instructions:u)                   | mean | range        | count |
|:----------------------------------:|:----:|:------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.3% | [0.2%, 0.5%] | 6     |
| Regressions ❌ <br /> (secondary)  | 0.4% | [0.1%, 0.5%] | 17    |
| Improvements ✅ <br /> (primary)   | -    | -            | 0     |
| Improvements ✅ <br /> (secondary) | -    | -            | 0     |
| All ❌✅ (primary)                 | 0.3% | [0.2%, 0.5%] | 6     |

- Tiny doc-only regressions caused by adding more const to the standard library.
- Marked as triaged.

#### Improvements

Simplify dead code lint [#144863](https://github.com/rust-lang/rust/pull/144863) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=213d946a384b46989f6fd9c8ae9c547b4e354455&end=ec7c02612527d185c379900b613311bc1dcbf7dc&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | 0.0%  | [0.0%, 0.0%]   | 1     |
| Improvements ✅ <br /> (primary)   | -0.5% | [-1.5%, -0.1%] | 82    |
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.6%, -0.1%] | 12    |
| All ❌✅ (primary)                 | -0.5% | [-1.5%, -0.1%] | 82    |


Implement `stability_implications` without a visitor. [#144873](https://github.com/rust-lang/rust/pull/144873) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=915a766b2f9fd53a8cd7b1fad003d3f8e488ff4b&end=8712e4567551a2714efa66dac204ec7137bc5605&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -0.3% | [-0.3%, -0.1%] | 41    |
| Improvements ✅ <br /> (secondary) | -0.9% | [-3.0%, -0.2%] | 26    |
| All ❌✅ (primary)                 | -0.3% | [-0.3%, -0.1%] | 41    |


#### Mixed

Update to LLVM 21 [#143684](https://github.com/rust-lang/rust/pull/143684) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ec7c02612527d185c379900b613311bc1dcbf7dc&end=dc0bae1db725fbba8524f195f74f680995fd549e&stat=instructions:u)

| (instructions:u)                   | mean  | range           | count |
|:----------------------------------:|:-----:|:---------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.5%  | [0.2%, 0.9%]    | 5     |
| Regressions ❌ <br /> (secondary)  | 1.3%  | [0.4%, 1.8%]    | 19    |
| Improvements ✅ <br /> (primary)   | -1.3% | [-23.1%, -0.2%] | 216   |
| Improvements ✅ <br /> (secondary) | -2.7% | [-19.0%, -0.1%] | 266   |
| All ❌✅ (primary)                 | -1.3% | [-23.1%, 0.9%]  | 221   |

- Improvements outweigh the regressions.
- Marked as triaged.

Preserve the .debug_gdb_scripts section [#143679](https://github.com/rust-lang/rust/pull/143679) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=dc0bae1db725fbba8524f195f74f680995fd549e&end=8fb40f798a23adf608182ce5f4eb151fdc8e0da5&stat=instructions:u)

| (instructions:u)                   | mean   | range           | count |
|:----------------------------------:|:------:|:---------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 103.7% | [55.2%, 152.2%] | 2     |
| Regressions ❌ <br /> (secondary)  | 0.5%   | [0.5%, 0.6%]    | 3     |
| Improvements ✅ <br /> (primary)   | -      | -               | 0     |
| Improvements ✅ <br /> (secondary) | -1.8%  | [-4.6%, -0.0%]  | 6     |
| All ❌✅ (primary)                 | 103.7% | [55.2%, 152.2%] | 2     |

- This change probably caused some incremental query invalidations.
- It was reverted in [#145014](https://github.com/rust-lang/rust/pull/145014).
- Marked as triaged.

Rollup of 15 pull requests [#145020](https://github.com/rust-lang/rust/pull/145020) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=7d82b83ed57d188ab3f2441a765a6419685a88a3&end=6bcdcc73bd11568fd85f5a38b58e1eda054ad1cd&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.2%  | [0.1%, 0.2%]   | 2     |
| Regressions ❌ <br /> (secondary)  | 0.3%  | [0.1%, 0.7%]   | 4     |
| Improvements ✅ <br /> (primary)   | -     | -              | 0     |
| Improvements ✅ <br /> (secondary) | -0.0% | [-0.0%, -0.0%] | 1     |
| All ❌✅ (primary)                 | 0.2%  | [0.1%, 0.2%]   | 2     |

- The regression is genuine, but so small that it doesn't seem worth it to investigate it further.
- Marked as triaged.

Revert "Preserve the .debug_gdb_scripts section" [#145014](https://github.com/rust-lang/rust/pull/145014) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=61cb1e97fcf954c37d0a457a8084ed9ad8b3cb82&end=9b1a30e5e69e1537ef6eb6eb829eb47075206dea&stat=instructions:u)

| (instructions:u)                   | mean   | range            | count |
|:----------------------------------:|:------:|:----------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -      | -                | 0     |
| Regressions ❌ <br /> (secondary)  | 2.8%   | [0.6%, 4.8%]     | 4     |
| Improvements ✅ <br /> (primary)   | -48.0% | [-60.4%, -35.6%] | 2     |
| Improvements ✅ <br /> (secondary) | -0.5%  | [-0.5%, -0.5%]   | 3     |
| All ❌✅ (primary)                 | -48.0% | [-60.4%, -35.6%] | 2     |

- Revert of [#143679](https://github.com/rust-lang/rust/pull/143679).
- Marked as triaged.

Rollup of 19 pull requests [#145043](https://github.com/rust-lang/rust/pull/145043) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cd434309efcf5dc68b253e5ef6ba40c1c43711c9&end=321a89bec57b8ca723d1af8f784490b950458c6a&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.4%  | [0.2%, 0.5%]   | 4     |
| Regressions ❌ <br /> (secondary)  | 0.3%  | [0.1%, 0.5%]   | 8     |
| Improvements ✅ <br /> (primary)   | -     | -              | 0     |
| Improvements ✅ <br /> (secondary) | -0.3% | [-0.3%, -0.3%] | 2     |
| All ❌✅ (primary)                 | 0.4%  | [0.2%, 0.5%]   | 4     |

- The regressions look genuine, but also are tiny.
- Marked as triaged.

Rollup of 9 pull requests [#145074](https://github.com/rust-lang/rust/pull/145074) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a980cd4311ae4b5bf9099d418e32643d068f1344&end=67d45f49e09cb8f355df2ffae22cfc3d7ee6c278&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.8%  | [0.1%, 4.3%]   | 126   |
| Regressions ❌ <br /> (secondary)  | 0.6%  | [0.1%, 1.5%]   | 39    |
| Improvements ✅ <br /> (primary)   | -     | -              | 0     |
| Improvements ✅ <br /> (secondary) | -1.8% | [-2.9%, -0.1%] | 9     |
| All ❌✅ (primary)                 | 0.8%  | [0.1%, 4.3%]   | 126   |

- The regression was caused by [#144857](https://github.com/rust-lang/rust/pull/144857).
- The mentioned PR was reverted in [#145086](https://github.com/rust-lang/rust/pull/145086).
- Marked as triaged.

Rollup of 19 pull requests [#145077](https://github.com/rust-lang/rust/pull/145077) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=67d45f49e09cb8f355df2ffae22cfc3d7ee6c278&end=2886b36df4a646dd8d82fb65bf0c9d8d96c1f71a&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | 0.1%  | [0.1%, 0.1%]   | 3     |
| Improvements ✅ <br /> (primary)   | -1.0% | [-1.0%, -1.0%] | 1     |
| Improvements ✅ <br /> (secondary) | -0.4% | [-0.6%, -0.2%] | 12    |
| All ❌✅ (primary)                 | -1.0% | [-1.0%, -1.0%] | 1     |

- Some of the improvements were likely noise, but overall it was a wash.
- Marked as triaged.

Revert "Port `#[allow_internal_unsafe]` to the new attribute system" [#145086](https://github.com/rust-lang/rust/pull/145086) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ffb9d94dcf4ade0d534842be3672d5e9f47e1333&end=4c7749e8c8e50ad146da599eea3a250160c1bc2b&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | 2.8%  | [2.6%, 2.9%]   | 6     |
| Improvements ✅ <br /> (primary)   | -0.8% | [-4.1%, -0.1%] | 121   |
| Improvements ✅ <br /> (secondary) | -0.7% | [-1.4%, -0.1%] | 39    |
| All ❌✅ (primary)                 | -0.8% | [-4.1%, -0.1%] | 121   |

- Revert of [#144857](https://github.com/rust-lang/rust/pull/144857).
- Marked as triaged.

Stop using uadd.with.overflow [#145144](https://github.com/rust-lang/rust/pull/145144) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8712e4567551a2714efa66dac204ec7137bc5605&end=7f7b8ef27d86c865a7ab20c7c42f50811c6a914d&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.2%  | [0.2%, 0.2%]   | 1     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -0.3% | [-0.3%, -0.2%] | 7     |
| Improvements ✅ <br /> (secondary) | -0.5% | [-0.8%, -0.2%] | 14    |
| All ❌✅ (primary)                 | -0.2% | [-0.3%, 0.2%]  | 8     |

- More improvements than regressions.
- Already marked as triaged.
