packages feed

clash-lib 0.5.9 → 0.5.10

raw patch · 4 files changed

+28/−7 lines, 4 filesdep ~unbound-genericsPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: unbound-generics

API changes (from Hackage documentation)

- CLaSH.Core.DataCon: [MkData] :: DcName -> ConTag -> Type -> [TyName] -> [TyName] -> [Type] -> DataCon
- CLaSH.Core.DataCon: instance Alpha DataCon
- CLaSH.Core.DataCon: instance Constructor C1_0DataCon
- CLaSH.Core.DataCon: instance Datatype D1DataCon
- CLaSH.Core.DataCon: instance Eq DataCon
- CLaSH.Core.DataCon: instance Generic DataCon
- CLaSH.Core.DataCon: instance NFData DataCon
- CLaSH.Core.DataCon: instance Ord DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_0DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_1DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_2DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_3DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_4DataCon
- CLaSH.Core.DataCon: instance Selector S1_0_5DataCon
- CLaSH.Core.DataCon: instance Show DataCon
- CLaSH.Core.DataCon: instance Subst a DataCon
- CLaSH.Core.Literal: [IntegerLiteral] :: Integer -> Literal
- CLaSH.Core.Literal: [RationalLiteral] :: Rational -> Literal
- CLaSH.Core.Literal: [StringLiteral] :: String -> Literal
- CLaSH.Core.Literal: instance Alpha Literal
- CLaSH.Core.Literal: instance Constructor C1_0Literal
- CLaSH.Core.Literal: instance Constructor C1_1Literal
- CLaSH.Core.Literal: instance Constructor C1_2Literal
- CLaSH.Core.Literal: instance Datatype D1Literal
- CLaSH.Core.Literal: instance Eq Literal
- CLaSH.Core.Literal: instance Generic Literal
- CLaSH.Core.Literal: instance NFData Literal
- CLaSH.Core.Literal: instance Ord Literal
- CLaSH.Core.Literal: instance Show Literal
- CLaSH.Core.Literal: instance Subst a Literal
- CLaSH.Core.Pretty: instance Eq TypePrec
- CLaSH.Core.Pretty: instance Ord TypePrec
- CLaSH.Core.Pretty: instance Pretty (Id, Term)
- CLaSH.Core.Pretty: instance Pretty (Name a)
- CLaSH.Core.Pretty: instance Pretty (Var Term)
- CLaSH.Core.Pretty: instance Pretty (Var Type)
- CLaSH.Core.Pretty: instance Pretty DataCon
- CLaSH.Core.Pretty: instance Pretty LitTy
- CLaSH.Core.Pretty: instance Pretty Literal
- CLaSH.Core.Pretty: instance Pretty Pat
- CLaSH.Core.Pretty: instance Pretty Term
- CLaSH.Core.Pretty: instance Pretty TyCon
- CLaSH.Core.Pretty: instance Pretty Type
- CLaSH.Core.Pretty: instance Pretty a => Pretty [a]
- CLaSH.Core.Term: [App] :: Term -> Term -> Term
- CLaSH.Core.Term: [Case] :: Term -> Type -> [Bind Pat Term] -> Term
- CLaSH.Core.Term: [DataPat] :: (Embed DataCon) -> (Rebind [TyVar] [Id]) -> Pat
- CLaSH.Core.Term: [Data] :: DataCon -> Term
- CLaSH.Core.Term: [DefaultPat] :: Pat
- CLaSH.Core.Term: [Lam] :: (Bind Id Term) -> Term
- CLaSH.Core.Term: [Letrec] :: (Bind (Rec [LetBinding]) Term) -> Term
- CLaSH.Core.Term: [LitPat] :: (Embed Literal) -> Pat
- CLaSH.Core.Term: [Literal] :: Literal -> Term
- CLaSH.Core.Term: [Prim] :: Text -> Type -> Term
- CLaSH.Core.Term: [TyApp] :: Term -> Type -> Term
- CLaSH.Core.Term: [TyLam] :: (Bind TyVar Term) -> Term
- CLaSH.Core.Term: [Var] :: Type -> TmName -> Term
- CLaSH.Core.Term: instance Alpha Pat
- CLaSH.Core.Term: instance Alpha Term
- CLaSH.Core.Term: instance Constructor C1_0Pat
- CLaSH.Core.Term: instance Constructor C1_0Term
- CLaSH.Core.Term: instance Constructor C1_1Pat
- CLaSH.Core.Term: instance Constructor C1_1Term
- CLaSH.Core.Term: instance Constructor C1_2Pat
- CLaSH.Core.Term: instance Constructor C1_2Term
- CLaSH.Core.Term: instance Constructor C1_3Term
- CLaSH.Core.Term: instance Constructor C1_4Term
- CLaSH.Core.Term: instance Constructor C1_5Term
- CLaSH.Core.Term: instance Constructor C1_6Term
- CLaSH.Core.Term: instance Constructor C1_7Term
- CLaSH.Core.Term: instance Constructor C1_8Term
- CLaSH.Core.Term: instance Constructor C1_9Term
- CLaSH.Core.Term: instance Datatype D1Pat
- CLaSH.Core.Term: instance Datatype D1Term
- CLaSH.Core.Term: instance Eq Term
- CLaSH.Core.Term: instance Generic Pat
- CLaSH.Core.Term: instance Generic Term
- CLaSH.Core.Term: instance NFData Pat
- CLaSH.Core.Term: instance NFData Term
- CLaSH.Core.Term: instance Ord Term
- CLaSH.Core.Term: instance Show Pat
- CLaSH.Core.Term: instance Show Term
- CLaSH.Core.Term: instance Subst Term Pat
- CLaSH.Core.Term: instance Subst Term Term
- CLaSH.Core.Term: instance Subst Type Pat
- CLaSH.Core.Term: instance Subst Type Term
- CLaSH.Core.TyCon: [AlgTyCon] :: TyConName -> Kind -> Int -> AlgTyConRhs -> TyCon
- CLaSH.Core.TyCon: [DataTyCon] :: [DataCon] -> AlgTyConRhs
- CLaSH.Core.TyCon: [FunTyCon] :: TyConName -> Kind -> Int -> [([Type], Type)] -> TyCon
- CLaSH.Core.TyCon: [NewTyCon] :: DataCon -> ([TyName], Type) -> AlgTyConRhs
- CLaSH.Core.TyCon: [PrimTyCon] :: TyConName -> Kind -> Int -> TyCon
- CLaSH.Core.TyCon: [SuperKindTyCon] :: TyConName -> TyCon
- CLaSH.Core.TyCon: instance Alpha AlgTyConRhs
- CLaSH.Core.TyCon: instance Alpha TyCon
- CLaSH.Core.TyCon: instance Constructor C1_0AlgTyConRhs
- CLaSH.Core.TyCon: instance Constructor C1_0TyCon
- CLaSH.Core.TyCon: instance Constructor C1_1AlgTyConRhs
- CLaSH.Core.TyCon: instance Constructor C1_1TyCon
- CLaSH.Core.TyCon: instance Constructor C1_2TyCon
- CLaSH.Core.TyCon: instance Constructor C1_3TyCon
- CLaSH.Core.TyCon: instance Datatype D1AlgTyConRhs
- CLaSH.Core.TyCon: instance Datatype D1TyCon
- CLaSH.Core.TyCon: instance Eq TyCon
- CLaSH.Core.TyCon: instance Generic AlgTyConRhs
- CLaSH.Core.TyCon: instance Generic TyCon
- CLaSH.Core.TyCon: instance NFData AlgTyConRhs
- CLaSH.Core.TyCon: instance NFData TyCon
- CLaSH.Core.TyCon: instance Ord TyCon
- CLaSH.Core.TyCon: instance Selector S1_0_0AlgTyConRhs
- CLaSH.Core.TyCon: instance Selector S1_0_0TyCon
- CLaSH.Core.TyCon: instance Selector S1_0_1TyCon
- CLaSH.Core.TyCon: instance Selector S1_0_2TyCon
- CLaSH.Core.TyCon: instance Selector S1_0_3TyCon
- CLaSH.Core.TyCon: instance Selector S1_1_0AlgTyConRhs
- CLaSH.Core.TyCon: instance Selector S1_1_0TyCon
- CLaSH.Core.TyCon: instance Selector S1_1_1AlgTyConRhs
- CLaSH.Core.TyCon: instance Selector S1_1_1TyCon
- CLaSH.Core.TyCon: instance Selector S1_1_2TyCon
- CLaSH.Core.TyCon: instance Selector S1_1_3TyCon
- CLaSH.Core.TyCon: instance Selector S1_2_0TyCon
- CLaSH.Core.TyCon: instance Selector S1_2_1TyCon
- CLaSH.Core.TyCon: instance Selector S1_2_2TyCon
- CLaSH.Core.TyCon: instance Selector S1_3_0TyCon
- CLaSH.Core.TyCon: instance Show AlgTyConRhs
- CLaSH.Core.TyCon: instance Show TyCon
- CLaSH.Core.Type: [AppTy] :: Type -> Type -> Type
- CLaSH.Core.Type: [Arrow] :: ConstTy
- CLaSH.Core.Type: [ConstTy] :: ConstTy -> Type
- CLaSH.Core.Type: [ForAllTy] :: (Bind TyVar Type) -> Type
- CLaSH.Core.Type: [FunTy] :: Type -> Type -> TypeView
- CLaSH.Core.Type: [LitTy] :: LitTy -> Type
- CLaSH.Core.Type: [NumTy] :: Int -> LitTy
- CLaSH.Core.Type: [OtherType] :: Type -> TypeView
- CLaSH.Core.Type: [SymTy] :: String -> LitTy
- CLaSH.Core.Type: [TyConApp] :: TyConName -> [Type] -> TypeView
- CLaSH.Core.Type: [TyCon] :: TyConName -> ConstTy
- CLaSH.Core.Type: [VarTy] :: Kind -> TyName -> Type
- CLaSH.Core.Type: instance Alpha ConstTy
- CLaSH.Core.Type: instance Alpha LitTy
- CLaSH.Core.Type: instance Alpha Type
- CLaSH.Core.Type: instance Constructor C1_0ConstTy
- CLaSH.Core.Type: instance Constructor C1_0LitTy
- CLaSH.Core.Type: instance Constructor C1_0Type
- CLaSH.Core.Type: instance Constructor C1_1ConstTy
- CLaSH.Core.Type: instance Constructor C1_1LitTy
- CLaSH.Core.Type: instance Constructor C1_1Type
- CLaSH.Core.Type: instance Constructor C1_2Type
- CLaSH.Core.Type: instance Constructor C1_3Type
- CLaSH.Core.Type: instance Constructor C1_4Type
- CLaSH.Core.Type: instance Datatype D1ConstTy
- CLaSH.Core.Type: instance Datatype D1LitTy
- CLaSH.Core.Type: instance Datatype D1Type
- CLaSH.Core.Type: instance Eq Type
- CLaSH.Core.Type: instance Generic ConstTy
- CLaSH.Core.Type: instance Generic LitTy
- CLaSH.Core.Type: instance Generic Type
- CLaSH.Core.Type: instance NFData ConstTy
- CLaSH.Core.Type: instance NFData LitTy
- CLaSH.Core.Type: instance NFData Type
- CLaSH.Core.Type: instance Ord Type
- CLaSH.Core.Type: instance Show ConstTy
- CLaSH.Core.Type: instance Show LitTy
- CLaSH.Core.Type: instance Show Type
- CLaSH.Core.Type: instance Show TypeView
- CLaSH.Core.Type: instance Subst Term Type
- CLaSH.Core.Type: instance Subst Type Type
- CLaSH.Core.Type: instance Subst a ConstTy
- CLaSH.Core.Type: instance Subst a LitTy
- CLaSH.Core.Var: [Id] :: Name a -> Embed Type -> Var a
- CLaSH.Core.Var: [TyVar] :: Name a -> Embed Kind -> Var a
- CLaSH.Core.Var: instance (Typeable a, Alpha a) => Alpha (Var a)
- CLaSH.Core.Var: instance Constructor C1_0Var
- CLaSH.Core.Var: instance Constructor C1_1Var
- CLaSH.Core.Var: instance Datatype D1Var
- CLaSH.Core.Var: instance Eq (Var a)
- CLaSH.Core.Var: instance Generic (Var a)
- CLaSH.Core.Var: instance Generic b => Subst Term (Var b)
- CLaSH.Core.Var: instance Generic b => Subst Type (Var b)
- CLaSH.Core.Var: instance NFData (Var a)
- CLaSH.Core.Var: instance Selector S1_0_0Var
- CLaSH.Core.Var: instance Selector S1_0_1Var
- CLaSH.Core.Var: instance Selector S1_1_0Var
- CLaSH.Core.Var: instance Selector S1_1_1Var
- CLaSH.Core.Var: instance Show (Var a)
- CLaSH.Driver.Types: [CLaSHOpts] :: Int -> Int -> Int -> DebugLevel -> CLaSHOpts
- CLaSH.Netlist.BlackBox.Types: [C] :: Text -> Element
- CLaSH.Netlist.BlackBox.Types: [Clk] :: (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: [CompName] :: Element
- CLaSH.Netlist.BlackBox.Types: [D] :: Decl -> Element
- CLaSH.Netlist.BlackBox.Types: [Decl] :: Int -> [(BlackBoxTemplate, BlackBoxTemplate)] -> Decl
- CLaSH.Netlist.BlackBox.Types: [Err] :: (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: [FilePath] :: Element -> Element
- CLaSH.Netlist.BlackBox.Types: [Gen] :: Bool -> Element
- CLaSH.Netlist.BlackBox.Types: [I] :: Int -> Element
- CLaSH.Netlist.BlackBox.Types: [L] :: Int -> Element
- CLaSH.Netlist.BlackBox.Types: [Length] :: Element -> Element
- CLaSH.Netlist.BlackBox.Types: [O] :: Element
- CLaSH.Netlist.BlackBox.Types: [Rst] :: (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: [SigD] :: [Element] -> (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: [Size] :: Element -> Element
- CLaSH.Netlist.BlackBox.Types: [Sym] :: Int -> Element
- CLaSH.Netlist.BlackBox.Types: [TypElem] :: Element -> Element
- CLaSH.Netlist.BlackBox.Types: [TypM] :: (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: [Typ] :: (Maybe Int) -> Element
- CLaSH.Netlist.BlackBox.Types: instance Show Decl
- CLaSH.Netlist.BlackBox.Types: instance Show Element
- CLaSH.Netlist.Types: [Assignment] :: Identifier -> Expr -> Declaration
- CLaSH.Netlist.Types: [BitLit] :: Bit -> Literal
- CLaSH.Netlist.Types: [BitVector] :: Size -> HWType
- CLaSH.Netlist.Types: [BlackBoxD] :: Text -> BlackBoxTemplate -> BlackBoxContext -> Declaration
- CLaSH.Netlist.Types: [BlackBoxE] :: Text -> BlackBoxTemplate -> BlackBoxContext -> Bool -> Expr
- CLaSH.Netlist.Types: [BoolLit] :: Bool -> Literal
- CLaSH.Netlist.Types: [Bool] :: HWType
- CLaSH.Netlist.Types: [Clock] :: Identifier -> Int -> HWType
- CLaSH.Netlist.Types: [Component] :: Identifier -> [(Identifier, HWType)] -> [(Identifier, HWType)] -> [(Identifier, HWType)] -> [Declaration] -> Component
- CLaSH.Netlist.Types: [CondAssignment] :: Identifier -> HWType -> Expr -> [(Maybe Expr, Expr)] -> Declaration
- CLaSH.Netlist.Types: [Context] :: (SyncExpr, HWType) -> [(SyncExpr, HWType, Bool)] -> IntMap (Either BlackBoxTemplate Declaration, BlackBoxContext) -> BlackBoxContext
- CLaSH.Netlist.Types: [DC] :: (HWType, Int) -> Modifier
- CLaSH.Netlist.Types: [DataCon] :: HWType -> Modifier -> [Expr] -> Expr
- CLaSH.Netlist.Types: [DataTag] :: HWType -> (Either Identifier Identifier) -> Expr
- CLaSH.Netlist.Types: [H] :: Bit
- CLaSH.Netlist.Types: [Identifier] :: Identifier -> (Maybe Modifier) -> Expr
- CLaSH.Netlist.Types: [Index] :: Size -> HWType
- CLaSH.Netlist.Types: [Indexed] :: (HWType, Int, Int) -> Modifier
- CLaSH.Netlist.Types: [InstDecl] :: Identifier -> Identifier -> [(Identifier, Expr)] -> Declaration
- CLaSH.Netlist.Types: [Integer] :: HWType
- CLaSH.Netlist.Types: [L] :: Bit
- CLaSH.Netlist.Types: [Literal] :: (Maybe (HWType, Size)) -> Literal -> Expr
- CLaSH.Netlist.Types: [NetDecl] :: Identifier -> HWType -> Declaration
- CLaSH.Netlist.Types: [NetlistMonad] :: WriterT (Set (Identifier, HWType)) (StateT NetlistState (FreshMT IO)) a -> NetlistMonad a
- CLaSH.Netlist.Types: [NetlistState] :: HashMap TmName (Type, Term) -> Gamma -> Int -> Int -> HashMap TmName Component -> PrimMap -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> HashMap TyConName TyCon -> String -> Identifier -> [(String, FilePath)] -> NetlistState
- CLaSH.Netlist.Types: [NumLit] :: Integer -> Literal
- CLaSH.Netlist.Types: [Product] :: Identifier -> [HWType] -> HWType
- CLaSH.Netlist.Types: [Reset] :: Identifier -> Int -> HWType
- CLaSH.Netlist.Types: [SP] :: Identifier -> [(Identifier, [HWType])] -> HWType
- CLaSH.Netlist.Types: [Signed] :: Size -> HWType
- CLaSH.Netlist.Types: [StringLit] :: String -> Literal
- CLaSH.Netlist.Types: [Sum] :: Identifier -> [Identifier] -> HWType
- CLaSH.Netlist.Types: [U] :: Bit
- CLaSH.Netlist.Types: [Unsigned] :: Size -> HWType
- CLaSH.Netlist.Types: [VecAppend] :: Modifier
- CLaSH.Netlist.Types: [VecLit] :: [Literal] -> Literal
- CLaSH.Netlist.Types: [Vector] :: Size -> HWType -> HWType
- CLaSH.Netlist.Types: [Void] :: HWType
- CLaSH.Netlist.Types: [Z] :: Bit
- CLaSH.Netlist.Types: instance Applicative NetlistMonad
- CLaSH.Netlist.Types: instance Constructor C1_0HWType
- CLaSH.Netlist.Types: instance Constructor C1_10HWType
- CLaSH.Netlist.Types: instance Constructor C1_11HWType
- CLaSH.Netlist.Types: instance Constructor C1_12HWType
- CLaSH.Netlist.Types: instance Constructor C1_1HWType
- CLaSH.Netlist.Types: instance Constructor C1_2HWType
- CLaSH.Netlist.Types: instance Constructor C1_3HWType
- CLaSH.Netlist.Types: instance Constructor C1_4HWType
- CLaSH.Netlist.Types: instance Constructor C1_5HWType
- CLaSH.Netlist.Types: instance Constructor C1_6HWType
- CLaSH.Netlist.Types: instance Constructor C1_7HWType
- CLaSH.Netlist.Types: instance Constructor C1_8HWType
- CLaSH.Netlist.Types: instance Constructor C1_9HWType
- CLaSH.Netlist.Types: instance Datatype D1HWType
- CLaSH.Netlist.Types: instance Eq HWType
- CLaSH.Netlist.Types: instance Fresh NetlistMonad
- CLaSH.Netlist.Types: instance Functor NetlistMonad
- CLaSH.Netlist.Types: instance Generic HWType
- CLaSH.Netlist.Types: instance Hashable HWType
- CLaSH.Netlist.Types: instance Monad NetlistMonad
- CLaSH.Netlist.Types: instance MonadIO NetlistMonad
- CLaSH.Netlist.Types: instance MonadState NetlistState NetlistMonad
- CLaSH.Netlist.Types: instance MonadWriter (Set (Identifier, HWType)) NetlistMonad
- CLaSH.Netlist.Types: instance NFData Component
- CLaSH.Netlist.Types: instance NFData Declaration
- CLaSH.Netlist.Types: instance NFData HWType
- CLaSH.Netlist.Types: instance Ord HWType
- CLaSH.Netlist.Types: instance Show Bit
- CLaSH.Netlist.Types: instance Show BlackBoxContext
- CLaSH.Netlist.Types: instance Show Component
- CLaSH.Netlist.Types: instance Show Declaration
- CLaSH.Netlist.Types: instance Show Expr
- CLaSH.Netlist.Types: instance Show HWType
- CLaSH.Netlist.Types: instance Show Literal
- CLaSH.Netlist.Types: instance Show Modifier
- CLaSH.Normalize: [CBranch] :: (TmName, (Type, Term)) -> [CallTree] -> CallTree
- CLaSH.Normalize: [CLeaf] :: (TmName, (Type, Term)) -> CallTree
- CLaSH.Normalize.Types: [NormalizeState] :: HashMap TmName (Type, Term) -> Map (TmName, Int, Either Term Type) (TmName, Type) -> HashMap TmName Int -> Int -> HashMap TmName (HashMap TmName Int) -> Int -> Int -> TmName -> NormalizeState
- CLaSH.Primitives.Types: [BlackBox] :: Text -> Either Text Text -> Primitive
- CLaSH.Primitives.Types: [Primitive] :: Text -> Text -> Primitive
- CLaSH.Primitives.Types: instance FromJSON Primitive
- CLaSH.Primitives.Types: instance Show Primitive
- CLaSH.Rewrite.Types: [AppArg] :: CoreContext
- CLaSH.Rewrite.Types: [AppFun] :: CoreContext
- CLaSH.Rewrite.Types: [CaseAlt] :: [Id] -> CoreContext
- CLaSH.Rewrite.Types: [CaseScrut] :: CoreContext
- CLaSH.Rewrite.Types: [DebugAll] :: DebugLevel
- CLaSH.Rewrite.Types: [DebugApplied] :: DebugLevel
- CLaSH.Rewrite.Types: [DebugFinal] :: DebugLevel
- CLaSH.Rewrite.Types: [DebugName] :: DebugLevel
- CLaSH.Rewrite.Types: [DebugNone] :: DebugLevel
- CLaSH.Rewrite.Types: [LamBody] :: Id -> CoreContext
- CLaSH.Rewrite.Types: [LetBinding] :: [Id] -> CoreContext
- CLaSH.Rewrite.Types: [LetBody] :: [Id] -> CoreContext
- CLaSH.Rewrite.Types: [RE] :: DebugLevel -> RewriteEnv
- CLaSH.Rewrite.Types: [R] :: RewriteMonad m a -> R m a
- CLaSH.Rewrite.Types: [RewriteState] :: Int -> HashMap TmName (Type, Term) -> Supply -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> HashMap TyConName TyCon -> (HashMap TyConName TyCon -> Term -> Term) -> RewriteState
- CLaSH.Rewrite.Types: [TyAppC] :: CoreContext
- CLaSH.Rewrite.Types: [TyLamBody] :: TyVar -> CoreContext
- CLaSH.Rewrite.Types: instance Eq CoreContext
- CLaSH.Rewrite.Types: instance Eq DebugLevel
- CLaSH.Rewrite.Types: instance Functor m => Functor (R m)
- CLaSH.Rewrite.Types: instance Monad m => Applicative (R m)
- CLaSH.Rewrite.Types: instance Monad m => Fresh (R m)
- CLaSH.Rewrite.Types: instance Monad m => Monad (R m)
- CLaSH.Rewrite.Types: instance Monad m => MonadReader RewriteEnv (R m)
- CLaSH.Rewrite.Types: instance Monad m => MonadState RewriteState (R m)
- CLaSH.Rewrite.Types: instance Monad m => MonadUnique (R m)
- CLaSH.Rewrite.Types: instance Monad m => MonadUnique (RewriteMonad m)
- CLaSH.Rewrite.Types: instance Monad m => MonadWriter Any (R m)
- CLaSH.Rewrite.Types: instance Ord DebugLevel
- CLaSH.Rewrite.Types: instance Read DebugLevel
- CLaSH.Rewrite.Types: instance Show CoreContext
- CLaSH.Util: instance Monad m => MonadUnique (StateT Int m)
+ CLaSH.Core.DataCon: MkData :: DcName -> ConTag -> Type -> [TyName] -> [TyName] -> [Type] -> DataCon
+ CLaSH.Core.DataCon: instance Control.DeepSeq.NFData CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance GHC.Classes.Eq CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance GHC.Classes.Ord CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Constructor CLaSH.Core.DataCon.C1_0DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Datatype CLaSH.Core.DataCon.D1DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Generic CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_0DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_1DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_2DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_3DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_4DataCon
+ CLaSH.Core.DataCon: instance GHC.Generics.Selector CLaSH.Core.DataCon.S1_0_5DataCon
+ CLaSH.Core.DataCon: instance GHC.Show.Show CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.DataCon: instance Unbound.Generics.LocallyNameless.Subst.Subst a CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.Literal: IntegerLiteral :: Integer -> Literal
+ CLaSH.Core.Literal: RationalLiteral :: Rational -> Literal
+ CLaSH.Core.Literal: StringLiteral :: String -> Literal
+ CLaSH.Core.Literal: instance Control.DeepSeq.NFData CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance GHC.Classes.Eq CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance GHC.Classes.Ord CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance GHC.Generics.Constructor CLaSH.Core.Literal.C1_0Literal
+ CLaSH.Core.Literal: instance GHC.Generics.Constructor CLaSH.Core.Literal.C1_1Literal
+ CLaSH.Core.Literal: instance GHC.Generics.Constructor CLaSH.Core.Literal.C1_2Literal
+ CLaSH.Core.Literal: instance GHC.Generics.Datatype CLaSH.Core.Literal.D1Literal
+ CLaSH.Core.Literal: instance GHC.Generics.Generic CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance GHC.Show.Show CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Literal.Literal
+ CLaSH.Core.Literal: instance Unbound.Generics.LocallyNameless.Subst.Subst a CLaSH.Core.Literal.Literal
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty (CLaSH.Core.Var.Id, CLaSH.Core.Term.Term)
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty (CLaSH.Core.Var.Var CLaSH.Core.Term.Term)
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty (CLaSH.Core.Var.Var CLaSH.Core.Type.Type)
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty (Unbound.Generics.LocallyNameless.Name.Name a)
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.DataCon.DataCon
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.Literal.Literal
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.Term.Pat
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.Term.Term
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.Type.LitTy
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty CLaSH.Core.Type.Type
+ CLaSH.Core.Pretty: instance CLaSH.Core.Pretty.Pretty a => CLaSH.Core.Pretty.Pretty [a]
+ CLaSH.Core.Pretty: instance GHC.Classes.Eq CLaSH.Core.Pretty.TypePrec
+ CLaSH.Core.Pretty: instance GHC.Classes.Ord CLaSH.Core.Pretty.TypePrec
+ CLaSH.Core.Term: App :: Term -> Term -> Term
+ CLaSH.Core.Term: Case :: Term -> Type -> [Bind Pat Term] -> Term
+ CLaSH.Core.Term: Data :: DataCon -> Term
+ CLaSH.Core.Term: DataPat :: (Embed DataCon) -> (Rebind [TyVar] [Id]) -> Pat
+ CLaSH.Core.Term: DefaultPat :: Pat
+ CLaSH.Core.Term: Lam :: (Bind Id Term) -> Term
+ CLaSH.Core.Term: Letrec :: (Bind (Rec [LetBinding]) Term) -> Term
+ CLaSH.Core.Term: LitPat :: (Embed Literal) -> Pat
+ CLaSH.Core.Term: Literal :: Literal -> Term
+ CLaSH.Core.Term: Prim :: Text -> Type -> Term
+ CLaSH.Core.Term: TyApp :: Term -> Type -> Term
+ CLaSH.Core.Term: TyLam :: (Bind TyVar Term) -> Term
+ CLaSH.Core.Term: Var :: Type -> TmName -> Term
+ CLaSH.Core.Term: instance Control.DeepSeq.NFData CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance Control.DeepSeq.NFData CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance GHC.Classes.Eq CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance GHC.Classes.Ord CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_0Pat
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_0Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_1Pat
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_1Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_2Pat
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_2Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_3Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_4Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_5Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_6Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_7Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_8Term
+ CLaSH.Core.Term: instance GHC.Generics.Constructor CLaSH.Core.Term.C1_9Term
+ CLaSH.Core.Term: instance GHC.Generics.Datatype CLaSH.Core.Term.D1Pat
+ CLaSH.Core.Term: instance GHC.Generics.Datatype CLaSH.Core.Term.D1Term
+ CLaSH.Core.Term: instance GHC.Generics.Generic CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance GHC.Generics.Generic CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance GHC.Show.Show CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance GHC.Show.Show CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Term.Term CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Term.Term CLaSH.Core.Term.Term
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Type.Type CLaSH.Core.Term.Pat
+ CLaSH.Core.Term: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Type.Type CLaSH.Core.Term.Term
+ CLaSH.Core.TyCon: AlgTyCon :: TyConName -> Kind -> Int -> AlgTyConRhs -> TyCon
+ CLaSH.Core.TyCon: DataTyCon :: [DataCon] -> AlgTyConRhs
+ CLaSH.Core.TyCon: FunTyCon :: TyConName -> Kind -> Int -> [([Type], Type)] -> TyCon
+ CLaSH.Core.TyCon: NewTyCon :: DataCon -> ([TyName], Type) -> AlgTyConRhs
+ CLaSH.Core.TyCon: PrimTyCon :: TyConName -> Kind -> Int -> TyCon
+ CLaSH.Core.TyCon: SuperKindTyCon :: TyConName -> TyCon
+ CLaSH.Core.TyCon: instance Control.DeepSeq.NFData CLaSH.Core.TyCon.AlgTyConRhs
+ CLaSH.Core.TyCon: instance Control.DeepSeq.NFData CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.TyCon: instance GHC.Classes.Eq CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.TyCon: instance GHC.Classes.Ord CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_0AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_0TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_1AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_1TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_2TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Constructor CLaSH.Core.TyCon.C1_3TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Datatype CLaSH.Core.TyCon.D1AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Datatype CLaSH.Core.TyCon.D1TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Generic CLaSH.Core.TyCon.AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Generic CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_0_0AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_0_0TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_0_1TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_0_2TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_0_3TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_0AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_0TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_1AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_1TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_2TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_1_3TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_2_0TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_2_1TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_2_2TyCon
+ CLaSH.Core.TyCon: instance GHC.Generics.Selector CLaSH.Core.TyCon.S1_3_0TyCon
+ CLaSH.Core.TyCon: instance GHC.Show.Show CLaSH.Core.TyCon.AlgTyConRhs
+ CLaSH.Core.TyCon: instance GHC.Show.Show CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.TyCon: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.TyCon.AlgTyConRhs
+ CLaSH.Core.TyCon: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.TyCon.TyCon
+ CLaSH.Core.Type: AppTy :: Type -> Type -> Type
+ CLaSH.Core.Type: Arrow :: ConstTy
+ CLaSH.Core.Type: ConstTy :: ConstTy -> Type
+ CLaSH.Core.Type: ForAllTy :: (Bind TyVar Type) -> Type
+ CLaSH.Core.Type: FunTy :: Type -> Type -> TypeView
+ CLaSH.Core.Type: LitTy :: LitTy -> Type
+ CLaSH.Core.Type: NumTy :: Int -> LitTy
+ CLaSH.Core.Type: OtherType :: Type -> TypeView
+ CLaSH.Core.Type: SymTy :: String -> LitTy
+ CLaSH.Core.Type: TyCon :: TyConName -> ConstTy
+ CLaSH.Core.Type: TyConApp :: TyConName -> [Type] -> TypeView
+ CLaSH.Core.Type: VarTy :: Kind -> TyName -> Type
+ CLaSH.Core.Type: instance Control.DeepSeq.NFData CLaSH.Core.Type.ConstTy
+ CLaSH.Core.Type: instance Control.DeepSeq.NFData CLaSH.Core.Type.LitTy
+ CLaSH.Core.Type: instance Control.DeepSeq.NFData CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance GHC.Classes.Eq CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance GHC.Classes.Ord CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_0ConstTy
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_0LitTy
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_0Type
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_1ConstTy
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_1LitTy
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_1Type
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_2Type
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_3Type
+ CLaSH.Core.Type: instance GHC.Generics.Constructor CLaSH.Core.Type.C1_4Type
+ CLaSH.Core.Type: instance GHC.Generics.Datatype CLaSH.Core.Type.D1ConstTy
+ CLaSH.Core.Type: instance GHC.Generics.Datatype CLaSH.Core.Type.D1LitTy
+ CLaSH.Core.Type: instance GHC.Generics.Datatype CLaSH.Core.Type.D1Type
+ CLaSH.Core.Type: instance GHC.Generics.Generic CLaSH.Core.Type.ConstTy
+ CLaSH.Core.Type: instance GHC.Generics.Generic CLaSH.Core.Type.LitTy
+ CLaSH.Core.Type: instance GHC.Generics.Generic CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance GHC.Show.Show CLaSH.Core.Type.ConstTy
+ CLaSH.Core.Type: instance GHC.Show.Show CLaSH.Core.Type.LitTy
+ CLaSH.Core.Type: instance GHC.Show.Show CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance GHC.Show.Show CLaSH.Core.Type.TypeView
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Type.ConstTy
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Type.LitTy
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Alpha.Alpha CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Term.Term CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Type.Type CLaSH.Core.Type.Type
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Subst.Subst a CLaSH.Core.Type.ConstTy
+ CLaSH.Core.Type: instance Unbound.Generics.LocallyNameless.Subst.Subst a CLaSH.Core.Type.LitTy
+ CLaSH.Core.Var: Id :: Name a -> Embed Type -> Var a
+ CLaSH.Core.Var: TyVar :: Name a -> Embed Kind -> Var a
+ CLaSH.Core.Var: instance (Data.Typeable.Internal.Typeable a, Unbound.Generics.LocallyNameless.Alpha.Alpha a) => Unbound.Generics.LocallyNameless.Alpha.Alpha (CLaSH.Core.Var.Var a)
+ CLaSH.Core.Var: instance Control.DeepSeq.NFData (CLaSH.Core.Var.Var a)
+ CLaSH.Core.Var: instance GHC.Classes.Eq (CLaSH.Core.Var.Var a)
+ CLaSH.Core.Var: instance GHC.Generics.Constructor CLaSH.Core.Var.C1_0Var
+ CLaSH.Core.Var: instance GHC.Generics.Constructor CLaSH.Core.Var.C1_1Var
+ CLaSH.Core.Var: instance GHC.Generics.Datatype CLaSH.Core.Var.D1Var
+ CLaSH.Core.Var: instance GHC.Generics.Generic (CLaSH.Core.Var.Var a)
+ CLaSH.Core.Var: instance GHC.Generics.Generic b => Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Term.Term (CLaSH.Core.Var.Var b)
+ CLaSH.Core.Var: instance GHC.Generics.Generic b => Unbound.Generics.LocallyNameless.Subst.Subst CLaSH.Core.Type.Type (CLaSH.Core.Var.Var b)
+ CLaSH.Core.Var: instance GHC.Generics.Selector CLaSH.Core.Var.S1_0_0Var
+ CLaSH.Core.Var: instance GHC.Generics.Selector CLaSH.Core.Var.S1_0_1Var
+ CLaSH.Core.Var: instance GHC.Generics.Selector CLaSH.Core.Var.S1_1_0Var
+ CLaSH.Core.Var: instance GHC.Generics.Selector CLaSH.Core.Var.S1_1_1Var
+ CLaSH.Core.Var: instance GHC.Show.Show (CLaSH.Core.Var.Var a)
+ CLaSH.Driver.Types: CLaSHOpts :: Int -> Int -> Int -> DebugLevel -> CLaSHOpts
+ CLaSH.Netlist.BlackBox.Types: C :: Text -> Element
+ CLaSH.Netlist.BlackBox.Types: Clk :: (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: CompName :: Element
+ CLaSH.Netlist.BlackBox.Types: D :: Decl -> Element
+ CLaSH.Netlist.BlackBox.Types: Decl :: Int -> [(BlackBoxTemplate, BlackBoxTemplate)] -> Decl
+ CLaSH.Netlist.BlackBox.Types: Err :: (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: FilePath :: Element -> Element
+ CLaSH.Netlist.BlackBox.Types: Gen :: Bool -> Element
+ CLaSH.Netlist.BlackBox.Types: I :: Int -> Element
+ CLaSH.Netlist.BlackBox.Types: L :: Int -> Element
+ CLaSH.Netlist.BlackBox.Types: Length :: Element -> Element
+ CLaSH.Netlist.BlackBox.Types: O :: Element
+ CLaSH.Netlist.BlackBox.Types: Rst :: (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: SigD :: [Element] -> (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: Size :: Element -> Element
+ CLaSH.Netlist.BlackBox.Types: Sym :: Int -> Element
+ CLaSH.Netlist.BlackBox.Types: Typ :: (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: TypElem :: Element -> Element
+ CLaSH.Netlist.BlackBox.Types: TypM :: (Maybe Int) -> Element
+ CLaSH.Netlist.BlackBox.Types: instance GHC.Show.Show CLaSH.Netlist.BlackBox.Types.Decl
+ CLaSH.Netlist.BlackBox.Types: instance GHC.Show.Show CLaSH.Netlist.BlackBox.Types.Element
+ CLaSH.Netlist.Types: Assignment :: Identifier -> Expr -> Declaration
+ CLaSH.Netlist.Types: BitLit :: Bit -> Literal
+ CLaSH.Netlist.Types: BitVector :: Size -> HWType
+ CLaSH.Netlist.Types: BlackBoxD :: Text -> BlackBoxTemplate -> BlackBoxContext -> Declaration
+ CLaSH.Netlist.Types: BlackBoxE :: Text -> BlackBoxTemplate -> BlackBoxContext -> Bool -> Expr
+ CLaSH.Netlist.Types: Bool :: HWType
+ CLaSH.Netlist.Types: BoolLit :: Bool -> Literal
+ CLaSH.Netlist.Types: Clock :: Identifier -> Int -> HWType
+ CLaSH.Netlist.Types: Component :: Identifier -> [(Identifier, HWType)] -> [(Identifier, HWType)] -> [(Identifier, HWType)] -> [Declaration] -> Component
+ CLaSH.Netlist.Types: CondAssignment :: Identifier -> HWType -> Expr -> [(Maybe Expr, Expr)] -> Declaration
+ CLaSH.Netlist.Types: Context :: (SyncExpr, HWType) -> [(SyncExpr, HWType, Bool)] -> IntMap (Either BlackBoxTemplate Declaration, BlackBoxContext) -> BlackBoxContext
+ CLaSH.Netlist.Types: DC :: (HWType, Int) -> Modifier
+ CLaSH.Netlist.Types: DataCon :: HWType -> Modifier -> [Expr] -> Expr
+ CLaSH.Netlist.Types: DataTag :: HWType -> (Either Identifier Identifier) -> Expr
+ CLaSH.Netlist.Types: H :: Bit
+ CLaSH.Netlist.Types: Identifier :: Identifier -> (Maybe Modifier) -> Expr
+ CLaSH.Netlist.Types: Index :: Size -> HWType
+ CLaSH.Netlist.Types: Indexed :: (HWType, Int, Int) -> Modifier
+ CLaSH.Netlist.Types: InstDecl :: Identifier -> Identifier -> [(Identifier, Expr)] -> Declaration
+ CLaSH.Netlist.Types: Integer :: HWType
+ CLaSH.Netlist.Types: L :: Bit
+ CLaSH.Netlist.Types: Literal :: (Maybe (HWType, Size)) -> Literal -> Expr
+ CLaSH.Netlist.Types: NetDecl :: Identifier -> HWType -> Declaration
+ CLaSH.Netlist.Types: NetlistMonad :: WriterT (Set (Identifier, HWType)) (StateT NetlistState (FreshMT IO)) a -> NetlistMonad a
+ CLaSH.Netlist.Types: NetlistState :: HashMap TmName (Type, Term) -> Gamma -> Int -> Int -> HashMap TmName Component -> PrimMap -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> HashMap TyConName TyCon -> String -> Identifier -> [(String, FilePath)] -> NetlistState
+ CLaSH.Netlist.Types: NumLit :: Integer -> Literal
+ CLaSH.Netlist.Types: Product :: Identifier -> [HWType] -> HWType
+ CLaSH.Netlist.Types: Reset :: Identifier -> Int -> HWType
+ CLaSH.Netlist.Types: SP :: Identifier -> [(Identifier, [HWType])] -> HWType
+ CLaSH.Netlist.Types: Signed :: Size -> HWType
+ CLaSH.Netlist.Types: StringLit :: String -> Literal
+ CLaSH.Netlist.Types: Sum :: Identifier -> [Identifier] -> HWType
+ CLaSH.Netlist.Types: U :: Bit
+ CLaSH.Netlist.Types: Unsigned :: Size -> HWType
+ CLaSH.Netlist.Types: VecAppend :: Modifier
+ CLaSH.Netlist.Types: VecLit :: [Literal] -> Literal
+ CLaSH.Netlist.Types: Vector :: Size -> HWType -> HWType
+ CLaSH.Netlist.Types: Void :: HWType
+ CLaSH.Netlist.Types: Z :: Bit
+ CLaSH.Netlist.Types: instance Control.DeepSeq.NFData CLaSH.Netlist.Types.Component
+ CLaSH.Netlist.Types: instance Control.DeepSeq.NFData CLaSH.Netlist.Types.Declaration
+ CLaSH.Netlist.Types: instance Control.DeepSeq.NFData CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance Control.Monad.IO.Class.MonadIO CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance Control.Monad.State.Class.MonadState CLaSH.Netlist.Types.NetlistState CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance Control.Monad.Writer.Class.MonadWriter (Data.Set.Base.Set (CLaSH.Netlist.Types.Identifier, CLaSH.Netlist.Types.HWType)) CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance Data.Hashable.Class.Hashable CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance GHC.Base.Applicative CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance GHC.Base.Functor CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance GHC.Base.Monad CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Netlist.Types: instance GHC.Classes.Eq CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance GHC.Classes.Ord CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_0HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_10HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_11HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_12HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_1HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_2HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_3HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_4HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_5HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_6HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_7HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_8HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Constructor CLaSH.Netlist.Types.C1_9HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Datatype CLaSH.Netlist.Types.D1HWType
+ CLaSH.Netlist.Types: instance GHC.Generics.Generic CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Bit
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.BlackBoxContext
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Component
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Declaration
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Expr
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.HWType
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Literal
+ CLaSH.Netlist.Types: instance GHC.Show.Show CLaSH.Netlist.Types.Modifier
+ CLaSH.Netlist.Types: instance Unbound.Generics.LocallyNameless.Fresh.Fresh CLaSH.Netlist.Types.NetlistMonad
+ CLaSH.Normalize: CBranch :: (TmName, (Type, Term)) -> [CallTree] -> CallTree
+ CLaSH.Normalize: CLeaf :: (TmName, (Type, Term)) -> CallTree
+ CLaSH.Normalize.Types: NormalizeState :: HashMap TmName (Type, Term) -> Map (TmName, Int, Either Term Type) (TmName, Type) -> HashMap TmName Int -> Int -> HashMap TmName (HashMap TmName Int) -> Int -> Int -> TmName -> NormalizeState
+ CLaSH.Primitives.Types: BlackBox :: Text -> Either Text Text -> Primitive
+ CLaSH.Primitives.Types: Primitive :: Text -> Text -> Primitive
+ CLaSH.Primitives.Types: instance Data.Aeson.Types.Class.FromJSON CLaSH.Primitives.Types.Primitive
+ CLaSH.Primitives.Types: instance GHC.Show.Show CLaSH.Primitives.Types.Primitive
+ CLaSH.Rewrite.Types: AppArg :: CoreContext
+ CLaSH.Rewrite.Types: AppFun :: CoreContext
+ CLaSH.Rewrite.Types: CaseAlt :: [Id] -> CoreContext
+ CLaSH.Rewrite.Types: CaseScrut :: CoreContext
+ CLaSH.Rewrite.Types: DebugAll :: DebugLevel
+ CLaSH.Rewrite.Types: DebugApplied :: DebugLevel
+ CLaSH.Rewrite.Types: DebugFinal :: DebugLevel
+ CLaSH.Rewrite.Types: DebugName :: DebugLevel
+ CLaSH.Rewrite.Types: DebugNone :: DebugLevel
+ CLaSH.Rewrite.Types: LamBody :: Id -> CoreContext
+ CLaSH.Rewrite.Types: LetBinding :: [Id] -> CoreContext
+ CLaSH.Rewrite.Types: LetBody :: [Id] -> CoreContext
+ CLaSH.Rewrite.Types: R :: RewriteMonad m a -> R m a
+ CLaSH.Rewrite.Types: RE :: DebugLevel -> RewriteEnv
+ CLaSH.Rewrite.Types: RewriteState :: Int -> HashMap TmName (Type, Term) -> Supply -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> HashMap TyConName TyCon -> (HashMap TyConName TyCon -> Term -> Term) -> RewriteState
+ CLaSH.Rewrite.Types: TyAppC :: CoreContext
+ CLaSH.Rewrite.Types: TyLamBody :: TyVar -> CoreContext
+ CLaSH.Rewrite.Types: instance GHC.Base.Functor m => GHC.Base.Functor (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => CLaSH.Util.MonadUnique (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => CLaSH.Util.MonadUnique (CLaSH.Rewrite.Types.RewriteMonad m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => Control.Monad.Reader.Class.MonadReader CLaSH.Rewrite.Types.RewriteEnv (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => Control.Monad.State.Class.MonadState CLaSH.Rewrite.Types.RewriteState (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => Control.Monad.Writer.Class.MonadWriter Data.Monoid.Any (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => GHC.Base.Applicative (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => GHC.Base.Monad (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Base.Monad m => Unbound.Generics.LocallyNameless.Fresh.Fresh (CLaSH.Rewrite.Types.R m)
+ CLaSH.Rewrite.Types: instance GHC.Classes.Eq CLaSH.Rewrite.Types.CoreContext
+ CLaSH.Rewrite.Types: instance GHC.Classes.Eq CLaSH.Rewrite.Types.DebugLevel
+ CLaSH.Rewrite.Types: instance GHC.Classes.Ord CLaSH.Rewrite.Types.DebugLevel
+ CLaSH.Rewrite.Types: instance GHC.Read.Read CLaSH.Rewrite.Types.DebugLevel
+ CLaSH.Rewrite.Types: instance GHC.Show.Show CLaSH.Rewrite.Types.CoreContext
+ CLaSH.Util: instance GHC.Base.Monad m => CLaSH.Util.MonadUnique (Control.Monad.Trans.State.Lazy.StateT GHC.Types.Int m)

Files

CHANGELOG.md view
@@ -1,5 +1,10 @@ # Changelog for the [`clash-lib`](http://hackage.haskell.org/package/clash-lib) package +## 0.5.10 *August 2nd 2015*+* Fixes bugs:+  * Make testbench generation deterministic+  * Compile against unbound-generics-0.2+ ## 0.5.9 *July 9th 2015* * Fixes bugs:   * `coreView` didn't look through newtypes of the form: `newtype Foo a = MkFoo (Maybe a)`
clash-lib.cabal view
@@ -1,5 +1,5 @@ Name:                 clash-lib-Version:              0.5.9+Version:              0.5.10 Synopsis:             CAES Language for Synchronous Hardware - As a Library Description:   CλaSH (pronounced ‘clash’) is a functional hardware description language that@@ -74,7 +74,7 @@                       text                    >= 0.11.3.1,                       time                    >= 1.4.0.1,                       transformers            >= 0.3.0.0,-                      unbound-generics        >= 0.1,+                      unbound-generics        >= 0.1 && < 0.3,                       unordered-containers    >= 0.2.3.3,                       uu-parsinglib           >= 2.8.1,                       wl-pprint-text          >= 1.1.0.0
src/CLaSH/Driver/TestbenchGen.hs view
@@ -13,7 +13,7 @@ import qualified Data.HashMap.Lazy                as HashMap import           Data.List                        (find,nub) import           Data.Maybe                       (catMaybes,mapMaybe)-import           Data.Text.Lazy                   (append,isPrefixOf,pack,splitOn)+import           Data.Text.Lazy                   (append,pack,splitOn) import           Unbound.Generics.LocallyNameless (name2String)  import           CLaSH.Core.Term@@ -190,8 +190,8 @@ genStimuli cmpCnt primMap globals typeTrans tcm normalizeSignal hidden inp modName dfiles signalNm = do   let stimNormal = normalizeSignal globals signalNm   (comps,dfiles',cmpCnt') <- genNetlist (Just cmpCnt) stimNormal primMap tcm typeTrans Nothing modName dfiles signalNm-  let sigNm   = pack (modName ++ "_") `append` last (splitOn (pack ".") (pack (name2String signalNm))) `append` pack "_"-      sigComp = case find ((isPrefixOf sigNm) . componentName) comps of+  let sigNm   = pack (modName ++ "_") `append` last (splitOn (pack ".") (pack (name2String signalNm))) `append` pack "_" `append` (pack (show cmpCnt))+      sigComp = case find ((== sigNm) . componentName) comps of                   Just c -> c                   Nothing -> error $ $(curLoc) ++ "Can't locate component for stimuli gen: " ++ (show $ pack $ name2String signalNm) ++ show (map (componentName) comps) @@ -225,8 +225,8 @@ genVerifier cmpCnt primMap globals typeTrans tcm normalizeSignal hidden outp modName dfiles signalNm = do   let stimNormal = normalizeSignal globals signalNm   (comps,dfiles',cmpCnt') <- genNetlist (Just cmpCnt) stimNormal primMap tcm typeTrans Nothing modName dfiles signalNm-  let sigNm   = pack (modName ++ "_") `append` last (splitOn (pack ".") (pack (name2String signalNm))) `append` "_"-      sigComp = case find ((isPrefixOf sigNm) . componentName) comps of+  let sigNm   = pack (modName ++ "_") `append` last (splitOn (pack ".") (pack (name2String signalNm))) `append` "_" `append` (pack (show cmpCnt))+      sigComp = case find ((== sigNm) . componentName) comps of                   Just c -> c                   Nothing -> error $ $(curLoc) ++ "Can't locate component for Verifier: " ++ (show $ pack $ name2String signalNm) ++ show (map (componentName) comps)       (cName,hidden',inp,fin) = case sigComp of
src/Unbound/Generics/LocallyNameless/Extra.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP                   #-} {-# LANGUAGE FlexibleInstances     #-} {-# LANGUAGE MultiParamTypeClasses #-} @@ -5,24 +6,36 @@  module Unbound.Generics.LocallyNameless.Extra where +#if MIN_VERSION_unbound_generics(0,2,0)+#else import Control.DeepSeq+#endif import Data.Hashable                           (Hashable(..),hash) import Data.Text                               (Text) import GHC.Real                                (Ratio) import Unbound.Generics.LocallyNameless.Alpha  (Alpha (..))+#if MIN_VERSION_unbound_generics(0,2,0)+#else import Unbound.Generics.LocallyNameless.Bind   (Bind (..)) import Unbound.Generics.LocallyNameless.Embed  (Embed (..))+#endif import Unbound.Generics.LocallyNameless.Name   (Name (..))+#if MIN_VERSION_unbound_generics(0,2,0)+#else import Unbound.Generics.LocallyNameless.Rebind (Rebind (..)) import Unbound.Generics.LocallyNameless.Rec    (Rec,unrec)+#endif import Unbound.Generics.LocallyNameless.Subst  (Subst (..)) +#if MIN_VERSION_unbound_generics(0,2,0)+#else instance (NFData a, NFData b) => NFData (Bind a b) instance NFData a => NFData (Embed a) instance NFData (Name a) instance (NFData a, NFData b) => NFData (Rebind a b) instance (Alpha a, NFData a) => NFData (Rec a) where   rnf r = seq (rnf (unrec r)) ()+#endif  instance Subst b (Ratio a) where   subst  _ _ = id@@ -32,8 +45,11 @@   hashWithSalt salt (Fn str int) = hashWithSalt salt (hashWithSalt (hash int) str)   hashWithSalt salt (Bn i0  i1)  = hashWithSalt salt (hash i0 `hashWithSalt` i1) +#if MIN_VERSION_unbound_generics(0,2,0)+#else instance (Ord a) => Ord (Embed a) where   compare (Embed a) (Embed b) = compare a b+#endif  instance Alpha Text where   aeq' _ctx             = (==)