Safe Haskell | None |
---|---|
Language | Haskell2010 |
Module that connects all the parts of the CLaSH compiler library
- generateHDL :: forall backend. Backend backend => BindingMap -> Maybe backend -> PrimMap -> HashMap TyConName TyCon -> IntMap TyConName -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> (HashMap TyConName TyCon -> Bool -> Term -> Term) -> (TmName, Maybe TopEntity) -> Maybe TmName -> Maybe TmName -> CLaSHOpts -> IO ()
- createHDL :: Backend backend => backend -> String -> [Component] -> [(String, Doc)]
- prepareDir :: Bool -> String -> String -> IO ()
- writeHDL :: Backend backend => backend -> FilePath -> (String, Doc) -> IO ()
- copyDataFiles :: FilePath -> [(String, FilePath)] -> IO ()
Documentation
:: Backend backend | |
=> BindingMap | Set of functions |
-> Maybe backend | |
-> PrimMap | Primitive / BlackBox Definitions |
-> HashMap TyConName TyCon | TyCon cache |
-> IntMap TyConName | Tuple TyCon cache |
-> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) | |
-> (HashMap TyConName TyCon -> Bool -> Term -> Term) | Hardcoded evaluator (delta-reduction) |
-> (TmName, Maybe TopEntity) | topEntity bndr + (maybe) TopEntity annotation |
-> Maybe TmName | testInput bndr |
-> Maybe TmName | expectedOutput bndr |
-> CLaSHOpts | Debug information level for the normalization process |
-> IO () |
Create a set of target HDL files for a set of functions
Pretty print Components to HDL Documents
Prepares the directory for writing HDL files. This means creating the dir if it does not exist and removing all existing .hdl files from it.