zhangwm
4a62409949
arm64eb: arm64 big endian also using little endian instructions. ( #816 )
...
* arm64eb: arm64 big endian also using little endian instructions.
* arm64: using another example that depends on endians.
example:
1. store a word: 0x12345678
2. load a byte:
* little endian : 0x78
* big endian : 0x12
2017-05-04 20:00:48 +08:00
Ryan Hileman
187b470245
add arm64 CPACR_EL1 register support ( #814 )
2017-05-02 14:51:19 +08:00
David Zimmer
9eebd6daa3
vb bindings remove DYNLOAD ( #812 )
2017-04-27 20:43:47 +08:00
xorstream
fa45a42c76
Removed MSVC binding. ( #808 )
2017-04-27 10:21:04 +08:00
Nguyen Anh Quynh
0109cd6c8a
Merge branch 'master' into a64
2017-04-25 13:00:15 +08:00
Nguyen Anh Quynh
2bd40b9c91
update armeb & arm64eb samples
2017-04-25 12:55:26 +08:00
Nguyen Anh Quynh
09d14704a5
bindings: update after UC_VERSION_EXTRA change
2017-04-25 12:41:00 +08:00
zhangwm
2e973a13f0
arm64eb: add support for ARM64 big endian.
2017-04-24 23:30:01 +08:00
Nguyen Anh Quynh
e917c9de10
Merge branch 'master' into msvc2
2017-04-21 01:17:00 +08:00
Nguyen Anh Quynh
5dbc640b9a
bump UC_VERSION_EXTRA to 1
2017-04-20 14:14:24 +08:00
Nguyen Anh Quynh
7441cfe4e5
Update unicorn.py
...
space
2017-04-18 07:46:12 +08:00
tylerni7
4f07910eae
handle not having a path ( #798 )
2017-04-18 07:44:48 +08:00
Nguyen Anh Quynh
094ca80092
fix conflicts
2017-03-30 12:23:24 +08:00
zhangwm
d2740b17ce
armeb: add C sample for armeb.
2017-03-13 23:19:09 +08:00
zhangwm
d8fe34a2e8
armeb: Add support for ARM big endian.
2017-03-13 22:32:44 +08:00
Nguyen Anh Quynh
c01dcf0a14
fix merge conflicts
2017-03-10 21:04:33 +08:00
feliam
0150ca24b1
Add support for ARM application flags - APSR register ( #776 )
2017-03-09 22:28:03 +08:00
stevielavern
b3a5eae81c
uc_reg_read & uc_reg_write now support ARM64 Neon registers ( #774 )
...
* uc_reg_read & uc_reg_write now support ARM64 Neon registers
* Do not reuse uc_x86_xmm for uc_arm64_neon128. TODO: refactor both classes to use the same parent.
2017-03-07 21:29:34 +08:00
Nguyen Anh Quynh
117b48c33c
bindings: use diff -u in Makefile
2017-02-26 16:52:06 +08:00
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
f4325f8c4e
bindings: update to support X86 MSR id
2017-02-24 21:51:01 +08:00
Ahmed Samy
02e6c14e12
x86: add MSR API via reg API ( #755 )
...
Writing / reading to model specific registers should be as easy as
calling a function, it's a bit stupid to write shell code and run them
just to write/read to a MSR, and even worse, you need more than just a
shellcode to read...
So, add a special register ID called UC_X86_REG_MSR, which should be
passed to uc_reg_write()/uc_reg_read() as the register ID, and then a
data structure which is uc_x86_msr (12 bytes), as the value (always), where:
Byte Value Size
0 MSR ID 4
4 MSR val 8
2017-02-24 21:37:19 +08:00
Nguyen Anh Quynh
6ea39f7d5a
merge msvc with master
2017-02-24 10:39:36 +08:00
Sascha Schirra
eb4dc61c66
Updated ruby bindings ( #744 )
...
* added methods for uc_context_save, uc_context_restore
* added test for context_save
* changed version of the lib
2017-01-29 08:13:17 +08:00
Nguyen Anh Quynh
b616115df1
update ChangeLog
2017-01-25 12:00:18 +08:00
Nguyen Anh Quynh
a735576dd3
python: support uc_mem_regions() API
2017-01-24 12:47:27 +08:00
xorstream
21c0580d63
Remove old project dir.
2017-01-22 15:50:28 +11:00
xorstream
45cefc2cf6
Sync with current msvc branch.
2017-01-22 15:49:14 +11:00
xorstream
a868ad9dc7
Moved ./bindings/msvc_native into ./msvc
2017-01-22 11:38:48 +11:00
Nguyen Anh Quynh
40434f6081
Update config-host.h
...
msvc: cleanup config-host.h
2017-01-22 04:53:58 +08:00
Nguyen Anh Quynh
5a1e86d46b
update Windows DLL dependency
2017-01-22 00:39:21 +08:00
xorstream
2ae2134402
Added prebuild script to remove generated files and started adding projects for other CPUs. ( #725 )
...
* Changed some MSVC compatibility defines based on MSVC version.
* Added prebuild_script.bat to remove leftover configure generated files before building.
Also added project files and MSVC copies of configure generated files for all supported CPUs.
2017-01-21 23:22:51 +08:00
xorstream
37ac0efcea
Added prebuild_script.bat to remove leftover configure generated files before building.
...
Also added project files and MSVC copies of configure generated files for all supported CPUs.
2017-01-22 01:17:36 +11:00
Nguyen Anh Quynh
17f01469ad
msvc_native: add .gitignore
2017-01-21 18:12:00 +08:00
xorstream
770c5616e2
Automated leading tab to spaces conversion.
2017-01-21 12:28:22 +11:00
xorstream
df41c49e2d
Fixed warning about {} initialisers.
2017-01-21 11:41:11 +11:00
xorstream
429bfca48e
Fixes for MSVC native support to still work with GCC/GNU.
2017-01-21 01:07:10 +11:00
xorstream
00ca6b1a5f
Save copies of generated qapi files.
2017-01-21 00:31:03 +11:00
xorstream
8840d5b42b
Save copies of generated qapi files.
2017-01-21 00:30:50 +11:00
xorstream
fac6a66860
platform.h move #3
2017-01-21 00:13:21 +11:00
xorstream
1aaf57ca54
Some more little edits to prepare for pull request.
2017-01-20 22:46:32 +11:00
xorstream
1fea4e6d87
Some small changes to clean up before pull request.
2017-01-20 22:34:14 +11:00
xorstream
5c7c8375f9
Unicorn interface working with test app in 32bit and 64bit builds 2.
2017-01-20 17:28:14 +11:00
xorstream
002151874a
Unicorn interface working with test app in 32bit and 64bit builds.
2017-01-20 17:27:22 +11:00
xorstream
1aeaf5c40d
This code should now build the x86_x64-softmmu part 2.
2017-01-19 22:50:28 +11:00
xorstream
37f9a248ea
This code should now build the x86_x64-softmmu part.
2017-01-19 22:42:28 +11:00
xorstream
d56d09e5e1
Merge remote-tracking branch 'unicorn-engine/master' into msvc_native
2017-01-16 17:26:12 +11:00
xorstream
940c857987
Started the port for MSVC native support.
2017-01-16 17:21:12 +11:00
Nguyen Anh Quynh
d6ba083c45
update CREDITS.TXT
2017-01-16 09:43:11 +08:00
David Zimmer
523fb9d9fc
VB6 bindings and dynload update w/ uc_context* and uc_free api,… ( #715 )
...
* msvc unicorn.def and dynload.c added new uc_context* and uc_free api, includes support for older dlls compiled with uc_context_free (can remove next binary release)
* vb6 bindings & x86 32bit sample class for unicorn
2017-01-16 09:40:56 +08:00
hedger
d2b7d13443
Fixed circular refs preventing Uc instances from being GC'd. Added a test case, requires objgraph
module.
2017-01-11 18:23:21 +03:00
Nguyen Anh Quynh
6378db99dc
Merge pull request #712 from lunixbochs/go-free-regions
...
go: fix uc_free, free uc_mem_regions pointer
2017-01-11 09:27:45 +08:00
Chris Eagle
8adc8afc63
Java bindings ( #711 )
...
* Remove glib from samples makefile
* support new APIs
* reimplement register batch mode interface
* stop using deprecated java API
2017-01-11 09:27:16 +08:00
Ryan Hileman
ab3828222a
go: fix uc_free, free uc_mem_regions pointer
2017-01-10 16:54:54 -05: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
Chris Eagle
21ffaf7d10
Java bindings ( #709 )
...
* Remove glib from samples makefile
* support new APIs
* reimplement register batch mode interface
* stop using deprecated java API
2017-01-06 23:56:53 +08:00
Andrew Dutcher
7bd4d62dcb
Copy prebuilt static library if available. Disallow uploads from builds that fail to provide the static library
2017-01-04 06:45:18 -08:00
Andrew Dutcher
5d8934f5a9
Python: Automatically conform to PEP440 for version numbers
2017-01-04 05:51:55 -08:00
Nguyen Anh Quynh
07aa027167
msvc docs: no longer need libglib. add libpcre as dependency
2017-01-01 23:41:15 +08:00
Nguyen Anh Quynh
9a79d6fe9f
Merge branch 'master' into noglib2
2016-12-27 16:48:23 +08:00
Andrew Dutcher
bf2cd79a4d
Windows: export a static lib that can be used outside of mingw ( #699 )
...
* Windows: export a static lib that can be used outside of mingw
* Add comments to windows_export.bat
2016-12-27 16:30:07 +08:00
Nguyen Anh Quynh
55e61f65e4
python: only preload librt.so on Linux
2016-12-26 15:54:46 +08:00
Nguyen Anh Quynh
4805407fb6
fix python test on Ubuntu 12.04 by preloading librt.so
2016-12-26 15:12:48 +08:00
Nguyen Anh Quynh
7287f2a82f
Go: fix Travis test on Mac
2016-12-25 18:40:23 +08:00
Nguyen Anh Quynh
af4c29c57f
Go: attempt to fix compilation issue on missing clock_gettime()
2016-12-25 01:34:59 +08:00
me
1d85d1763d
Merge branch 'master' into noglib
2016-12-24 13:21:53 +08:00
Antoine
a7dddf6c5f
python bindings: restore FreeBSD support ( #698 )
...
* python bindings: restore FreeBSD support
* python binding: use libunicorn.so if the platform is unknown
2016-12-24 00:59:19 +08:00
Chris Eagle
e46545f722
remove glib dependency by provide compatible replacements
2016-12-18 14:56:58 -08:00
Nguyen Anh Quynh
bd339533ca
python: comment out a debug code
2016-12-04 20:46:52 +07:00
Nguyen Anh Quynh
4613580e07
python: typo 'prebuilt' dir
2016-12-04 18:18:24 +08:00
Nguyen Anh Quynh
e34812c7dd
fix merge conflict
2016-11-20 16:36:56 +08:00
Nguyen Anh Quynh
2a4c316b6f
python: correct a comment on sample_arm.py
2016-11-19 16:51:08 +08:00
Nguyen Anh Quynh
3543452b06
ruby: update unicorn_const.rb
2016-11-19 16:48:30 +08:00
Andrew Dutcher
188a1d78d3
Allow dlls to be copied out of prebuilt directory
2016-11-17 20:59:39 -08:00
Stephen
9f0cdc4be9
Update .travis.yml
...
Update eflags_nosync.c
Update sigill2.c
Update ro_mem_test.c
Update ro_mem_test.c
Update nr_mem_test.c
Update mem_fuzz.c
Update mem_double_unmap.c
Update emu_stop_in_hook_overrun.c
Update eflags_nosync.c
remove unused
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update mem_64_c.c
Update mem_64_c.c
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update .travis.yml
try android ndk build
Update unicorn.py
Update unicorn.py
Update Makefile
Update unicorn.py
Update unicorn.py
remove an untrue comment
if a dll/so/dylib gets loaded at runtime is dependent on many different factors, primarily the LD/DYLD paths. Those do not always include the current working directory
Update Makefile
Update .appveyor.yml
Update .travis.yml
Update Makefile
Update .appveyor.yml
Fix bad sample
2016-11-11 07:45:06 -08:00
Stephen
186540e160
make cleanup
2016-11-06 16:27:24 -08:00
Andrew Dutcher
876570c8d7
Fixes to make python distribution for windows work
2016-11-05 09:18:50 -07:00
Nguyen Anh Quynh
f8e82485da
python: print out _path_list with next line
2016-11-05 01:55:12 +08:00
Nguyen Anh Quynh
88bd6453d5
python: add a debug code to print out _path_list
2016-11-05 01:51:13 +08:00
Nguyen Anh Quynh
d46911d301
Merge pull request #661 from lowlyw/ruby_binding_fix
...
fix signedness issue with reg read/write in ruby bindings
2016-11-02 15:58:59 +08:00
Nguyen Anh Quynh
ffa36b9001
python: remove redundant free() prototype. bug reported by Mahin
2016-11-01 08:57:33 +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
Ryan Hileman
64f4692c22
Go: add context api ( #668 )
2016-10-31 16:00:57 +08: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
Nguyen Anh Quynh
4d5738eeb5
python: revert the changes on APIs made by @mrphrazer
2016-10-27 16:45:10 +08:00
Lowly Worm
df497a9502
fix signedness issue with reg read/write in ruby bindings
2016-10-26 00:30:22 -07:00
Tim Blazytko
17fd89a27b
python bindings: updated signed reg fix
2016-10-26 09:13:19 +02:00
Tim Blazytko
632f3aaa71
fixed python bindings signed/unsigned regs/mem
2016-10-25 20:43:01 +02:00
Nguyen Anh Quynh
44ab083d9b
Merge branch 'master' of https://github.com/unicorn-engine/unicorn
2016-10-25 14:38:24 +08:00
Nguyen Anh Quynh
7a1930a879
add UC_VERSION_{MAJOR, MINOR, EXTRA}
2016-10-25 14:37:47 +08:00
Sascha Schirra
2f15e2119d
add new constants
2016-10-22 17:02:46 +02:00
Sascha Schirra
2c82671704
add command to create constants file for ruby
2016-10-22 17:02:35 +02:00
Nguyen Anh Quynh
4083b87032
add new hook type UC_HOOK_MEM_READ_AFTER, adapted from PR #399 by @farmdve. updated all bindings, except Ruby & Haskell
2016-10-22 11:19:55 +08:00
Stephen
bc08bfda67
Unit testing in CI ( #651 )
...
- in appveyor, install clang and cmake in cygwin, enable package upgrades, and build cmocka and enable testing for gcc only
- in `gitignore`, ignore generated cmocka folder
- in travis, use brew in osx to install cmocka, and enable testing for gcc and clang on os x and linux
- in `Makefile`, change to use `uname -s` to determine os type
- make `install-cmocka-linux.sh`, a simple shell script to download and install cmocka on linux
- in `bindings/Makefile`, enable `make -c` to call subdirectory makefiles instead of `cd [dir] && make` and include environment variables for runtime access to generated libraries
- in `samples/Makefile`, change to use `uname -s` to determine os type, remove `clean_bins` from `all` command, and include `Werror` for compile strictness
- in `tests/unit/Makefile`, add `cflags` for compile time access to cmocka headers and library, include execute vars for runtime access to cmocka and unicorn libs
- in `tests/unit/test_tb_x86.c`, comment out assert that would not compile
2016-10-22 00:21:10 +08:00
Nguyen Anh Quynh
67905ab147
python: rename test_i386_reg_save() to test_i386_context_save()
2016-10-13 20:57:34 +08:00
Andrew Dutcher
bfa51bb5dc
rename another saved regs to saved context
2016-10-11 13:07:53 -07:00
Andrew Dutcher
1ab2154fe5
Change save/restore API to have explicit alloc/free functions. Python has explicit save/update functions.
2016-10-07 11:39:42 -07:00
Nguyen Anh Quynh
73577cbcd1
rename uc_regstate_restore to uc_context_restore, uc_context_save to uc_context_save
2016-10-07 10:03:19 +08:00
Nguyen Anh Quynh
b7cdbe7a88
Merge branch 'feat/reg_save_restore' of https://github.com/rhelmot/unicorn into rhelmot-feat/reg_save_restore
2016-10-07 09:57:07 +08:00