accelerate-llvm: Accelerate backend component generating LLVM IR
This library implements direct LLVM IR generation for the Accelerate language. For further information, refer to the main accelerate package.
- Dependencies
Haskell dependencies are available from Hackage. The following external libraries are alse required:
libFFI (if using accelerate-llvm-native)
CUDA (if using accelerate-llvm-ptx)
- Installing LLVM
Homebrew
Example using Homebrew on macOS:
brew install llvm-hs/llvm/llvm-9
Debian & Ubuntu
For Debian/Ubuntu based Linux distributions, the LLVM.org website provides binary distribution packages. Check apt.llvm.org for instructions for adding the correct package database for your OS version, and then:
apt-get install llvm-9-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
LLVM.org. 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.
If using the accelerate-llvm-ptx
backend, also ensure that the
LLVM_TARGETS_TO_BUILD
option includes the NVPTX
target (if not
specified, all targets are built).
[Skip to Readme]
Modules
[Index] [Quick Jump]
- Data
- Array
- Accelerate
- LLVM
- Data.Array.Accelerate.LLVM.AST
- Array
- Data.Array.Accelerate.LLVM.Array.Data
- Data.Array.Accelerate.LLVM.CodeGen
- Data.Array.Accelerate.LLVM.CodeGen.Arithmetic
- Data.Array.Accelerate.LLVM.CodeGen.Array
- Data.Array.Accelerate.LLVM.CodeGen.Base
- Data.Array.Accelerate.LLVM.CodeGen.Constant
- Data.Array.Accelerate.LLVM.CodeGen.Environment
- Data.Array.Accelerate.LLVM.CodeGen.Exp
- Data.Array.Accelerate.LLVM.CodeGen.IR
- Data.Array.Accelerate.LLVM.CodeGen.Intrinsic
- Data.Array.Accelerate.LLVM.CodeGen.Loop
- Data.Array.Accelerate.LLVM.CodeGen.Module
- Data.Array.Accelerate.LLVM.CodeGen.Monad
- Data.Array.Accelerate.LLVM.CodeGen.Permute
- Data.Array.Accelerate.LLVM.CodeGen.Ptr
- Data.Array.Accelerate.LLVM.CodeGen.Skeleton
- Data.Array.Accelerate.LLVM.CodeGen.Stencil
- Data.Array.Accelerate.LLVM.CodeGen.Sugar
- Data.Array.Accelerate.LLVM.CodeGen.Type
- Data.Array.Accelerate.LLVM.Compile
- Data.Array.Accelerate.LLVM.Compile.Cache
- Data.Array.Accelerate.LLVM.Embed
- Data.Array.Accelerate.LLVM.Execute
- Data.Array.Accelerate.LLVM.Execute.Async
- Data.Array.Accelerate.LLVM.Execute.Environment
- Data.Array.Accelerate.LLVM.Execute.Marshal
- Data.Array.Accelerate.LLVM.Extra
- Data.Array.Accelerate.LLVM.Foreign
- Data.Array.Accelerate.LLVM.Link
- Data.Array.Accelerate.LLVM.Link.Cache
- Data.Array.Accelerate.LLVM.State
- Data.Array.Accelerate.LLVM.Target
- LLVM
- Accelerate
- ByteString
- Short
- Data.ByteString.Short.Char8
- Data.ByteString.Short.Extra
- Short
- Array
- LLVM
- AST
- Type
- LLVM.AST.Type.AddrSpace
- LLVM.AST.Type.Constant
- LLVM.AST.Type.Downcast
- LLVM.AST.Type.Flags
- LLVM.AST.Type.Function
- LLVM.AST.Type.Global
- LLVM.AST.Type.InlineAssembly
- LLVM.AST.Type.Instruction
- LLVM.AST.Type.Instruction.Atomic
- LLVM.AST.Type.Instruction.Compare
- LLVM.AST.Type.Instruction.RMW
- LLVM.AST.Type.Instruction.Volatile
- LLVM.AST.Type.Metadata
- LLVM.AST.Type.Name
- LLVM.AST.Type.Operand
- LLVM.AST.Type.Representation
- LLVM.AST.Type.Terminator
- Type
- AST
Downloads
- accelerate-llvm-1.3.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 1.0.0.0, 1.1.0.0, 1.2.0.0, 1.2.0.1, 1.3.0.0 |
---|---|
Change log | CHANGELOG.md |
Dependencies | accelerate (>=1.3 && <1.4), base (>=4.10 && <5), bytestring (>=0.10.4), constraints (>=0.9), containers (>=0.5), data-default-class (>=0.0.1), deepseq (>=1.3), directory (>=1.2.3), dlist (>=0.6), exceptions (>=0.6), filepath (>=1.0), llvm-hs (>=4.1 && <9.1), llvm-hs-pure (>=4.1 && <9.1), mtl (>=2.0), primitive (>=0.6.4), template-haskell, unordered-containers (>=0.2), vector (>=0.10) [details] |
Tested with | ghc >=8.6 |
License | BSD-3-Clause |
Author | Trevor L. McDonell |
Maintainer | Trevor L. McDonell <trevor.mcdonell@gmail.com> |
Category | Accelerate, Compilers/Interpreters, Concurrency, Data, Parallelism |
Bug tracker | https://github.com/AccelerateHS/accelerate/issues |
Source repo | head: git clone https://github.com/AccelerateHS/accelerate-llvm.git this: git clone https://github.com/AccelerateHS/accelerate-llvm.git(tag v1.3.0.0) |
Uploaded | by TrevorMcDonell at 2020-08-28T14:21:34Z |
Distributions | |
Reverse Dependencies | 6 direct, 14 indirect [details] |
Downloads | 5823 total (29 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |