clash-verilog 0.5.8 → 0.5.9
raw patch · 3 files changed
+22/−3 lines, 3 filesdep ~clash-libPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: clash-lib
API changes (from Hackage documentation)
Files
- CHANGELOG.md +3/−0
- clash-verilog.cabal +2/−2
- src/CLaSH/Backend/Verilog.hs +17/−1
CHANGELOG.md view
@@ -1,5 +1,8 @@ # Changelog for the [`clash-systemverilog`](http://hackage.haskell.org/package/clash-systemverilog) package +## 0.5.9 *September 14th 2015*+* Support for clash-lib-0.5.12+ ## 0.5.8 *September 7th 2015* * Fixes bugs: * Fix primitive for CLaSH.Sized.Internal.Signed.size# [#72](https://github.com/clash-lang/clash-compiler/pull/72)
clash-verilog.cabal view
@@ -1,5 +1,5 @@ Name: clash-verilog-Version: 0.5.8+Version: 0.5.9 Synopsis: CAES Language for Synchronous Hardware - Verilog backend Description: CλaSH (pronounced ‘clash’) is a functional hardware description language that@@ -93,7 +93,7 @@ ViewPatterns Build-depends: base >= 4.6.0.1 && < 5,- clash-lib >= 0.5.8,+ clash-lib >= 0.5.12, clash-prelude >= 0.9, fgl >= 5.4.2.4, lens >= 3.9.2,
src/CLaSH/Backend/Verilog.hs view
@@ -206,7 +206,23 @@ start = typeSize ty - 1 - otherSz end = start - argSize + 1 -expr_ _ (Identifier id_ (Just (Indexed (ty@(Vector _ argTy),_,fI)))) =+expr_ _ (Identifier id_ (Just (Indexed (ty@(Vector _ argTy),1,1)))) =+ text id_ <> brackets (int start <> colon <> int end)+ where+ argSize = typeSize argTy+ start = typeSize ty - 1+ end = start - argSize + 1++expr_ _ (Identifier id_ (Just (Indexed (ty@(Vector _ argTy),1,2)))) =+ text id_ <> brackets (int start <> colon <> int 0)+ where+ argSize = typeSize argTy+ start = typeSize ty - argSize - 1++-- This is a HACK for CLaSH.Driver.TopWrapper.mkOutput+-- Vector's don't have a 10'th constructor, this is just so that we can+-- recognize the particular case+expr_ _ (Identifier id_ (Just (Indexed (ty@(Vector _ argTy),10,fI)))) = text id_ <> brackets (int start <> colon <> int end) where argSize = typeSize argTy