summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
Diffstat (limited to 'compiler')
-rw-r--r--compiler/GHC/Core/Opt/WorkWrap/Utils.hs13
1 files changed, 8 insertions, 5 deletions
diff --git a/compiler/GHC/Core/Opt/WorkWrap/Utils.hs b/compiler/GHC/Core/Opt/WorkWrap/Utils.hs
index 108b9079e6..38896ba4f3 100644
--- a/compiler/GHC/Core/Opt/WorkWrap/Utils.hs
+++ b/compiler/GHC/Core/Opt/WorkWrap/Utils.hs
@@ -139,15 +139,18 @@ the unusable strictness-info into the interfaces.
data WwOpts
= MkWwOpts
+ -- | Environment of type/data family instances
{ wo_fam_envs :: !FamInstEnvs
+ -- | Options for the "Simple optimiser"
, wo_simple_opts :: !SimpleOpts
+ -- | Whether to enable "Constructed Product Result" analysis.
+ -- (Originally from DOI: 10.1017/S0956796803004751)
, wo_cpr_anal :: !Bool
-
- -- Used for absent argument error message
+ -- | Used for absent argument error message
, wo_module :: !Module
- , wo_unlift_strict :: !Bool -- Generate workers even if the only effect is some args
- -- get passed unlifted.
- -- See Note [WW for calling convention]
+ -- | Generate workers even if the only effect is some args get passed
+ -- unlifted. See Note [WW for calling convention]
+ , wo_unlift_strict :: !Bool
}
initWwOpts :: Module -> DynFlags -> FamInstEnvs -> WwOpts