packages feed

Cabal revisions of llvm-extra-0.7.3

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-Name:           llvm-extra-Version:        0.7.3-License:        BSD3-License-File:   LICENSE-Author:         Henning Thielemann <haskell@henning-thielemann.de>-Maintainer:     Henning Thielemann <haskell@henning-thielemann.de>-Homepage:       https://wiki.haskell.org/LLVM-Category:       Compilers/Interpreters, Code Generation-Synopsis:       Utility functions for the llvm interface-Description:-  The Low-Level Virtual-Machine is a compiler back-end with optimizer.-  You may also call it a high-level portable assembler.-  This package provides various utility functions-  for the Haskell interface to LLVM, for example:-  .-  * arithmetic operations with more general types-    but better type inference than the @llvm@ interface-    in "LLVM.Extra.Arithmetic",-  .-  * a type class for loading and storing sets of values with one command (macro)-    in "LLVM.Extra.Memory",-  .-  * support instance declarations of LLVM classes-    in "LLVM.Extra.Class",-  .-  * handling of termination by a custom monad on top of @CodeGenFunction@-    in "LLVM.Extra.MaybeContinuation"-  .-  * various kinds of loops (while) and condition structures (if-then-else)-    in "LLVM.Extra.Control"-  .-  * more functional loop construction using "LLVM.Extra.Iterator"-  .-  * complex Haskell values mapped to LLVM values in "LLVM.Extra.Multi.Value"-  .-  * automatic adaption to target specific extensions,-    currently used for access of vector operations-    that are specific to an SSE level on x86 processors-    in "LLVM.Extra.Extension"-    (On x86 architectures we depend on the cpuid package-     that is needed for automatic detection of available features.)-  .-  * advanced vector operations-    such as sum of all vector elements, cumulative sum,-    floor, non-negative fraction, absolute value-    in "LLVM.Extra.Vector"-  .-  * type classes for handling scalar and vector operations-    in a uniform way-    in "LLVM.Extra.ScalarOrVector"-  .-  * a Makefile and a description-    of how to run LLVM code from within GHCi.-Stability:      Experimental-Tested-With:    GHC==6.10.4, GHC==6.12.3-Tested-With:    GHC==7.0.4, GHC==7.4.1, GHC==7.6.3-Cabal-Version:  >=1.14-Build-Type:     Simple-Extra-Source-Files:-  Makefile-  Problems.txt-  x86/cpuid/LLVM/Extra/ExtensionCheck/X86.hs-  x86/none/LLVM/Extra/ExtensionCheck/X86.hs--Flag buildExamples-  description: Build example executables-  default:     False--Flag buildTools-  description: Build intrinsic translator-  default:     False--Flag cpuid-  description: Use CPUID for host feature detection if available on the architecture-  default:     True--Source-Repository this-  Tag:         0.7.3-  Type:        darcs-  Location:    http://code.haskell.org/~thielema/llvm-extra/--Source-Repository head-  Type:        darcs-  Location:    http://code.haskell.org/~thielema/llvm-extra/--Library-  Build-Depends:-    -- llvm must be imported with restrictive version bounds,-    -- because we import implicitly and unqualified-    llvm-tf >=3.0.3 && <3.2,-    tfp >=1.0 && <1.1,-    non-empty >=0.2.1 && <0.4,-    containers >=0.1 && <0.6,-    bifunctors >=5.4 && <6,-    transformers >=0.1.1 && <0.6,-    utility-ht >=0.0.1 && <0.1--  Build-Depends:-    base >=3 && <5--  If (arch(i386) || arch(x86_64)) && flag(cpuid)-    Build-Depends:-      unsafe >=0.0 && <0.1,-      cpuid >=0.2.3 && <0.3-    Hs-Source-Dirs: x86/cpuid-  Else-    -- Instead of calling the cpuid instruction directly-    -- we may ask LLVM's Subtarget detection.-    -- This would also enable cross compilation.-    -- However in LLVM-2.6 this is only available in the C++ interface.-    Hs-Source-Dirs: x86/none--  Default-Language: Haskell98-  GHC-Options: -Wall-  Hs-source-dirs: src-  Exposed-Modules:-    LLVM.Extra.Arithmetic-    LLVM.Extra.Monad-    LLVM.Extra.Memory-    LLVM.Extra.Maybe-    LLVM.Extra.MaybeContinuation-    LLVM.Extra.Either-    LLVM.Extra.Class-    LLVM.Extra.Control-    LLVM.Extra.Extension-    LLVM.Extra.Extension.X86-    LLVM.Extra.ExtensionCheck.X86-    LLVM.Extra.Array-    LLVM.Extra.Scalar-    LLVM.Extra.Vector-    LLVM.Extra.ScalarOrVector-    LLVM.Extra.Iterator-    LLVM.Extra.Multi.Iterator-    LLVM.Extra.Multi.Value-    LLVM.Extra.Multi.Value.Memory-    LLVM.Extra.Multi.Vector-    LLVM.Extra.Multi.Vector.Memory-    LLVM.Extra.Multi.Class-  Other-Modules:-    LLVM.Extra.ArithmeticPrivate-    LLVM.Extra.MaybePrivate-    LLVM.Extra.EitherPrivate-    LLVM.Extra.MemoryPrivate-    LLVM.Extra.Extension.X86Auto--Executable tone-llvm-  If flag(buildExamples)-    Build-Depends:-      llvm-extra,-      llvm-tf,-      tfp,-      non-empty,-      containers >=0.1 && <0.6,-      transformers,-      utility-ht >=0.0.1 && <0.1,-      base >=3 && <5-  Else-    Buildable: False-  Default-Language: Haskell98-  GHC-Options: -Wall-  Main-Is: src/Array.hs--Executable prepare-intrinsics-  If flag(buildTools)-    Build-Depends:-      parsec >=2.1 && <3.2,-      containers >=0.1 && <0.6,-      transformers,-      utility-ht >=0.0.1 && <0.1,-      base >=3 && <5-  Else-    Buildable: False-  Default-Language: Haskell98-  GHC-Options: -Wall-  Main-Is: src/PrepareIntrinsics.hs+Name:           llvm-extra
+Version:        0.7.3
+x-revision: 1
+License:        BSD3
+License-File:   LICENSE
+Author:         Henning Thielemann <haskell@henning-thielemann.de>
+Maintainer:     Henning Thielemann <haskell@henning-thielemann.de>
+Homepage:       https://wiki.haskell.org/LLVM
+Category:       Compilers/Interpreters, Code Generation
+Synopsis:       Utility functions for the llvm interface
+Description:
+  The Low-Level Virtual-Machine is a compiler back-end with optimizer.
+  You may also call it a high-level portable assembler.
+  This package provides various utility functions
+  for the Haskell interface to LLVM, for example:
+  .
+  * arithmetic operations with more general types
+    but better type inference than the @llvm@ interface
+    in "LLVM.Extra.Arithmetic",
+  .
+  * a type class for loading and storing sets of values with one command (macro)
+    in "LLVM.Extra.Memory",
+  .
+  * support instance declarations of LLVM classes
+    in "LLVM.Extra.Class",
+  .
+  * handling of termination by a custom monad on top of @CodeGenFunction@
+    in "LLVM.Extra.MaybeContinuation"
+  .
+  * various kinds of loops (while) and condition structures (if-then-else)
+    in "LLVM.Extra.Control"
+  .
+  * more functional loop construction using "LLVM.Extra.Iterator"
+  .
+  * complex Haskell values mapped to LLVM values in "LLVM.Extra.Multi.Value"
+  .
+  * automatic adaption to target specific extensions,
+    currently used for access of vector operations
+    that are specific to an SSE level on x86 processors
+    in "LLVM.Extra.Extension"
+    (On x86 architectures we depend on the cpuid package
+     that is needed for automatic detection of available features.)
+  .
+  * advanced vector operations
+    such as sum of all vector elements, cumulative sum,
+    floor, non-negative fraction, absolute value
+    in "LLVM.Extra.Vector"
+  .
+  * type classes for handling scalar and vector operations
+    in a uniform way
+    in "LLVM.Extra.ScalarOrVector"
+  .
+  * a Makefile and a description
+    of how to run LLVM code from within GHCi.
+Stability:      Experimental
+Tested-With:    GHC==6.10.4, GHC==6.12.3
+Tested-With:    GHC==7.0.4, GHC==7.4.1, GHC==7.6.3
+Cabal-Version:  >=1.14
+Build-Type:     Simple
+Extra-Source-Files:
+  Makefile
+  Problems.txt
+  x86/cpuid/LLVM/Extra/ExtensionCheck/X86.hs
+  x86/none/LLVM/Extra/ExtensionCheck/X86.hs
+
+Flag buildExamples
+  description: Build example executables
+  default:     False
+
+Flag buildTools
+  description: Build intrinsic translator
+  default:     False
+
+Flag cpuid
+  description: Use CPUID for host feature detection if available on the architecture
+  default:     True
+
+Source-Repository this
+  Tag:         0.7.3
+  Type:        darcs
+  Location:    http://code.haskell.org/~thielema/llvm-extra/
+
+Source-Repository head
+  Type:        darcs
+  Location:    http://code.haskell.org/~thielema/llvm-extra/
+
+Library
+  Build-Depends:
+    -- llvm must be imported with restrictive version bounds,
+    -- because we import implicitly and unqualified
+    llvm-tf >=3.0.3 && <3.2,
+    tfp >=1.0 && <1.1,
+    non-empty >=0.2.1 && <0.4,
+    containers >=0.1 && <0.7,
+    bifunctors >=5.4 && <6,
+    transformers >=0.1.1 && <0.6,
+    utility-ht >=0.0.1 && <0.1
+
+  Build-Depends:
+    base >=3 && <5
+
+  If (arch(i386) || arch(x86_64)) && flag(cpuid)
+    Build-Depends:
+      unsafe >=0.0 && <0.1,
+      cpuid >=0.2.3 && <0.3
+    Hs-Source-Dirs: x86/cpuid
+  Else
+    -- Instead of calling the cpuid instruction directly
+    -- we may ask LLVM's Subtarget detection.
+    -- This would also enable cross compilation.
+    -- However in LLVM-2.6 this is only available in the C++ interface.
+    Hs-Source-Dirs: x86/none
+
+  Default-Language: Haskell98
+  GHC-Options: -Wall
+  Hs-source-dirs: src
+  Exposed-Modules:
+    LLVM.Extra.Arithmetic
+    LLVM.Extra.Monad
+    LLVM.Extra.Memory
+    LLVM.Extra.Maybe
+    LLVM.Extra.MaybeContinuation
+    LLVM.Extra.Either
+    LLVM.Extra.Class
+    LLVM.Extra.Control
+    LLVM.Extra.Extension
+    LLVM.Extra.Extension.X86
+    LLVM.Extra.ExtensionCheck.X86
+    LLVM.Extra.Array
+    LLVM.Extra.Scalar
+    LLVM.Extra.Vector
+    LLVM.Extra.ScalarOrVector
+    LLVM.Extra.Iterator
+    LLVM.Extra.Multi.Iterator
+    LLVM.Extra.Multi.Value
+    LLVM.Extra.Multi.Value.Memory
+    LLVM.Extra.Multi.Vector
+    LLVM.Extra.Multi.Vector.Memory
+    LLVM.Extra.Multi.Class
+  Other-Modules:
+    LLVM.Extra.ArithmeticPrivate
+    LLVM.Extra.MaybePrivate
+    LLVM.Extra.EitherPrivate
+    LLVM.Extra.MemoryPrivate
+    LLVM.Extra.Extension.X86Auto
+
+Executable tone-llvm
+  If flag(buildExamples)
+    Build-Depends:
+      llvm-extra,
+      llvm-tf,
+      tfp,
+      non-empty,
+      containers,
+      transformers,
+      utility-ht >=0.0.1 && <0.1,
+      base >=3 && <5
+  Else
+    Buildable: False
+  Default-Language: Haskell98
+  GHC-Options: -Wall
+  Main-Is: src/Array.hs
+
+Executable prepare-intrinsics
+  If flag(buildTools)
+    Build-Depends:
+      parsec >=2.1 && <3.2,
+      containers,
+      transformers,
+      utility-ht >=0.0.1 && <0.1,
+      base >=3 && <5
+  Else
+    Buildable: False
+  Default-Language: Haskell98
+  GHC-Options: -Wall
+  Main-Is: src/PrepareIntrinsics.hs