Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Optimization passes for removing dead code, mainly dead let bindings.
Synopsis
- removeDeadBindings ∷ (HasUnique name TermUnique, ToBuiltinMeaning uni fun, MonadQuote m) ⇒ BuiltinsInfo uni fun → Term TyName name uni fun a → m (Term TyName name uni fun a)
- removeDeadBindingsPass ∷ (Typecheckable uni fun, GEq uni, Ord a, MonadQuote m) ⇒ PirTCConfig uni fun → BuiltinsInfo uni fun → Pass m TyName Name uni fun a
- removeDeadBindingsPassSC ∷ (Typecheckable uni fun, GEq uni, Ord a, MonadQuote m) ⇒ PirTCConfig uni fun → BuiltinsInfo uni fun → Pass m TyName Name uni fun a
Documentation
removeDeadBindings ∷ (HasUnique name TermUnique, ToBuiltinMeaning uni fun, MonadQuote m) ⇒ BuiltinsInfo uni fun → Term TyName name uni fun a → m (Term TyName name uni fun a) Source #
Remove all the dead let bindings in a term.
removeDeadBindingsPass ∷ (Typecheckable uni fun, GEq uni, Ord a, MonadQuote m) ⇒ PirTCConfig uni fun → BuiltinsInfo uni fun → Pass m TyName Name uni fun a Source #
removeDeadBindingsPassSC ∷ (Typecheckable uni fun, GEq uni, Ord a, MonadQuote m) ⇒ PirTCConfig uni fun → BuiltinsInfo uni fun → Pass m TyName Name uni fun a Source #