diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2020-03-20 08:48:47 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-03-29 17:29:30 -0400 |
commit | 54250f2d8de910b094070c1b48f086030df634b1 (patch) | |
tree | e062c160912d97eefbdd21d2ce239fd824089e43 /testsuite/tests/stranal/should_compile/syn.hs | |
parent | f1a6c73d01912b389e012a0af81a5c2002e82636 (diff) | |
download | haskell-54250f2d8de910b094070c1b48f086030df634b1.tar.gz |
Demand analysis: simplify the demand for a RHS
Ticket #17932 showed that we were using a stupid demand for the RHS
of a let-binding, when the result is a product. This was the result
of a "fix" in 2013, which (happily) turns out to no longer be
necessary.
So I just deleted the code, which simplifies the demand analyser,
and fixes #17932. That in turn uncovered that the anticipation
of worker/wrapper in CPR analysis was inaccurate, hence the logic
that decides whether to unbox an argument in WW was extracted into
a function `wantToUnbox`, now consulted by CPR analysis.
I tried nofib, and got 0.0% perf changes.
All this came up when messing about with !2873 (ticket #17917),
but is idependent of it.
Unfortunately, this patch regresses #4267 and realised that it is now
blocked on #16335.
Diffstat (limited to 'testsuite/tests/stranal/should_compile/syn.hs')
0 files changed, 0 insertions, 0 deletions