-
Notifications
You must be signed in to change notification settings - Fork 1
/
harpy.cabal
67 lines (64 loc) · 2.39 KB
/
harpy.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Cabal-version: >=1.2
Build-type: Simple
Name: harpy
Version: 0.5.0.0
License: GPL
License-file: COPYING
Author: Dirk Kleeblatt <[email protected]>
Martin Grabmueller <[email protected]>
Maintainer: [email protected], [email protected]
Homepage: http://code.haskell.org/harpy/
Category: Code Generation
Synopsis: Runtime code generation for x86 machine code
Description: The package contains the following components:
.
* An x86 assembler. We provide both low-level code generation in
module "Harpy.X86CodeGen" as well as a (slightly) higher-level
implementation in module "Harpy.X86Assembler", which figures out
addressing modes based on an instruction's operand types.
.
* An x86 disassembler which knows most of the opcodes available on
modern x86 processors and can display its output both in the style
used in Intel documents an in AT&T style, like the GNU tools. The
disassembler can be found in module "Harpy.X86Disassembler". The
disassembler is re-exported from the disassembler package for
compatibility with earlier Harpy releases.
.
* Some abstractions over the abovementioned code generation modules,
such as automatic label management and code generation
combinators (for if-then-else statements, while-loops, functions)
(module "Harpy.X86CGCombinators").
.
* All the above modules use the code generation monad defined in module
"Harpy.CodeGenMonad".
.
* The Darcs repo and two tutorials on using Harpy can be found at
Harpy's homepage: <http://uebb.cs.tu-berlin.de/harpy/>
Stability: Experimental
Extra-source-files:
NEWS README Makefile
doc/Makefile doc/tutorial.lhs doc/larger-tutorial.lhs
examples/evaluator/ArithTypes.hs examples/evaluator/ArithParser.hs
examples/evaluator/Evaluator.hs
Library
Build-depends:
base >= 4 && < 5,
parsec >= 1 && < 4,
mtl >= 1 && < 3,
template-haskell >= 2 && < 3,
pretty >= 1 && < 2,
containers >= 0.3 && < 1,
array >= 0.3 && < 1,
disassembler >= 0.2.0.0
Exposed-Modules:
Harpy,
Harpy.X86CodeGen,
Harpy.X86Assembler,
Harpy.CodeGenMonad,
Harpy.Call,
Harpy.X86Disassembler,
Harpy.X86CGCombinators
Extensions:
ForeignFunctionInterface, MultiParamTypeClasses,
TemplateHaskell, CPP, FlexibleContexts, FlexibleInstances,
RankNTypes