clash-ghc 0.3.0.1 → 0.3.0.2
raw patch · 6 files changed
+71/−17 lines, 6 filesdep ~clash-libdep ~clash-prelude
Dependency ranges changed: clash-lib, clash-prelude
Files
- LICENSE_GHC +31/−0
- README.md +7/−1
- clash-ghc.cabal +7/−5
- primitives/clash.ghc.ghc2core.json +6/−0
- src-bin/InteractiveUI.hs +10/−8
- src-bin/Main.hs +10/−3
+ LICENSE_GHC view
@@ -0,0 +1,31 @@+The Glasgow Haskell Compiler License++Copyright 2002, The University Court of the University of Glasgow. +All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++- Redistributions of source code must retain the above copyright notice,+this list of conditions and the following disclaimer.+ +- Redistributions in binary form must reproduce the above copyright notice,+this list of conditions and the following disclaimer in the documentation+and/or other materials provided with the distribution.+ +- Neither name of the University nor the names of its contributors may be+used to endorse or promote products derived from this software without+specific prior written permission. ++THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY COURT OF THE UNIVERSITY OF+GLASGOW AND THE CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND+FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE+UNIVERSITY COURT OF THE UNIVERSITY OF GLASGOW OR THE CONTRIBUTORS BE LIABLE+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH+DAMAGE.
README.md view
@@ -1,1 +1,7 @@-http://christiaanb.github.io/clash2/+# `clash-lib`+ * See the LICENSE file for license and copyright details++# `clash-ghc`+ * See the LICENSE file for license and copyright details+ * Contains code from the [GHC compiler](http://haskell.org/ghc), see the+ LICENSE_GHC file for license and copyright details pertaining to that code.
clash-ghc.cabal view
@@ -1,5 +1,5 @@ Name: clash-ghc-Version: 0.3.0.1+Version: 0.3.0.2 Synopsis: CAES Language for Synchronous Hardware Description: CλaSH (pronounced ‘clash’) is a functional hardware description language that@@ -26,10 +26,12 @@ Build-type: Simple Extra-source-files: README.md,- src-bin/HsVersions.h+ LICENSE_GHC,+ src-bin/HsVersions.h, src-bin/PosixSource.h Data-files: primitives/clash.bit.json,+ primitives/clash.ghc.ghc2core.json, primitives/clash.prelude.json, primitives/clash.prelude.explicit.json primitives/clash.promoted.nat.json,@@ -54,7 +56,7 @@ source-repository head type: git- location: git@github.com:christiaanb/clash2.git+ location: https://github.com/christiaanb/clash2.git Flag standalone Description: Build compiler for non-cabal installation@@ -79,8 +81,8 @@ base >= 4.3.1.0 && < 5, bifunctors >= 4.1.1, bytestring >= 0.9,- clash-lib >= 0.2.1,- clash-prelude >= 0.2,+ clash-lib >= 0.3.0.1,+ clash-prelude >= 0.5, containers >= 0.5.4.0, directory >= 1.2, filepath >= 1.3,
+ primitives/clash.ghc.ghc2core.json view
@@ -0,0 +1,6 @@+[ { "BlackBox" :+ { "name" : "EmptyCase"+ , "templateE" : "~DEFAULTO"+ }+ }+]
src-bin/InteractiveUI.hs view
@@ -33,7 +33,7 @@ TyThing(..), Phase, BreakIndex, Resume, SingleStep, Ghc, handleSourceError ) import HsImpExp-import HscTypes ( tyThingParent_maybe, handleFlagWarnings, getSafeMode, hsc_IC, +import HscTypes ( tyThingParent_maybe, handleFlagWarnings, getSafeMode, hsc_IC, setInteractivePrintName ) import Module import Name@@ -49,7 +49,6 @@ -- Other random utilities import BasicTypes hiding ( isTopLevel )-import Config import Digraph import Encoding import FastString@@ -109,6 +108,9 @@ import CLaSH.GHC.NetlistTypes import qualified CLaSH.Primitives.Util import CLaSH.Rewrite.Types (DebugLevel(..))+import CLaSH.Util (clashLibVersion)+import qualified Data.Version as Data.Version+import qualified Paths_clash_ghc #ifdef STANDALONE @@ -122,9 +124,8 @@ #else -import Paths_clash_ghc getDefPrimDir :: IO FilePath-getDefPrimDir = getDataFileName "primitives"+getDefPrimDir = Paths_clash_ghc.getDataFileName "primitives" #endif @@ -149,8 +150,9 @@ } ghciWelcomeMsg :: String-ghciWelcomeMsg = "CLaSHi, version " ++ cProjectVersion ++- ": http://www.haskell.org/ghc/ :? for help"+ghciWelcomeMsg = "CLaSHi, version " ++ Data.Version.showVersion Paths_clash_ghc.version +++ " (using clash-lib, version " ++ Data.Version.showVersion clashLibVersion +++ "):\nhttp://christiaanb.github.io/clash2/ :? for help" cmdName :: Command -> String cmdName (n,_,_) = n@@ -695,7 +697,7 @@ installInteractivePrint (Just ipFun) exprmode = do ok <- trySuccess $ do (name:_) <- GHC.parseName ipFun- modifySession (\he -> let new_ic = setInteractivePrintName (hsc_IC he) name + modifySession (\he -> let new_ic = setInteractivePrintName (hsc_IC he) name in he{hsc_IC = new_ic}) return Succeeded @@ -1848,7 +1850,7 @@ checkAdd :: InteractiveImport -> GHCi () checkAdd ii = do- dflags <- getDynFlags + dflags <- getDynFlags let safe = safeLanguageOn dflags case ii of IIModule modname
src-bin/Main.hs view
@@ -71,6 +71,7 @@ import Paths_clash_ghc #endif import Exception (gcatch)+import qualified Data.Version (showVersion) import Control.Exception (ErrorCall (..)) import qualified CLaSH.Driver import CLaSH.GHC.Evaluator@@ -78,6 +79,7 @@ import CLaSH.GHC.NetlistTypes import qualified CLaSH.Primitives.Util import CLaSH.Rewrite.Types (DebugLevel(..))+import CLaSH.Util (clashLibVersion) #ifdef STANDALONE ghcLibDir :: IO FilePath@@ -153,7 +155,7 @@ do case preStartupMode of ShowSupportedExtensions -> showSupportedExtensions ShowVersion -> showVersion- ShowNumVersion -> putStrLn cProjectVersion+ ShowNumVersion -> putStrLn (Data.Version.showVersion Paths_clash_ghc.version) ShowOptions -> showOptions Right postStartupMode -> -- start our GHC session@@ -758,7 +760,12 @@ showSupportedExtensions = mapM_ putStrLn supportedLanguagesAndExtensions showVersion :: IO ()-showVersion = putStrLn (cProjectName ++ ", version " ++ cProjectVersion)+showVersion = putStrLn $ concat [ "CAES Language for Synchronous Hardware, version "+ , Data.Version.showVersion Paths_clash_ghc.version+ , " (using clash-lib, version: "+ , Data.Version.showVersion clashLibVersion+ , ")"+ ] showOptions :: IO () showOptions = putStr (unlines availableOptions)@@ -892,4 +899,4 @@ "unrecognised flag: " ++ f ++ "\n" ++ (case fuzzyMatch f (nub allFlags) of [] -> ""- suggs -> "did you mean one of:\n" ++ unlines (map (" " ++) suggs)) + suggs -> "did you mean one of:\n" ++ unlines (map (" " ++) suggs))