packages feed

clash-ghc 1.2.4 → 1.2.5

raw patch · 4 files changed

+24/−14 lines, 4 filesdep ~bytestringdep ~clash-libdep ~clash-preludePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: bytestring, clash-lib, clash-prelude, time

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,19 @@ # Changelog for the Clash project +## 1.2.5 *November 9th 2020*+Fixed:+  * The normalizeType function now fully normalizes types which require calls to+reduceTypeFamily [#1469](https://github.com/clash-lang/clash-compiler/issues/1469)+  * `flogBaseSNat`, `clogBaseSNat` and `logBaseSNat` primitives are now implemented correctly.Previously these primitives would be left unevaluated causing issues as demonstrated in [#1479](https://github.com/clash-lang/clash-compiler/issues/1469)+  * Specializing on functions with type family arguments no longer fails [#1477](https://github.com/clash-lang/clash-compiler/issues/1477)+  * `satSucc`, `satPred` correctly handle "small types" such as `Index 1`.+  * `msb` no longer fails on values larger than 64 bits+  * `undefined` can now be used as a reset value of `autoReg@Maybe` [#1507](https://github.com/clash-lang/clash-compiler/issues/1507)+  * Signal's `fmap` is now less strict, preventing infinite loops in very specific situations. See [#1521](https://github.com/clash-lang/clash-compiler/issues/1521)+  * Clash now uses correct function names in manifest and sdc files [#1533](https://github.com/clash-lang/clash-compiler/issues/1533)+  * Clash no longer produces erroneous HDL in very specific cases [#1536](https://github.com/clash-lang/clash-compiler/issues/1536)+  * Usage of `fold` inside other HO primitives (e.g., `map`) no longer fails [#1524](https://github.com/clash-lang/clash-compiler/issues/1524)+ ## 1.2.4 *July 28th 2020* * Changed:   * Relaxed upper bound versions of `aeson` and `dlist`, in preparation for the new Stack LTS.@@ -16,7 +30,7 @@   * `instance Text.Printf(Unsigned)`  * Fixed:-  * Clash renders incorrect VHDL when GHCs Worker/Wrapper transformation is enabled [#1402](https://github.com/clash-lang/clash-compiler/issues/14020)+  * Clash renders incorrect VHDL when GHCs Worker/Wrapper transformation is enabled [#1402](https://github.com/clash-lang/clash-compiler/issues/1402)   * Minor faults in generated HDL when using annotations from `Clash.Annotations.SynthesisAttributes`   * Cabal installed through Snap (`clash.cabal`) can now access the internet to fetch pacakges. [#1411]https://github.com/clash-lang/clash-compiler/issues/1411   * Generated QSys file for `altpll` incompatible with Quartus CLI (did work in Quartus GUI)@@ -387,5 +401,3 @@  * https://github.com/clash-lang/clash-compiler/blob/3649a2962415ea8ca2d6f7f5e673b4c14de26b4f/clash-prelude/CHANGELOG.md  * https://github.com/clash-lang/clash-compiler/blob/3649a2962415ea8ca2d6f7f5e673b4c14de26b4f/clash-lib/CHANGELOG.md  * https://github.com/clash-lang/clash-compiler/blob/3649a2962415ea8ca2d6f7f5e673b4c14de26b4f/clash-ghc/CHANGELOG.md--
clash-ghc.cabal view
@@ -1,6 +1,6 @@ Cabal-version:        2.2 Name:                 clash-ghc-Version:              1.2.4+Version:              1.2.5 Synopsis:             CAES Language for Synchronous Hardware Description:   Clash is a functional hardware description language that borrows both its@@ -135,7 +135,7 @@   Build-Depends:      array                     >= 0.4      && < 0.6,                       base                      >= 4.11     && < 5,                       bifunctors                >= 4.1.1    && < 6.0,-                      bytestring                >= 0.9      && < 0.11,+                      bytestring                >= 0.9      && < 0.12,                       Cabal,                       containers                >= 0.5.4.0  && < 0.7,                       directory                 >= 1.2      && < 1.4,@@ -151,14 +151,14 @@                       transformers              >= 0.5.2.0  && < 0.6,                       unordered-containers      >= 0.2.1.0  && < 0.3, -                      clash-lib                 == 1.2.4,-                      clash-prelude             == 1.2.4,+                      clash-lib                 == 1.2.5,+                      clash-prelude             == 1.2.5,                       concurrent-supply         >= 0.1.7    && < 0.2,                       ghc-typelits-extra        >= 0.3.3    && < 0.5,                       ghc-typelits-knownnat     >= 0.7.2    && < 0.8,                       ghc-typelits-natnormalise >= 0.7.2    && < 0.8,                       deepseq                   >= 1.3.0.2  && < 1.5,-                      time                      >= 1.4.0.1  && < 1.11,+                      time                      >= 1.4.0.1  && < 1.12,                       ghc-boot                  >= 8.4.0    && < 8.11,                       ghc-prim                  >= 0.3.1.0  && < 0.7,                       ghci                      >= 8.4.0    && < 8.11,
src-ghc/Clash/GHC/Evaluator.hs view
@@ -1431,7 +1431,7 @@                                 , Left (Literal (NaturalLiteral c))]    "Clash.Promoted.Nat.flogBaseSNat"-    | [_,_,Right a, Right b] <- map (runExcept . tyNatSize tcm) tys+    | [Right a, Right b] <- map (runExcept . tyNatSize tcm) tys     , Just c <- flogBase a b     , let c' = toInteger c     -> let (_,tyView -> TyConApp snatTcNm _) = splitFunForallTy ty@@ -1442,7 +1442,7 @@                                 , Left (Literal (NaturalLiteral c'))]    "Clash.Promoted.Nat.clogBaseSNat"-    | [_,_,Right a, Right b] <- map (runExcept . tyNatSize tcm) tys+    | [Right a, Right b] <- map (runExcept . tyNatSize tcm) tys     , Just c <- clogBase a b     , let c' = toInteger c     -> let (_,tyView -> TyConApp snatTcNm _) = splitFunForallTy ty@@ -1453,7 +1453,7 @@                                 , Left (Literal (NaturalLiteral c'))]    "Clash.Promoted.Nat.logBaseSNat"-    | [_,Right a, Right b] <- map (runExcept . tyNatSize tcm) tys+    | [Right a, Right b] <- map (runExcept . tyNatSize tcm) tys     , Just c <- flogBase a b     , let c' = toInteger c     -> let (_,tyView -> TyConApp snatTcNm _) = splitFunForallTy ty
src-ghc/Clash/GHC/GHC2Core.hs view
@@ -41,7 +41,7 @@ #if !MIN_VERSION_base(4,11,0) import           Data.Semigroup #endif-import           Data.Text                   (Text, isInfixOf,pack)+import           Data.Text                   (Text, pack) import qualified Data.Text                   as Text import           Data.Text.Encoding          (decodeUtf8) import qualified Data.Traversable            as T@@ -502,8 +502,6 @@               return $ C.Prim (C.PrimInfo xNameS xType C.WorkVariable)             Nothing               | x `elem` unlocs-              -> return (C.Prim (C.PrimInfo xNameS xType C.WorkVariable))-              | pack "$cshow" `isInfixOf` xNameS               -> return (C.Prim (C.PrimInfo xNameS xType C.WorkVariable))               | otherwise               -> C.Var <$> coreToId x