summaryrefslogtreecommitdiff
path: root/compiler/GHC/Core/Unfold/Make.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Core/Unfold/Make.hs')
-rw-r--r--compiler/GHC/Core/Unfold/Make.hs15
1 files changed, 9 insertions, 6 deletions
diff --git a/compiler/GHC/Core/Unfold/Make.hs b/compiler/GHC/Core/Unfold/Make.hs
index 84cd5168db..e911d722ee 100644
--- a/compiler/GHC/Core/Unfold/Make.hs
+++ b/compiler/GHC/Core/Unfold/Make.hs
@@ -11,7 +11,7 @@ module GHC.Core.Unfold.Make
, mkInlineUnfolding
, mkInlineUnfoldingWithArity
, mkInlinableUnfolding
- , mkWwInlineRule
+ , mkWrapperUnfolding
, mkCompulsoryUnfolding
, mkCompulsoryUnfolding'
, mkDFunUnfolding
@@ -78,12 +78,15 @@ mkDFunUnfolding bndrs con ops
, df_args = map occurAnalyseExpr ops }
-- See Note [Occurrence analysis of unfoldings]
-mkWwInlineRule :: SimpleOpts -> CoreExpr -> Arity -> Unfolding
-mkWwInlineRule opts expr arity
+mkWrapperUnfolding :: SimpleOpts -> CoreExpr -> Arity -> Unfolding
+-- Make the unfolding for the wrapper in a worker/wrapper split
+-- after demand/CPR analysis
+mkWrapperUnfolding opts expr arity
= mkCoreUnfolding InlineStable True
- (simpleOptExpr opts expr)
- (UnfWhen { ug_arity = arity, ug_unsat_ok = unSaturatedOk
- , ug_boring_ok = boringCxtNotOk })
+ (simpleOptExpr opts expr)
+ (UnfWhen { ug_arity = arity
+ , ug_unsat_ok = unSaturatedOk
+ , ug_boring_ok = boringCxtNotOk })
mkWorkerUnfolding :: SimpleOpts -> (CoreExpr -> CoreExpr) -> Unfolding -> Unfolding
-- See Note [Worker/wrapper for INLINABLE functions] in GHC.Core.Opt.WorkWrap