name: accelerate-llvm-ptx version: 1.0.0.0 x-revision: 2 cabal-version: >= 1.10 tested-with: GHC == 7.8.* build-type: Simple synopsis: Accelerate backend generating LLVM description: This library implements a backend for the /Accelerate/ language which generates LLVM-IR targeting CUDA capable GPUs. For further information, refer to the main package. . [/Dependencies/] . Haskell dependencies are available from Hackage. The following external libraries are alse required: . * . * . [/Installing LLVM/] . /Homebrew/ . Example using Homebrew on macOS: . > brew install llvm-hs/homebrew-llvm/llvm-4.0 . /Debian & Ubuntu/ . For Debian/Ubuntu based Linux distributions, the LLVM.org website provides binary distribution packages. Check for instructions for adding the correct package database for your OS version, and then: . > apt-get install llvm-4.0-dev . /Building from source/ . If your OS does not have an appropriate LLVM distribution available, you can also build from source. Detailed build instructions are available on . Make sure to include the cmake build options @-DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON@ so that the @libLLVM@ shared library will be built. Also ensure that the @LLVM_TARGETS_TO_BUILD@ option includes the @NVPTX@ target (if not specified all targets are built). . [/Installing accelerate-llvm/] . To use @accelerate-llvm@ it is important that the @llvm-hs@ package is installed against the @libLLVM@ shared library, rather than statically linked, so that we can use LLVM from GHCi and Template Haskell. This is the default configuration, but you can also enforce this explicitly by adding the following to your @stack.yaml@ file: . > flags: > llvm-hs: > shared-llvm: true . Or by specifying the @shared-llvm@ flag to cabal: . > cabal install llvm-hs -fshared-llvm . license: BSD3 license-file: LICENSE author: Trevor L. McDonell maintainer: Trevor L. McDonell bug-reports: https://github.com/AccelerateHS/accelerate/issues category: Compilers/Interpreters, Concurrency, Data, Parallelism -- Configuration flags -- ------------------- Flag nvvm Default: False Description: Use the NVVM library to generate optimised PTX Flag debug Default: False Description: Enable debug tracing message flags. Note that 'debug' must be enabled in the base 'accelerate' package as well. See the 'accelerate' package for usage and available options. Flag bounds-checks Default: True Description: Enable bounds checking Flag unsafe-checks Default: False Description: Enable bounds checking in unsafe operations Flag internal-checks Default: False Description: Enable internal consistency checks -- Build configuration -- ------------------- Library exposed-modules: Data.Array.Accelerate.LLVM.PTX Data.Array.Accelerate.LLVM.PTX.Foreign other-modules: Data.Array.Accelerate.LLVM.PTX.Analysis.Device Data.Array.Accelerate.LLVM.PTX.Analysis.Launch Data.Array.Accelerate.LLVM.PTX.Array.Data Data.Array.Accelerate.LLVM.PTX.Array.Prim Data.Array.Accelerate.LLVM.PTX.Array.Remote Data.Array.Accelerate.LLVM.PTX.Array.Table Data.Array.Accelerate.LLVM.PTX.Context Data.Array.Accelerate.LLVM.PTX.Debug Data.Array.Accelerate.LLVM.PTX.State Data.Array.Accelerate.LLVM.PTX.Target Data.Array.Accelerate.LLVM.PTX.Execute Data.Array.Accelerate.LLVM.PTX.Execute.Async Data.Array.Accelerate.LLVM.PTX.Execute.Stream Data.Array.Accelerate.LLVM.PTX.Execute.Stream.Reservoir Data.Array.Accelerate.LLVM.PTX.CodeGen Data.Array.Accelerate.LLVM.PTX.CodeGen.Base Data.Array.Accelerate.LLVM.PTX.CodeGen.Fold Data.Array.Accelerate.LLVM.PTX.CodeGen.FoldSeg Data.Array.Accelerate.LLVM.PTX.CodeGen.Generate Data.Array.Accelerate.LLVM.PTX.CodeGen.Loop Data.Array.Accelerate.LLVM.PTX.CodeGen.Map Data.Array.Accelerate.LLVM.PTX.CodeGen.Permute Data.Array.Accelerate.LLVM.PTX.CodeGen.Queue Data.Array.Accelerate.LLVM.PTX.CodeGen.Scan Data.Array.Accelerate.LLVM.PTX.Compile Data.Array.Accelerate.LLVM.PTX.Compile.Link Data.Array.Accelerate.LLVM.PTX.Compile.Libdevice Data.Array.Accelerate.LLVM.PTX.Execute.Environment Data.Array.Accelerate.LLVM.PTX.Execute.Event Data.Array.Accelerate.LLVM.PTX.Execute.Marshal build-depends: base >= 4.7 && < 4.10 , accelerate == 1.0.* , accelerate-llvm == 1.0.* , bytestring >= 0.9 , containers >= 0.5 && <0.6 , cuda >= 0.7 , directory >= 1.0 , dlist >= 0.6 , fclabels >= 2.0 , filepath >= 1.0 , hashable >= 1.2 , llvm-hs == 4.0.* , llvm-hs-pure == 4.0.* , mtl >= 2.2.1 , pretty >= 1.1 , time >= 1.4 , unordered-containers >= 0.2 default-language: Haskell2010 ghc-options: -O2 -Wall -fwarn-tabs if impl(ghc >= 8.0) ghc-options: -Wmissed-specialisations if flag(nvvm) cpp-options: -DACCELERATE_USE_NVVM build-depends: nvvm >= 0.7.5 if flag(debug) cpp-options: -DACCELERATE_DEBUG if flag(bounds-checks) cpp-options: -DACCELERATE_BOUNDS_CHECKS if flag(unsafe-checks) cpp-options: -DACCELERATE_UNSAFE_CHECKS if flag(internal-checks) cpp-options: -DACCELERATE_INTERNAL_CHECKS source-repository head type: git location: https://github.com/AccelerateHS/accelerate-llvm.git source-repository this type: git tag: 1.0.0.0 location: https://github.com/AccelerateHS/accelerate-llvm.git -- vim: nospell