diff --git a/triage/2025/2025-10-20.md b/triage/2025/2025-10-20.md
new file mode 100644
index 000000000..207a48c2e
--- /dev/null
+++ b/triage/2025/2025-10-20.md
@@ -0,0 +1,250 @@
+# 2025-10-21 Triage Log
+
+Fairly busy week, with lots of mixed results. However, overall we ended with a
+slight improvement on average.
+
+Triage done by **@simulacrum**.
+Revision range: [956f47c3..4068bafe](https://perf.rust-lang.org/?start=956f47c32f1bd97b22cd702d7ccf78f0f0d42c34&end=4068bafedd8ba724e332a5221c06a6fa531a30d2&absolute=false&stat=instructions%3Au)
+
+**Summary**:
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.5% | [0.2%, 0.8%] | 21 |
+| Regressions ❌
(secondary) | 0.6% | [0.1%, 2.5%] | 78 |
+| Improvements ✅
(primary) | -0.8% | [-7.3%, -0.1%] | 88 |
+| Improvements ✅
(secondary) | -0.6% | [-5.4%, -0.1%] | 87 |
+| All ❌✅ (primary) | -0.6% | [-7.3%, 0.8%] | 109 |
+
+2 Regressions, 5 Improvements, 10 Mixed; 5 of them in rollups
+39 artifact comparisons made in total
+
+#### Regressions
+
+Rollup of 11 pull requests [#147745](https://github.com/rust-lang/rust/pull/147745) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=57ef8d642d21965304bde849bab4f389b4353e27&end=402ce0ef07d5db9ba26ae5c37ce6aff0c9002052&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | - | - | 0 |
+| Regressions ❌
(secondary) | 1.0% | [0.8%, 2.0%] | 7 |
+| Improvements ✅
(primary) | - | - | 0 |
+| Improvements ✅
(secondary) | -0.3% | [-0.3%, -0.3%] | 1 |
+| All ❌✅ (primary) | - | - | 0 |
+
+Suspecting https://github.com/rust-lang/rust/pull/147718, but since regressions
+are only to match-stress it's unlikely to be particularly interesting. Possibly
+a missing #[inline] to regain instruction counts.
+
+deduced_param_attrs: check Freeze on monomorphic types. [#147695](https://github.com/rust-lang/rust/pull/147695) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c8a31b780d5415358566a20b94912620a3f27067&end=0c0f27afd42c977d5ea5f6df2c8f5bc192bdc67a&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:----:|:------------:|:-----:|
+| Regressions ❌
(primary) | 0.3% | [0.3%, 0.4%] | 3 |
+| Regressions ❌
(secondary) | - | - | 0 |
+| Improvements ✅
(primary) | - | - | 0 |
+| Improvements ✅
(secondary) | - | - | 0 |
+| All ❌✅ (primary) | 0.3% | [0.3%, 0.4%] | 3 |
+
+Appears to be a regression limited to the bitmaps benchmark. Most other
+benchmarks, though below noise threshold, are slightly improved or neutral. The
+initial perf run in PR was also a strict improvement. It doesn't seem like a
+spurious regression, but also doesn't seem like it merits further followup.
+
+#### Improvements
+
+Restrict sysroot crate imports to those defined in this repo. [#143548](https://github.com/rust-lang/rust/pull/143548) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4f08307f6efdbca86d27beecd257fad9913192e9&end=28d0a4a205f9e511ad2f51ee79a4aa19a704a455&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | - | - | 0 |
+| Regressions ❌
(secondary) | - | - | 0 |
+| Improvements ✅
(primary) | -2.8% | [-2.8%, -2.8%] | 1 |
+| Improvements ✅
(secondary) | - | - | 0 |
+| All ❌✅ (primary) | -2.8% | [-2.8%, -2.8%] | 1 |
+
+
+rustdoc-search: stringdex 0.0.2 [#147660](https://github.com/rust-lang/rust/pull/147660) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a41214f9bd7ce869d21898f31107f92c90a9112f&end=f46475914de626785090a05ae037578aaa119fc8&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | - | - | 0 |
+| Regressions ❌
(secondary) | - | - | 0 |
+| Improvements ✅
(primary) | -0.8% | [-2.5%, -0.2%] | 5 |
+| Improvements ✅
(secondary) | -1.1% | [-5.7%, -0.3%] | 9 |
+| All ❌✅ (primary) | -0.8% | [-2.5%, -0.2%] | 5 |
+
+
+Rollup of 6 pull requests [#147842](https://github.com/rust-lang/rust/pull/147842) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=0c0f27afd42c977d5ea5f6df2c8f5bc192bdc67a&end=6380899f32599ea25615d4ccd708d0e8da652b0c&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | - | - | 0 |
+| Regressions ❌
(secondary) | 0.2% | [0.2%, 0.2%] | 1 |
+| Improvements ✅
(primary) | - | - | 0 |
+| Improvements ✅
(secondary) | -0.4% | [-1.1%, -0.1%] | 8 |
+| All ❌✅ (primary) | - | - | 0 |
+
+
+Rollup of 4 pull requests [#147884](https://github.com/rust-lang/rust/pull/147884) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c6efb9019b3169fc672248339dbbf13e6a134de3&end=4ddbb6051271237f4192333e06b8129148995eef&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | - | - | 0 |
+| Regressions ❌
(secondary) | - | - | 0 |
+| Improvements ✅
(primary) | -0.3% | [-0.3%, -0.2%] | 2 |
+| Improvements ✅
(secondary) | -0.2% | [-0.3%, -0.1%] | 5 |
+| All ❌✅ (primary) | -0.3% | [-0.3%, -0.2%] | 2 |
+
+Add a `!=` check to `ChunkedBitSet::union`. [#147619](https://github.com/rust-lang/rust/pull/147619) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=5413f7d39cae07b7b3809973fe201d21960a18aa&end=4f08307f6efdbca86d27beecd257fad9913192e9&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 2.9% | [2.9%, 2.9%] | 1 |
+| Regressions ❌
(secondary) | - | - | 0 |
+| Improvements ✅
(primary) | -3.5% | [-9.3%, -0.1%] | 8 |
+| Improvements ✅
(secondary) | - | - | 0 |
+| All ❌✅ (primary) | -2.8% | [-9.3%, 2.9%] | 9 |
+
+One regression looks spurious so manually moved to improvements.
+
+#### Mixed
+
+Change int-to-ptr transmute lowering back to inttoptr [#147541](https://github.com/rust-lang/rust/pull/147541) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=9b8264604ef800b5539d04bf78ebdef5c5fa4968&end=ed1d94311e7ed53eabb5667ef577802d88d1aaee&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.2% | [0.2%, 0.2%] | 1 |
+| Regressions ❌
(secondary) | 2.2% | [0.1%, 2.9%] | 8 |
+| Improvements ✅
(primary) | - | - | 0 |
+| Improvements ✅
(secondary) | -0.3% | [-0.6%, -0.1%] | 12 |
+| All ❌✅ (primary) | 0.2% | [0.2%, 0.2%] | 1 |
+
+Mitigation for soundness problems, costs are worth it.
+
+only call polymorphic array iter drop machinery when the type requires it [#147353](https://github.com/rust-lang/rust/pull/147353) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4b94758d2ba7d0ef71ccf5fde29ce4bc5d6fe2a4&end=fb24b04b096a980bffd80154f6aba22fd07cb3d9&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.7% | [0.7%, 0.7%] | 2 |
+| Regressions ❌
(secondary) | 0.3% | [0.1%, 1.1%] | 4 |
+| Improvements ✅
(primary) | - | - | 0 |
+| Improvements ✅
(secondary) | -0.1% | [-0.1%, -0.0%] | 2 |
+| All ❌✅ (primary) | 0.7% | [0.7%, 0.7%] | 2 |
+
+Primary regressions to cargo and cranelift-codegen look real. However, previous
+runs on the same PR saw oscillating results, and since this likely affects CGU
+partitioning it doesn't seem unexpected that would be the case. Marking as
+triaged.
+
+Rollup of 12 pull requests [#147662](https://github.com/rust-lang/rust/pull/147662) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2f7620a5ccfea7d59d1f500e2a2e59cf1c867a1b&end=e100792918c8bd9e0cb830f96fc9b171e8892fa1&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.4% | [0.3%, 0.5%] | 2 |
+| Regressions ❌
(secondary) | 0.2% | [0.0%, 0.5%] | 3 |
+| Improvements ✅
(primary) | -0.3% | [-0.4%, -0.2%] | 2 |
+| Improvements ✅
(secondary) | -0.1% | [-0.1%, -0.1%] | 3 |
+| All ❌✅ (primary) | 0.1% | [-0.4%, 0.5%] | 4 |
+
+Per PR comment, perf change is from avoiding redundant UB checks:
+https://github.com/rust-lang/rust/pull/147620#issuecomment-3404145907.
+
+Regressions don't look spurious but seem unlikely to be practically
+investigated to any real effect due to the nature of this change affecting lots
+of generated code, and seeming like a good change on a surface level.
+
+Rollup of 12 pull requests [#147692](https://github.com/rust-lang/rust/pull/147692) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=844264adda6f41ca6d0d61c4bcac0f263fc5072f&end=235a4c083eb2a2bfe8779d211c3232f39396de00&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.3% | [0.1%, 0.9%] | 20 |
+| Regressions ❌
(secondary) | 0.6% | [0.0%, 2.7%] | 48 |
+| Improvements ✅
(primary) | -0.4% | [-0.4%, -0.2%] | 3 |
+| Improvements ✅
(secondary) | -0.1% | [-0.1%, -0.0%] | 5 |
+| All ❌✅ (primary) | 0.2% | [-0.4%, 0.9%] | 23 |
+
+Change identification appears to be ongoing on the PR, with no clear cause as yet identified.
+
+prefer alias candidates for sizedness + auto trait goals [#144064](https://github.com/rust-lang/rust/pull/144064) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3f2a5921a451378f219edec28810f5f2f45cf1be&end=57ef8d642d21965304bde849bab4f389b4353e27&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.4% | [0.1%, 0.8%] | 16 |
+| Regressions ❌
(secondary) | 0.5% | [0.2%, 1.8%] | 19 |
+| Improvements ✅
(primary) | -0.2% | [-0.6%, -0.1%] | 6 |
+| Improvements ✅
(secondary) | -0.5% | [-0.7%, -0.3%] | 8 |
+| All ❌✅ (primary) | 0.2% | [-0.6%, 0.8%] | 22 |
+
+Fix for a regression. Generally fairly neutral so further investigation doesn't seem warranted.
+
+Use regular Vec in BitSet. [#147644](https://github.com/rust-lang/rust/pull/147644) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f5242367f4acf0130c9b68e6956531b2cb73bd38&end=779e19d8baa3e3625bd4fc5c85cbb2ad47b43155&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.4% | [0.2%, 0.7%] | 16 |
+| Regressions ❌
(secondary) | 0.3% | [0.0%, 0.8%] | 26 |
+| Improvements ✅
(primary) | -0.4% | [-0.7%, -0.1%] | 26 |
+| Improvements ✅
(secondary) | -0.8% | [-3.0%, -0.1%] | 69 |
+| All ❌✅ (primary) | -0.1% | [-0.7%, 0.7%] | 42 |
+
+Marking as triaged as it's overall a slight improvement.
+
+`TaskDeps` improvements [#147508](https://github.com/rust-lang/rust/pull/147508) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=53a741fc4b8cf2d8e7b1b2336ed8edf889db84f4&end=28c4c7d7abced7b35c49f38149b9cb6ea27dd2a6&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.5% | [0.5%, 0.5%] | 1 |
+| Regressions ❌
(secondary) | 0.5% | [0.2%, 0.8%] | 17 |
+| Improvements ✅
(primary) | -0.4% | [-1.0%, -0.1%] | 25 |
+| Improvements ✅
(secondary) | -0.7% | [-1.2%, -0.2%] | 22 |
+| All ❌✅ (primary) | -0.4% | [-1.0%, 0.5%] | 26 |
+
+Improvements definitely outweigh regressions.
+
+Pre-compute MIR CFG caches for borrowck and other analyses [#142540](https://github.com/rust-lang/rust/pull/142540) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f46475914de626785090a05ae037578aaa119fc8&end=28fad9598975af7734be05116b3c5fc74b720d87&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 1.7% | [1.0%, 2.6%] | 4 |
+| Regressions ❌
(secondary) | 0.9% | [0.1%, 1.6%] | 6 |
+| Improvements ✅
(primary) | -0.2% | [-0.3%, -0.1%] | 15 |
+| Improvements ✅
(secondary) | -0.3% | [-0.4%, -0.2%] | 13 |
+| All ❌✅ (primary) | 0.2% | [-0.3%, 2.6%] | 19 |
+
+> I think this is fine. We're seeing enough wins for more common Rust code
+> (serde, image, syn, etc) that I think it is fine to take the hit for the two
+> outliers (tt-muncher and cranelift-codegen for some reason), I do think it
+> could be because of cloning taking more instructions than what gets saved,
+> but I don't think that is preventable.
+
+https://github.com/rust-lang/rust/pull/142540#issuecomment-3416857137
+
+I think I'm broadly in agreement with this summary of the results.
+
+Limit impl_trait_header query to only trait impls [#144607](https://github.com/rust-lang/rust/pull/144607) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=28fad9598975af7734be05116b3c5fc74b720d87&end=2170b4da847c9d75d400b13ba53bd47f749233bd&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.2% | [0.2%, 0.2%] | 1 |
+| Regressions ❌
(secondary) | 0.2% | [0.1%, 0.2%] | 11 |
+| Improvements ✅
(primary) | -0.6% | [-0.8%, -0.4%] | 7 |
+| Improvements ✅
(secondary) | -1.8% | [-2.6%, -0.1%] | 4 |
+| All ❌✅ (primary) | -0.5% | [-0.8%, 0.2%] | 8 |
+
+Some regressions on smaller benchmarks. My guess is that this hurts the case
+where there's lots of opt function lookups for that are now two query cache hit
+lookups rather than just one? But that seems to generally be less likely in our
+benchmarks than showing an improvement, so willing to just accept the
+regressions.
+
+Simplify trivial constants in SimplifyConstCondition [#147654](https://github.com/rust-lang/rust/pull/147654) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=ab1d2444533d829e2d5cff6634cd3c70de6d7103&end=c8a31b780d5415358566a20b94912620a3f27067&stat=instructions:u)
+
+| (instructions:u) | mean | range | count |
+|:----------------------------------:|:-----:|:--------------:|:-----:|
+| Regressions ❌
(primary) | 0.5% | [0.5%, 0.5%] | 1 |
+| Regressions ❌
(secondary) | 0.6% | [0.2%, 1.1%] | 4 |
+| Improvements ✅
(primary) | -0.5% | [-0.9%, -0.2%] | 13 |
+| Improvements ✅
(secondary) | -0.2% | [-0.3%, -0.1%] | 8 |
+| All ❌✅ (primary) | -0.4% | [-0.9%, 0.5%] | 14 |
+
+Improvements outweigh regressions.