Commit Graph

1790 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
ed6060737d Merge pull request #669 from adrianherrera/improvement/uc_context_sample
Added uc_context_* sample
2016-10-31 19:54:48 +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
e1a2cb5fe8 [samples] Added uc_context_* sample 2016-10-31 11:56:32 +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
Nguyen Anh Quynh
e79e87fccb Merge branch 'python_unsigned_fix' of https://github.com/mrphrazer/unicorn into mrphrazer-python_unsigned_fix 2016-10-27 16:30:47 +08:00
Nguyen Anh Quynh
23ffa91cee Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2016-10-26 17:06:59 +08:00
Nguyen Anh Quynh
1f65b76fbd fix some compilation warnings regarding typcase of (CPUState *) 2016-10-26 17:05:26 +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
Peter Harliman Liem
7660768942 Fix leak and style in map_write.c (#658)
Fix potential leak, wrong text in log, and restyle
to a cleaner exit path
2016-10-25 23:47:55 +08: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
Nguyen Anh Quynh
522e89eb28 Merge pull request #656 from sashs/master
add new constants to ruby binding
2016-10-22 23:06:22 +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
c59e06d798 mips: fix some compilation warnings 2016-10-22 13:36:37 +08: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
Nguyen Anh Quynh
7e9fe53f19 remove LEAK_VALGRIND 2016-10-22 00:29:34 +08:00
Nguyen Anh Quynh
867cd92c40 update CREDITS.TXT 2016-10-22 00:24:59 +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
2a608c778e sparc: fix an compilation warning 2016-10-21 22:32:02 +08:00
Nguyen Anh Quynh
99f3647d2e Merge pull request #655 from angr/fix/slow_mem_mapping
Remove unmapped/freed memory regions from the object property list.
2016-10-21 00:04:35 +08:00
Fish
ad7ae63e92 Remove unmapped/freed memory regions from the object property list.
This commit fixes the following issues:
- Any unmapped/free'd memory regions (MemoryRegion instances) are not
  removed from the object property linked list of its owner (which is
  always qdev_get_machine(uc)). This issue makes adding new memory
  mapping by calling mem_map() or mem_map_ptr() slower as more and more
  memory pages are mapped and unmapped - yes, even if those memory pages
  are unmapped, they still impact the speed of future memory page
  mappings due to this issue.
- FlatView is not reconstructed after a memory region is freed during
  unmapping, which leads to a use-after-free the next time a new memory
  region is mapped in address_space_update_topology().
2016-10-20 03:48:58 -07:00
Nguyen Anh Quynh
67905ab147 python: rename test_i386_reg_save() to test_i386_context_save() 2016-10-13 20:57:34 +08:00
Nguyen Anh Quynh
756f148038 typo 2016-10-12 11:10:20 +08:00
Nguyen Anh Quynh
b991b71cf5 update CREDITS.TXT 2016-10-12 11:07:11 +08:00
Nguyen Anh Quynh
8f99d20695 turn cpu_context_size() into static function 2016-10-12 11:05:32 +08:00
Andrew Dutcher
bfa51bb5dc rename another saved regs to saved context 2016-10-11 13:07:53 -07:00
Andrew Dutcher
80f35d3b2b remove safety checks, for some reason 2016-10-11 13:07:14 -07:00
Andrew Dutcher
ea54204952 Tweak some names in a few places, encapsulate the uc_context struct to hide it from users for some reason 2016-10-10 14:04:51 -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
6c54f9ce48 first_cpu is obsolete by recent changes 2016-10-07 10:10:18 +08:00
Nguyen Anh Quynh
a6e8564153 typo 2016-10-07 10:06:53 +08: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
Nguyen Anh Quynh
1035b406e1 Merge pull request #649 from stephengroat/fix_test
Update test_hang.c
2016-10-06 01:31:55 +08:00
Stephen
0137a66c61 Update test_hang.c 2016-10-05 10:29:16 -07:00
Stephen
f2998f14cd Update test_hang.c 2016-10-05 09:20:36 -07:00
danghvu
fb9cd97504 memleak: Fix m68k memleak 2016-10-03 14:47:03 -05:00
danghvu
84d99412bc memleak: Fix Sparc memory leak 2016-10-03 14:23:27 -05:00
danghvu
6aea0aee58 memleak: Add back object release for uc->cpu 2016-10-03 14:21:47 -05:00
Nguyen Anh Quynh
b7ad7f180c update docs/COMPILE-NIX.md 2016-10-01 00:01:32 +08:00
Nguyen Anh Quynh
7d15a60b25 arm64: disable deadcode introduced by PR #643 2016-09-29 12:34:44 +08:00
Nguyen Anh Quynh
507d557aa5 arm: disable deadcode introduced by PR #643 2016-09-29 12:33:16 +08:00
Andrew Dutcher
e3b0e52013 Rename save/restore functions to match the style of the rest of the API 2016-09-28 21:21:44 -07:00
Ryan Hileman
cb615fdba7 remove uc->cpus 2016-09-23 07:38:21 -07:00
Nguyen Anh Quynh
60a7371ec2 Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2016-09-22 08:46:30 +08:00