Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- simplifyKernels :: Prog Kernels -> PassM (Prog Kernels)
- simplifyLambda :: (HasScope Kernels m, MonadFreshNames m) => Lambda Kernels -> [Maybe VName] -> m (Lambda Kernels)
- simplifyKernelOp :: (SimplifiableLore lore, BodyAttr lore ~ ()) => SimplifyOp lore op -> HostOp lore op -> SimpleM lore (HostOp (Wise lore) (OpWithWisdom op), Stms (Wise lore))
Documentation
simplifyLambda :: (HasScope Kernels m, MonadFreshNames m) => Lambda Kernels -> [Maybe VName] -> m (Lambda Kernels) Source #
Building blocks
simplifyKernelOp :: (SimplifiableLore lore, BodyAttr lore ~ ()) => SimplifyOp lore op -> HostOp lore op -> SimpleM lore (HostOp (Wise lore) (OpWithWisdom op), Stms (Wise lore)) Source #
Orphan instances
Simplifiable SegSpace Source # | |
Simplifiable SegLevel Source # | |
Simplifiable KernelResult Source # | |
simplify :: SimplifiableLore lore => KernelResult -> SimpleM lore KernelResult Source # | |
Simplifiable SplitOrdering Source # | |
simplify :: SimplifiableLore lore => SplitOrdering -> SimpleM lore SplitOrdering Source # | |
BinderOps (Wise Kernels) Source # | |
mkExpAttrB :: (MonadBinder m, Lore m ~ Wise Kernels) => Pattern (Wise Kernels) -> Exp (Wise Kernels) -> m (ExpAttr (Wise Kernels)) Source # mkBodyB :: (MonadBinder m, Lore m ~ Wise Kernels) => Stms (Wise Kernels) -> Result -> m (Body (Wise Kernels)) Source # mkLetNamesB :: (MonadBinder m, Lore m ~ Wise Kernels) => [VName] -> Exp (Wise Kernels) -> m (Stm (Wise Kernels)) Source # |