Adrian Herrera
c090f198ad
Haskell bindings update ( #767 )
...
* haskell: Properly handle invalid memory access
* haskell: source cleanup
* haskell: added support for batch reg read/write
2017-02-26 09:27:35 +08:00
Nguyen Anh Quynh
bc569f5a54
rename API uc_mem_free() to uc_free(). see #662
2017-01-10 20:59:14 +08:00
Nguyen Anh Quynh
fdbbdc6216
rename uc_context_free() to uc_mem_free(). see #373
2017-01-09 20:52:14 +08:00
Adrian Herrera
eccef31651
[haskell] Added testI386ContextSave function
...
Based on test_i386_context_save function in samples/sample_x86.c
2016-10-31 11:57:13 +01:00
Adrian Herrera
19028f41f6
Updates to Haskell bindings ( #667 )
...
* [haskell] Added uc_context_* support
As per issue #662
* [haskell] Updated bindings for commit 4083b87032
Updated for introduction of UC_HOOK_MEM_READ_AFTER.
* [haskell] Style fixes
2016-10-30 10:51:02 +08:00
Adrian Herrera
65f1e4d550
[haskell-bindings] Fixed ARM THUMB sample as per issue #638
2016-09-21 09:47:52 +02:00
Luke Nelson
3bc55f9568
Relax transformers constraint for haskell bindings for GHC 8
2016-09-15 19:04:18 -07:00
Adrian Herrera
71751cede9
Removed redundant import
2016-06-05 11:10:33 +10:00
Adrian Herrera
a4cdcb7fde
Very minor formatting updates
2016-06-04 15:45:36 +10:00
Adrian Herrera
0a3f83a20c
Small changes to align with hapstone (Haskell bindings for Capstone)
...
Enums now derive bounded and made use of Applicative in Utils module
2016-04-09 00:13:25 +10:00
Adrian Herrera
87b65d1dda
Small formatting fix
2016-04-08 23:31:13 +10:00
Adrian Herrera
2b1454468c
On second thought, you only really need to run cabal install
, and that will run all the other intermediate steps for you...
2016-04-08 19:55:29 +10:00
Adrian Herrera
4cbe52a701
Updated Makefile to install bindings (in addition to building)
...
Updated Haskell README to explain how to build the samples
2016-04-08 19:29:43 +10:00
Nguyen Anh Quynh
b53bab1362
haskell: update .gitignore
2016-04-08 17:33:11 +08:00
Adrian Herrera
34a203d4c9
Updated Haskell README to make it clear that Alex and Happy are required for c2hs
2016-04-08 17:58:11 +10:00
Adrian Herrera
8f43bf7ffc
Improved namespacing for MMR record-style data type
2016-04-07 22:34:07 +10:00
Adrian Herrera
8cb77a2a93
Fixed Makefile build step for Haskell bindings
2016-04-07 22:27:38 +10:00
Adrian Herrera
431035b335
Fixed some GHC warnings
2016-04-06 09:54:05 +10:00
Adrian Herrera
74aaf3b321
Haskell bindings
...
These Haskell bindings make large use of c2hs to generate much of the code, so
Unicorn's const_generator is not used.
The emulator is based on the Either monad transformer. The IO monad is used to
run the underlying Unicorn library, while the Either monad is used to handle
errors.
Instructions on how to build the bindings are located in
bindings/haskell/README.TXT. The same samples found in samples/ can be found
in bindings/haskell/samples. They should produce the same output, with slight
differences in their error handling and messaging.
2016-04-06 09:21:36 +10:00