WorkWrap: Nuke CPR signatures of join points (#18824)
In #18824 we saw that the Simplifier didn't nuke a CPR signature of a join point when it pushed a continuation into it when it better should have. But join points are local, mostly non-exported bindings. We don't use their CPR signature anyway and would discard it at the end of the Core pipeline. Their main purpose is to propagate CPR info during CPR analysis and by the time worker/wrapper runs the signature will have served its purpose. So we zap it! Fixes #18824.
Showing
- compiler/GHC/Core/Opt/WorkWrap.hs 29 additions, 23 deletionscompiler/GHC/Core/Opt/WorkWrap.hs
- testsuite/tests/cpranal/should_compile/T18824.hs 39 additions, 0 deletionstestsuite/tests/cpranal/should_compile/T18824.hs
- testsuite/tests/cpranal/should_compile/all.T 10 additions, 0 deletionstestsuite/tests/cpranal/should_compile/all.T
- testsuite/tests/simplCore/should_compile/T3772.stdout 1 addition, 1 deletiontestsuite/tests/simplCore/should_compile/T3772.stdout
Loading
Please register or sign in to comment