Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Constructed Product Result analysis. Identifies functions that surely return heap-allocated records on every code path, so that we can eliminate said heap allocation by performing a worker/wrapper split.
See https://www.microsoft.com/en-us/research/publication/constructed-product-result-analysis-haskell/. CPR analysis should happen after strictness analysis. See Note [Phase ordering].
Documentation
cprAnalProgram :: Logger -> DynFlags -> FamInstEnvs -> CoreProgram -> IO CoreProgram Source #