You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* syn (mostly check builds, but also a debug incr-unchanged and opt incr-unchanged) had regressions ranging from 7.24% all the way up to 19.11%.
52
+
* The most plausible hypothesis is that this is due to an explosion in the number of warnings emitted for this benchmark. (The number of warnings went from ~200 up to 1800, according to Urgau's analysis).
53
+
* This means the code ends up becoming, at least in part, a benchmark of the lint machinery, regardless of whether that is our intent or not.
54
+
* see also [rustc-perf#1819](https://github.com/rust-lang/rustc-perf/issues/1819) "Consider passing -Awarnings (or similar) to avoid false alarms from lint *reporting*"
55
+
* marking as triaged.
56
+
46
57
Rollup of 3 pull requests [#124784](https://github.com/rust-lang/rust/pull/124784)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=96f1da82687f499dd3f57006ae71548714532382&end=d287f3e4eeaf680e8fe875f1ec75cca68f357d30&stat=instructions:u)
47
58
48
59
| (instructions:u) | mean | range | count |
@@ -53,6 +64,10 @@ Rollup of 3 pull requests [#124784](https://github.com/rust-lang/rust/pull/12478
53
64
| Improvements ✅ <br /> (secondary) | - | - | 0 |
54
65
| All ❌✅ (primary) | 0.3% |[0.2%, 0.4%]| 5 |
55
66
67
+
* all regressions were to syn, to various incr-unchanged and incr-patched:println scenarios.
68
+
* current hypothesis is that this is due to PR #124742, which adds `rustfmt` to the well-known cfgs list.
69
+
* that hypothesis implies that this is a (mostly-)false alarm, much like #124684.
70
+
* marking as triaged
56
71
57
72
#### Improvements
58
73
@@ -66,6 +81,9 @@ Rollup of 10 pull requests [#124646](https://github.com/rust-lang/rust/pull/1246
* the bulk of the improvements are to variations of html5ever and serde_derive.
85
+
* skimming over the rollup list, I cannot identify an immediate root cause for improvement
86
+
* but for now will treat it like a happy accident
69
87
70
88
Some hir cleanups [#124401](https://github.com/rust-lang/rust/pull/124401)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d2d24e395a1e4fcee62ca17bf4cbddb1f903af97&end=09cd00fea4aecaa6707f122d7e143196b8a12ee2&stat=instructions:u)
71
89
@@ -77,6 +95,9 @@ Some hir cleanups [#124401](https://github.com/rust-lang/rust/pull/124401) [(Com
* the hir cleanups in question are largely to store `AnonConst` (e.g. for array lengths) in the HIR arena, and then move the ConstArg span over to AnonConst span instead.
100
+
* inspection of typenum didn't show any particular cases that seemed like the would stress `AnonConst`; maybe the benefit comes more from the places where we now pass a span by value instead of passing a pointer to it.
80
101
81
102
#### Mixed
82
103
@@ -90,6 +111,10 @@ Account for immutably borrowed locals in MIR copy-prop and GVN [#123602](https:/
* html5ever opt-full regressed by 0.92%; libc in various incremental scenarios regressed by 0.30% to 0.39%.
115
+
* the libc changes were anticipated in the perf build prior to merge; html5ever opt-full was not predicted there.
116
+
* pnkfelix hypothesizes that this just reflects some extra-work from the compiler attempting to do the copy-propagation and global-value-numbering mir-optimizations on a larger set of immutably-borrowed locals, and is acceptable given the expected benefits.
117
+
* marking as triaged
93
118
94
119
Rollup of 8 pull requests [#124703](https://github.com/rust-lang/rust/pull/124703)[(Comparison Link)](https://perf.rust-lang.org/compare.html?start=7dd170fccb3be6b1737af5df14dd736b366236c1&end=d7ea27808deb5e10a0f7384e339e4e6165e33398&stat=instructions:u)
95
120
@@ -101,6 +126,8 @@ Rollup of 8 pull requests [#124703](https://github.com/rust-lang/rust/pull/12470
0 commit comments