Improvements from !5349: `diffUFM`, rename to `-ddump-dmdanal`, stricten `substBndr`
I'm in the process of scavenging !5349. I rebased a few helpful improvements and would like to see them merged. In particular:
-
bca2c1b0 introduces
diffUFM
to aid debugging and improve trace messages when huge UniqFMs are involved -
e3d71a6e, ed603273 fixes a pet peeve of mine: rename
-ddump-stranal
to-ddump-dmdanal
, deprecate the former -
6a418e48 improves performance of
cloneBndr
andsubstBndr
by making them strict in the returnedInScopeSet
. Apparently this improved allocations by 25% at the time. It's the only functional change, so we can simply look at the measurements in CI.
Perf results:
T9233(normal) ghc/alloc 672,488,656 663,083,216 -1.4% GOOD
T9675(optasm) ghc/alloc 423,029,256 415,812,200 -1.7%
geo. mean -0.1%
minimum -1.7%
maximum +0.1%