rust/compiler/rustc_trait_selection
Nicholas Nethercote e45b2ab5c5 Fix a performance regression in obligation deduplication.
Commit 8378487 from #114611 changed the location of an obligation
deduplication step in `opt_normalize_projection_type`. This meant that
deduplication stopped happening on one path where it was still
necessary, causing a couple of drastic performance regressions.

This commit moves the deduplication back to the old location. The good
news is that #114611 had four commits and 8378487 was of minimal
importance, so the perf benefits from that PR remain.

Fixes #116780, #116797.

(cherry picked from commit 91f2fbc867bfc31f2e103b09e605c61f1a450b33)
2023-10-20 17:45:16 -07:00
..