| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Futhark.Pass.Flatten.PreProcess
Description
Preprocess the program before flattening. This rewrites SOAC forms that flatten does not want to see directly, while leaving the result in SOACS form so the normal flattening pipeline can continue afterwards.
Documentation
shouldDissectForm :: ScremaForm SOACS -> Bool Source #
preprocessBody :: MonadFreshNames m => Scope SOACS -> Body SOACS -> m (Body SOACS) Source #
preprocessStms :: MonadFreshNames m => Scope SOACS -> Stms SOACS -> m (Stms SOACS) Source #
preprocessStm :: MonadFreshNames m => Scope SOACS -> Stm SOACS -> m (Stms SOACS) Source #
preprocessLambda :: MonadFreshNames m => Scope SOACS -> Lambda SOACS -> m (Lambda SOACS) Source #
runSimplifiedBuilder :: MonadFreshNames m => Scope SOACS -> BuilderT SOACS m a -> m (Stms SOACS) Source #