# 2022-12-20 Triage Log

Relatively quiet week for performance, with most regressions and improvements being pretty small.

Triage done by **@simulacrum**.
Revision range: [109cccbe4f345c0f0785ce860788580c3e2a29f5..8a746f4ac3a489efb724cde813607f3b96c2df7b](https://perf.rust-lang.org/?start=109cccbe4f345c0f0785ce860788580c3e2a29f5&end=8a746f4ac3a489efb724cde813607f3b96c2df7b&absolute=false&stat=instructions%3Au)

**Summary**:

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.9%  | [0.2%, 2.8%]   | 28    |
| Regressions ❌ <br /> (secondary)  | 0.7%  | [0.2%, 1.3%]   | 39    |
| Improvements ✅ <br /> (primary)   | -1.0% | [-1.1%, -1.0%] | 2     |
| Improvements ✅ <br /> (secondary) | -1.7% | [-4.3%, -0.2%] | 24    |
| All ❌✅ (primary)                 | 0.8%  | [-1.1%, 2.8%]  | 30    |


3 Regressions, 4 Improvements, 2 Mixed; 3 of them in rollups
53 artifact comparisons made in total

#### Regressions

use ty::Binder in rustdoc instead of `skip_binder` [#105612](https://github.com/rust-lang/rust/pull/105612) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=109cccbe4f345c0f0785ce860788580c3e2a29f5&end=ed620cf9690fdafed65845bf35c455db992fbba1&stat=instructions:u)

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

> The regressions are expected, solely in rustdoc and part of a bugfix.

Use non-ascribed type as field's type in mir [#103880](https://github.com/rust-lang/rust/pull/103880) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=01ef4b21dc5251b58bd9c6fd6face2ae95d56da1&end=03770f0e2b60c02db8fcf52fed5fb36aac70cedc&stat=instructions:u)

| (instructions:u)                   | mean | range        | count |
|:----------------------------------:|:----:|:------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -    | -            | 0     |
| Regressions ❌ <br /> (secondary)  | 3.1% | [2.5%, 3.7%] | 2     |
| Improvements ✅ <br /> (primary)   | -    | -            | 0     |
| Improvements ✅ <br /> (secondary) | -    | -            | 0     |
| All ❌✅ (primary)                 | -    | -            | 0     |

Regression does not appear to be noise, however the PR in question has been reverted (due to non-perf regressions).

Add `IMPLIED_BOUNDS_ENTAILMENT` lint [#105575](https://github.com/rust-lang/rust/pull/105575) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c43bc135628bc0d472e1a1259d56b72b7de0a274&end=7f42e58effa3871dda6a41e250dea60cf88868ca&stat=instructions:u)

| (instructions:u)                   | mean | range        | count |
|:----------------------------------:|:----:|:------------:|:-----:|
| Regressions ❌ <br /> (primary)    | 0.9% | [0.2%, 2.3%] | 20    |
| Regressions ❌ <br /> (secondary)  | 1.6% | [0.6%, 2.6%] | 12    |
| Improvements ✅ <br /> (primary)   | -    | -            | 0     |
| Improvements ✅ <br /> (secondary) | -    | -            | 0     |
| All ❌✅ (primary)                 | 0.9% | [0.2%, 2.3%] | 20    |

New lint for a soundness fix. Regressions relatively limited regardless.

#### Improvements

Revert "enable ThinLTO for rustc on x86_64-apple-darwin dist builds" [#105646](https://github.com/rust-lang/rust/pull/105646) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ed620cf9690fdafed65845bf35c455db992fbba1&end=aa5b179599427ef233c4e47db8dac6edae22b4f8&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -1.0% | [-1.1%, -0.9%] | 2     |
| Improvements ✅ <br /> (secondary) | -2.0% | [-2.6%, -0.8%] | 7     |
| All ❌✅ (primary)                 | -1.0% | [-1.1%, -0.9%] | 2     |


Rollup of 5 pull requests [#105892](https://github.com/rust-lang/rust/pull/105892) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=10723378900ba2d25fc5d8baf785e1082f385832&end=4653c93e4442d88bf3278067183c8fdc0be74a1f&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -1.0% | [-1.1%, -0.9%] | 2     |
| Improvements ✅ <br /> (secondary) | -2.2% | [-2.6%, -2.0%] | 6     |
| All ❌✅ (primary)                 | -1.0% | [-1.1%, -0.9%] | 2     |


Revert #103880 "Use non-ascribed type as field's type in mir" [#105905](https://github.com/rust-lang/rust/pull/105905) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=935dc07218b4bf6e20231e44eb9263b612fd649b&end=696563efc5c3c0d87a601dff22966d2c5eb20a5e&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -0.7% | [-1.3%, -0.3%] | 5     |
| Improvements ✅ <br /> (secondary) | -1.7% | [-3.5%, -0.4%] | 14    |
| All ❌✅ (primary)                 | -0.7% | [-1.3%, -0.3%] | 5     |


Rollup of 5 pull requests [#105940](https://github.com/rust-lang/rust/pull/105940) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=eb9e5e711d3eef1998ff24ac2bc57386662652e9&end=8a746f4ac3a489efb724cde813607f3b96c2df7b&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | -     | -              | 0     |
| Improvements ✅ <br /> (primary)   | -1.1% | [-1.1%, -1.0%] | 2     |
| Improvements ✅ <br /> (secondary) | -1.7% | [-2.6%, -0.4%] | 9     |
| All ❌✅ (primary)                 | -1.1% | [-1.1%, -1.0%] | 2     |


#### Mixed

Guard ProjectionTy creation against passing the wrong number of substs [#105657](https://github.com/rust-lang/rust/pull/105657) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=939a3ddf943f962807b84a44e8b31d99c0db0a94&end=a8847df167c5851caf8f465354fc3d73b7e9338c&stat=instructions:u)

| (instructions:u)                   | mean  | range          | count |
|:----------------------------------:|:-----:|:--------------:|:-----:|
| Regressions ❌ <br /> (primary)    | -     | -              | 0     |
| Regressions ❌ <br /> (secondary)  | 1.0%  | [0.7%, 1.2%]   | 9     |
| Improvements ✅ <br /> (primary)   | -0.4% | [-0.6%, -0.1%] | 2     |
| Improvements ✅ <br /> (secondary) | -0.7% | [-0.7%, -0.5%] | 8     |
| All ❌✅ (primary)                 | -0.4% | [-0.6%, -0.1%] | 2     |


Rollup of 7 pull requests [#105918](https://github.com/rust-lang/rust/pull/105918) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=696563efc5c3c0d87a601dff22966d2c5eb20a5e&end=c43bc135628bc0d472e1a1259d56b72b7de0a274&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     |
| Improvements ✅ <br /> (secondary) | -2.1% | [-4.4%, -0.8%] | 12    |
| All ❌✅ (primary)                 | 0.2%  | [0.2%, 0.2%]   | 1     |
