    module GHC.Driver.Config.Core.Opt.WorkWrap
      ( initWorkWrapOpts
      ) where

    import GHC.Prelude ()

    import GHC.Driver.Config (initSimpleOpts)
    import GHC.Driver.DynFlags

    import GHC.Core.FamInstEnv
    import GHC.Core.Opt.WorkWrap
    import GHC.Unit.Types

    initWorkWrapOpts :: Module -> DynFlags -> FamInstEnvs -> WwOpts
    initWorkWrapOpts :: Module -> DynFlags -> FamInstEnvs -> WwOpts
    initWorkWrapOpts Module
    this_mod DynFlags
    dflags FamInstEnvs
    fam_envs = MkWwOpts
      { wo_fam_envs :: FamInstEnvs
    wo_fam_envs          = FamInstEnvs
    fam_envs
      , wo_simple_opts :: SimpleOpts
    wo_simple_opts       = DynFlags -> SimpleOpts
    initSimpleOpts DynFlags
    dflags
      , wo_cpr_anal :: Bool
    wo_cpr_anal          = GeneralFlag -> DynFlags -> Bool
    gopt GeneralFlag
    Opt_CprAnal DynFlags
    dflags
      , wo_module :: Module
    wo_module            = Module
    this_mod
      , wo_unlift_strict :: Bool
    wo_unlift_strict     = GeneralFlag -> DynFlags -> Bool
    gopt GeneralFlag
    Opt_WorkerWrapperUnlift DynFlags
    dflags
      }