module SAT ( doStaticArgs ) where
-import DynFlags
import Var
import CoreSyn
-import CoreLint
import CoreUtils
import Type
-import TcType
import Id
import Name
-import OccName
import VarEnv
import UniqSupply
import Util
\end{code}
\begin{code}
-doStaticArgs :: DynFlags -> UniqSupply -> [CoreBind] -> IO [CoreBind]
-doStaticArgs dflags us binds = do
- showPass dflags "Static argument"
- let binds' = snd $ mapAccumL sat_bind_threaded_us us binds
- endPass dflags "Static argument" Opt_D_verbose_core2core binds'
+doStaticArgs :: UniqSupply -> [CoreBind] -> [CoreBind]
+doStaticArgs us binds = snd $ mapAccumL sat_bind_threaded_us us binds
where
sat_bind_threaded_us us bind =
let (us1, us2) = splitUniqSupply us
emptyIdSATInfo = emptyUFM
{-
-pprIdSATInfo id_sat_info = vcat (map pprIdAndSATInfo (fmToList id_sat_info))
+pprIdSATInfo id_sat_info = vcat (map pprIdAndSATInfo (Map.toList id_sat_info))
where pprIdAndSATInfo (v, sat_info) = hang (ppr v <> colon) 4 (pprSATInfo sat_info)
-}
[Arity 3]
GHC.Base.until =
\ (@ a_aiK)
- (p_a6T :: a_aiK -> GHC.Bool.Bool)
+ (p_a6T :: a_aiK -> GHC.Types.Bool)
(f_a6V :: a_aiK -> a_aiK)
(x_a6X :: a_aiK) ->
letrec {
\ (x_a6X :: a_aiK) ->
let {
sat_shadow_r17 :: forall a_a3O.
- (a_a3O -> GHC.Bool.Bool) -> (a_a3O -> a_a3O) -> a_a3O -> a_a3O
+ (a_a3O -> GHC.Types.Bool) -> (a_a3O -> a_a3O) -> a_a3O -> a_a3O
[]
sat_shadow_r17 =
\ (@ a_aiK)
- (p_a6T :: a_aiK -> GHC.Bool.Bool)
+ (p_a6T :: a_aiK -> GHC.Types.Bool)
(f_a6V :: a_aiK -> a_aiK)
(x_a6X :: a_aiK) ->
sat_worker_s1aU x_a6X } in
case p_a6T x_a6X of wild_X3y [ALWAYS Dead Nothing] {
- GHC.Bool.False -> GHC.Base.until @ a_aiK p_a6T f_a6V (f_a6V x_a6X);
- GHC.Bool.True -> x_a6X
+ GHC.Types.False -> GHC.Base.until @ a_aiK p_a6T f_a6V (f_a6V x_a6X);
+ GHC.Types.True -> x_a6X
}; } in
sat_worker_s1aU x_a6X
isStaticValue (Static (VarApp _)) = True
isStaticValue _ = False
-\end{code}
\ No newline at end of file
+\end{code}