hLLVM: A library for analyzing and transforming LLVM (3.5) assembly codes
A pure Haskell library for analyzing and transforming LLVM assembly codes. It includes: 1) a parser to parse LLVM code in its text form; 2) an internal IR that is designed for Hoopl and direct composition; 3) a set of utility functions to convert LLVM AST to and from the internal IR; 4) a set of utility functions to query the IR.
[Skip to Readme]
Modules
- Llvm
- Data
- Llvm.Data.Ast
- Llvm.Data.Conversion
- Llvm.Data.Conversion.AstIrConversion
- Llvm.Data.Conversion.AstScanner
- Llvm.Data.Conversion.AstSimplification
- Llvm.Data.Conversion.IrAstConversion
- Llvm.Data.Conversion.LabelMapM
- Llvm.Data.Conversion.TypeConversion
- Llvm.Data.CoreIr
- Llvm.Data.Ir
- Llvm.Data.IrType
- Llvm.Data.Shared
- Llvm.Data.Shared.AtomicEntity
- Llvm.Data.Shared.DataLayout
- Llvm.Data.Shared.SimpleConst
- Llvm.Data.Shared.Util
- Llvm.Data.Type
- Pass
- Llvm.Pass.Dominator
- Llvm.Pass.Liveness
- Llvm.Pass.Mem2Reg
- Llvm.Pass.NormalGraph
- Llvm.Pass.Optimizer
- Llvm.Pass.PassManager
- Llvm.Pass.PassTester
- Llvm.Pass.PhiFixUp
- Llvm.Pass.Rewriter
- Llvm.Pass.Uda
- Query
- Llvm.Query.Conversion
- Llvm.Query.IrCxt
- Llvm.Query.Qerror
- Llvm.Query.TypeConstValue
- Llvm.Query.TypeDef
- Syntax
- Parser
- Llvm.Syntax.Parser.Basic
- Llvm.Syntax.Parser.Block
- Llvm.Syntax.Parser.Const
- Llvm.Syntax.Parser.DataLayout
- Llvm.Syntax.Parser.Instruction
- Llvm.Syntax.Parser.Module
- Llvm.Syntax.Parser.Rhs
- Llvm.Syntax.Parser.Type
- Printer
- Llvm.Syntax.Printer.Common
- Llvm.Syntax.Printer.IrPrint
- Llvm.Syntax.Printer.LlvmPrint
- Llvm.Syntax.Printer.SharedEntityPrint
- Parser
- Util
- Llvm.Util.Mapping
- Llvm.Util.Monadic
- Data
- ParserTester
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
debug | Enable debug support | Disabled |
testcoverage | Enable test coverage report | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- hLLVM-0.5.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.5.0.0, 0.5.0.1 |
---|---|
Change log | CHANGES |
Dependencies | array, base (>=3 && <5), bytestring, cmdargs (>=0.10 && <0.11), containers, data-dword (==0.3), directory, filepath, hooplext (==3.10.0.2), mtl, parsec (>=3.1.2 && <3.2), pretty (>=1.1.1.1), template-haskell (>=2.9.0.0), transformers (>=0.3.0.0) [details] |
License | BSD-3-Clause |
Author | Ning Wang <email@ningwang.org> |
Maintainer | Ning Wang <email@ningwang.org> |
Category | Compilers/Interpreters |
Source repo | head: git clone https://github.com/mlite/hLLVM.git |
Uploaded | by NingWang at 2015-04-15T08:38:36Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | llvm-test |
Downloads | 1711 total (0 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2016-12-10 [all 8 reports] |