Note [Compiler phases]
The CompilerPhase says which phase the simplifier is running in: * InitialPhase: before all user-visible phases * Phase 2,1,0: user-visible phases; the phase number controls rule ordering an inlining. * FinalPhase: used for all subsequent simplifier runs. By delaying inlining of wrappers to FinalPhase we can ensure that RULE have a good chance to fire. See Note [Wrapper activation] in GHC.Core.Opt.WorkWrap NB: FinalPhase is run repeatedly, not just once. NB: users don't have access to InitialPhase or FinalPhase. They write {-# INLINE[n] f #
References 1
- Wrapper activation GHC.Core.Opt.WorkWrap
Referenced by 1
- GHC.Core.Opt.Pipeline call site