packages feed

clash-ghc 1.0.0 → 1.0.1

raw patch · 9 files changed

+121/−10 lines, 9 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,19 @@ # Changelog for the [`clash-ghc`](http://hackage.haskell.org/package/clash-ghc) package +## 1.0.1+* Fixes issues:+  * [#810](https://github.com/clash-lang/clash-compiler/issues/810): Verilog backend now correctly specifies type of `BitVector 1`+  * [#811](https://github.com/clash-lang/clash-compiler/issues/811): Improve module load behavior in clashi+  * [#439](https://github.com/clash-lang/clash-compiler/issues/439): Template Haskell splices and TopEntity annotations can now be used in clashi+  * [#818](https://github.com/clash-lang/clash-compiler/issues/818): Fixed various mistakes in tutorial+  * [#662](https://github.com/clash-lang/clash-compiler/issues/662): Clash will now constant specialize partially constant constructs+  * [#700](https://github.com/clash-lang/clash-compiler/issues/700): Check work content of expression in cast before warning users. Should eliminate a lot of (superfluous) warnings about "specializing on non work-free cast"s.+  * [#837](https://github.com/clash-lang/clash-compiler/issues/837): Blackboxes will now report clearer error messages if they're given unexpected arguments.++* Small fixes without issue reports:+  * Fix bug in `rnfX` defined for `Down` ([814fd52](https://github.com/clash-lang/clash-compiler/commit/814fd520191123be38af8ef28fc49130424f3b93))+  * Report blackbox name when encountering an error in 'setSym' ([#858](https://github.com/clash-lang/clash-compiler/pull/858))+ ## 1.0.0 *September 3rd 2019* * 10x - 50x faster compile times * New features:
clash-ghc.cabal view
@@ -1,5 +1,5 @@ Name:                 clash-ghc-Version:              1.0.0+Version:              1.0.1 Synopsis:             CAES Language for Synchronous Hardware Description:   Clash is a functional hardware description language that borrows both its
src-bin-821/Clash/GHCi/UI.hs view
@@ -171,7 +171,7 @@     }  ghciWelcomeMsg :: String-ghciWelcomeMsg = "CLaSHi, version " ++ Data.Version.showVersion Paths_clash_ghc.version +++ghciWelcomeMsg = "Clashi, version " ++ Data.Version.showVersion Paths_clash_ghc.version ++                  " (using clash-lib, version " ++ Data.Version.showVersion clashLibVersion ++                  "):\nhttp://www.clash-lang.org/  :? for help" @@ -1871,7 +1871,7 @@          -> IORef ClashOpts          -> [FilePath]          -> InputT GHCi ()-makeHDL' backend opts lst = makeHDL backend opts =<< case lst of+makeHDL' backend opts lst = go =<< case lst of   srcs@(_:_) -> return srcs   []         -> do     modGraph <- GHC.getModuleGraph@@ -1879,6 +1879,25 @@     return $ case (reverse sortedGraph) of       ((AcyclicSCC top) : _) -> maybeToList $ (GHC.ml_hs_file . GHC.ms_location) top       _                      -> []+ where+  go srcs = do+    dflags <- GHC.getSessionDynFlags+    goX dflags srcs `gfinally` recover dflags++  goX dflags srcs = do+    (dflagsX,_,_) <- parseDynamicFlagsCmdLine dflags+                       [ noLoc "-fobject-code"   -- For #439+                       , noLoc "-fforce-recomp"  -- Actually compile to object-code+                       , noLoc "-keep-tmp-files" -- To prevent linker errors from+                                                 -- multiple calls to :hdl command+                       ]+    _ <- GHC.setSessionDynFlags dflagsX+    reloadModule ""+    makeHDL backend opts srcs++  recover dflags = do+    _ <- GHC.setSessionDynFlags dflags+    reloadModule ""  makeHDL :: GHC.GhcMonad m         => Clash.Backend.Backend backend
src-bin-821/Clash/Main.hs view
@@ -817,7 +817,7 @@ showSupportedExtensions = mapM_ putStrLn supportedLanguagesAndExtensions  showVersion :: IO ()-showVersion = putStrLn $ concat [ "CLaSH, version "+showVersion = putStrLn $ concat [ "Clash, version "                                 , Data.Version.showVersion Paths_clash_ghc.version                                 , " (using clash-lib, version: "                                 , Data.Version.showVersion clashLibVersion
src-bin-841/Clash/GHCi/UI.hs view
@@ -173,7 +173,7 @@     }  ghciWelcomeMsg :: String-ghciWelcomeMsg = "CLaSHi, version " ++ Data.Version.showVersion Paths_clash_ghc.version +++ghciWelcomeMsg = "Clashi, version " ++ Data.Version.showVersion Paths_clash_ghc.version ++                  " (using clash-lib, version " ++ Data.Version.showVersion clashLibVersion ++                  "):\nhttp://www.clash-lang.org/  :? for help" @@ -1917,7 +1917,7 @@   -> IORef ClashOpts   -> [FilePath]   -> InputT GHCi ()-makeHDL' backend opts lst = makeHDL backend opts =<< case lst of+makeHDL' backend opts lst = go =<< case lst of   srcs@(_:_) -> return srcs   []         -> do     modGraph <- GHC.getModuleGraph@@ -1925,6 +1925,32 @@     return $ case (reverse sortedGraph) of       ((AcyclicSCC top) : _) -> maybeToList $ (GHC.ml_hs_file . GHC.ms_location) top       _                      -> []+ where+  go srcs = do+    dflags <- GHC.getSessionDynFlags+    goX dflags srcs `gfinally` recover dflags++  goX dflags srcs = do+    -- Issue #439 step 1+    (dflagsX,_,_) <- parseDynamicFlagsCmdLine dflags+                       [ noLoc "-fobject-code"   -- For #439+                       , noLoc "-fforce-recomp"  -- Actually compile to object-code+                       , noLoc "-keep-tmp-files" -- To prevent linker errors from+                                                 -- multiple calls to :hdl command+                       ]+    _ <- GHC.setSessionDynFlags dflagsX+    reloadModule ""+    -- Issue #439 step 2+    -- Unload any object files+    -- This fixes: https://github.com/clash-lang/clash-compiler/issues/439#issuecomment-522015868+    env <- GHC.getSession+    liftIO (unload env [])+    -- Finally generate the HDL+    makeHDL backend opts srcs++  recover dflags = do+    _ <- GHC.setSessionDynFlags dflags+    reloadModule ""  makeHDL   :: GHC.GhcMonad m
src-bin-841/Clash/Main.hs view
@@ -831,7 +831,7 @@ showSupportedExtensions = mapM_ putStrLn supportedLanguagesAndExtensions  showVersion :: IO ()-showVersion = putStrLn $ concat [ "CLaSH, version "+showVersion = putStrLn $ concat [ "Clash, version "                                 , Data.Version.showVersion Paths_clash_ghc.version                                 , " (using clash-lib, version: "                                 , Data.Version.showVersion clashLibVersion
src-bin-861/Clash/GHCi/UI.hs view
@@ -1967,7 +1967,7 @@          -> IORef ClashOpts          -> [FilePath]          -> InputT GHCi ()-makeHDL' backend opts lst = makeHDL backend opts =<< case lst of+makeHDL' backend opts lst = go =<< case lst of   srcs@(_:_) -> return srcs   []         -> do     modGraph <- GHC.getModuleGraph@@ -1975,6 +1975,32 @@     return $ case (reverse sortedGraph) of       ((AcyclicSCC top) : _) -> maybeToList $ (GHC.ml_hs_file . GHC.ms_location) top       _                      -> []+ where+  go srcs = do+    dflags <- GHC.getSessionDynFlags+    goX dflags srcs `gfinally` recover dflags++  goX dflags srcs = do+    -- Issue #439 step 1+    (dflagsX,_,_) <- parseDynamicFlagsCmdLine dflags+                       [ noLoc "-fobject-code"   -- For #439+                       , noLoc "-fforce-recomp"  -- Actually compile to object-code+                       , noLoc "-keep-tmp-files" -- To prevent linker errors from+                                                 -- multiple calls to :hdl command+                       ]+    _ <- GHC.setSessionDynFlags dflagsX+    reloadModule ""+    -- Issue #439 step 2+    -- Unload any object files+    -- This fixes: https://github.com/clash-lang/clash-compiler/issues/439#issuecomment-522015868+    env <- GHC.getSession+    liftIO (unload env [])+    -- Finally generate the HDL+    makeHDL backend opts srcs++  recover dflags = do+    _ <- GHC.setSessionDynFlags dflags+    reloadModule ""  makeHDL :: GHC.GhcMonad m         => Clash.Backend.Backend backend
src-bin-881/Clash/GHCi/UI.hs view
@@ -2059,7 +2059,7 @@          -> IORef ClashOpts          -> [FilePath]          -> InputT GHCi ()-makeHDL' backend opts lst = makeHDL backend opts =<< case lst of+makeHDL' backend opts lst = go =<< case lst of   srcs@(_:_) -> return srcs   []         -> do     modGraph <- GHC.getModuleGraph@@ -2067,6 +2067,32 @@     return $ case (reverse sortedGraph) of       ((AcyclicSCC top) : _) -> maybeToList $ (GHC.ml_hs_file . GHC.ms_location) top       _                      -> []+ where+  go srcs = do+    dflags <- GHC.getSessionDynFlags+    goX dflags srcs `gfinally` recover dflags++  goX dflags srcs = do+    -- Issue #439 step 1+    (dflagsX,_,_) <- parseDynamicFlagsCmdLine dflags+                       [ noLoc "-fobject-code"   -- For #439+                       , noLoc "-fforce-recomp"  -- Actually compile to object-code+                       , noLoc "-keep-tmp-files" -- To prevent linker errors from+                                                 -- multiple calls to :hdl command+                       ]+    _ <- GHC.setSessionDynFlags dflagsX+    reloadModule ""+    -- Issue #439 step 2+    -- Unload any object files+    -- This fixes: https://github.com/clash-lang/clash-compiler/issues/439#issuecomment-522015868+    env <- GHC.getSession+    liftIO (unload env [])+    -- Finally generate the HDL+    makeHDL backend opts srcs++  recover dflags = do+    _ <- GHC.setSessionDynFlags dflags+    reloadModule ""  makeHDL :: GHC.GhcMonad m         => Clash.Backend.Backend backend
src-ghc/Interactive.hs view
@@ -13,4 +13,4 @@ import           Clash.Main         ( defaultMain )  main :: IO ()-main = getArgs >>= defaultMain . (["--interactive","-fobject-code"]++)+main = getArgs >>= defaultMain . ("--interactive":)