Futhark.Pass.ExtractKernels.ToKernels
getSize :: (MonadBinder m, Op (Lore m) ~ HostOp (Lore m) inner) => String -> SizeClass -> m SubExp Source #
segThread :: (MonadBinder m, Op (Lore m) ~ HostOp (Lore m) inner) => String -> m SegLevel Source #
soacsLambdaToKernels :: Lambda SOACS -> Lambda Kernels Source #
soacsStmToKernels :: Stm SOACS -> Stm Kernels Source #
scopeForKernels :: Scope SOACS -> Scope Kernels Source #
scopeForSOACs :: Scope Kernels -> Scope SOACS Source #
injectSOACS :: (Monad m, SameScope from to, ExpDec from ~ ExpDec to, BodyDec from ~ BodyDec to, RetType from ~ RetType to, BranchType from ~ BranchType to, Op from ~ SOAC from) => (SOAC to -> Op to) -> Rephraser m from to Source #