Safe Haskell | Ignore |
---|---|
Language | GHC2021 |
GHC.Core.Opt.Pipeline.Types
Synopsis
- type CorePluginPass = ModGuts -> CoreM ModGuts
- data CoreToDo
- = CoreDoSimplify !SimplifyOpts
- | CoreDoPluginPass String CorePluginPass
- | CoreDoFloatInwards
- | CoreDoFloatOutwards FloatOutSwitches
- | CoreLiberateCase
- | CoreDoPrintCore
- | CoreDoStaticArgs
- | CoreDoCallArity
- | CoreDoExitify
- | CoreDoDemand Bool
- | CoreDoCpr
- | CoreDoWorkerWrapper
- | CoreDoSpecialising
- | CoreDoSpecConstr
- | CoreCSE
- | CoreDoRuleCheck CompilerPhase String
- | CoreDoNothing
- | CoreDoPasses [CoreToDo]
- | CoreDesugar
- | CoreDesugarOpt
- | CoreTidy
- | CorePrep
- | CoreAddCallerCcs
- | CoreAddLateCcs
- bindsOnlyPass :: (CoreProgram -> CoreM CoreProgram) -> ModGuts -> CoreM ModGuts
- pprPassDetails :: CoreToDo -> SDoc
Configuration of the core-to-core passes
type CorePluginPass = ModGuts -> CoreM ModGuts #
A description of the plugin pass itself
Constructors
Instances
Outputable CoreToDo # | |
Defined in GHC.Core.Opt.Pipeline.Types |
bindsOnlyPass :: (CoreProgram -> CoreM CoreProgram) -> ModGuts -> CoreM ModGuts #
pprPassDetails :: CoreToDo -> SDoc #