| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
GHC.Stg.Pipeline
Synopsis
- data StgPipelineOpts = StgPipelineOpts {}
- data StgToDo
- stg2stg :: Logger -> InteractiveContext -> StgPipelineOpts -> Module -> [StgTopBinding] -> IO ([CgStgTopBinding], StgCgInfos)
- type StgCgInfos = NameEnv TagSig
Documentation
data StgPipelineOpts Source #
Constructors
| StgPipelineOpts | |
Fields
| |
Optional Stg-to-Stg passes.
Constructors
| StgCSE | Common subexpression elimination |
| StgLiftLams StgLiftConfig | Lambda lifting closure variables, trading stack/register allocation for heap allocation |
| StgStats | |
| StgUnarise | Mandatory unarise pass, desugaring unboxed tuple and sum binders |
| StgBcPrep | Mandatory when compiling to bytecode |
| StgDoNothing | Useful for building up |
stg2stg :: Logger -> InteractiveContext -> StgPipelineOpts -> Module -> [StgTopBinding] -> IO ([CgStgTopBinding], StgCgInfos) Source #
type StgCgInfos = NameEnv TagSig Source #
Information to be exposed in interface files which is produced by the stg2stg passes.