Commit Graph

2020 Commits

Author SHA1 Message Date
Chen Huitao
79d89e5d3b fix a mem-leak (#1147)
* fix a mem-leak.

* check the uc and l1_map before using them.

* fix multi-level free bug.

* Add pointer check.
2019-10-05 15:11:46 +08:00
naq
355eaecc12 bindings: update after addition of UC_HOOK_INSN_INVALID 2019-09-23 01:54:24 +08:00
Azertinv
07f94ad1fc Added an invalid instruction hook (#1132)
* first draft for an invalid instruction hook

* Fixed documentation on return value of invalid insn hook
2019-09-23 01:53:06 +08:00
kj.xwings.l
8b659c61b2 Update Makefile (#1146) 2019-09-22 22:32:35 +08:00
naq
57e3509812 Merge branch 'master' of github.com:unicorn-engine/unicorn 2019-09-20 17:28:06 +08:00
naq
27cf6617a3 docs: we no longer requires python2 in building 2019-09-20 17:27:54 +08:00
Chen Huitao
f4cc35a24a compatible with python2 and python3 (#1145)
* compatible with python2 and python3.

* fix python version check in configure of qemu.

* allow python-2.4.

* add credit.
2019-09-20 17:23:12 +08:00
AeonLucid
c46e745338 Fixes #1143 (#1144) 2019-09-16 01:58:08 +08:00
naq
0551b56633 cleanup COMPILE-CMAKE.md 2019-09-08 17:08:00 +08:00
naq
1962cf3580 cleanup COMPILE-CMAKE.md 2019-09-08 17:05:51 +08:00
naq
4c80d9afd4 cleanup 2019-09-08 16:47:38 +08:00
naq
1f98a0dfea CREDITS 2019-09-08 16:45:37 +08:00
Chen Huitao
ca6516ff79 Remove warnings (#1140)
* remove warnings on windows with vs2019.

* remove warnings.
2019-09-08 16:44:16 +08:00
Chen Huitao
60896de9f4 add CMakeList.txt. build windows binary by using vs2019. (#1134)
* add CMakeList.txt. build windows binary by using vs2019.

* remove macro redefinition warning.

* add nmake.bat.

* update CMakeLists.txt. build successfully on Ubuntu-1804-amd64.

* add CMakeList.txt. build windows binary by using vs2019.

* remove macro redefinition warning.

* add nmake.bat.

* update CMakeLists.txt. build successfully on Ubuntu-1804-amd64.

* Add build specific arch option.

* fix old MSVC inline and mipsel macro.

* add install target and option of embeded MSVCRT lib.

* add cmake.sh and document.

* add xwings and chenhuitao as programmer.

* fix COMPILE-CMAKE. rename txt to md.
2019-09-08 16:42:43 +08:00
BAYET
8987ad0fff Handle serialization of cpu context save (#1129)
* Handle the cpu context save in a more pythonic way, so the context can be serialized and reuse in an other process using the same emulator architecture and modes

* Fix type error ; mistakes a size_t uint64_t ; breaks in 32bit...
2019-09-07 19:09:17 +08:00
Stephen
6c948b43ba name builds in travis (#1138) 2019-09-07 11:25:13 +08:00
Audrey Dutcher
4fd2f8c524 Final tweaks to MSVC build (#1139)
* Quote paths in msvc postbuildevent scripts

* Update MSVC readme with some new advice
2019-09-07 10:46:28 +08:00
Fish
626d72d6df Two fixes to get unicorn build better with MSVC. (#1136)
* Change MSVC keywords.

typename, class, and class are all keywords for MSVC. Adding a suffix for
all of them allows a successful compilation under VC 2017 (15.9).

* Switch from /ZI to /Zi to avoid crashes at longjmp in debug builds.
2019-09-05 00:53:37 +08:00
Luke Usher
1c1eecd863 msvc: Use default platform toolset (#1091) 2019-09-05 00:52:40 +08:00
Stephen
0961b1f7d5 test appveyor artifacts (#1120)
* test appveyor artifacts

* add msvc and upload after test

* test cygunicorn.dll dependencies

* Update .appveyor.yml

* add ntldd for msys2
2019-09-02 09:09:31 +08:00
Stephen
75d0d5b1d9 brew ignores CC variable (#1131)
* check if brew is respecting CC variable

* brew ignores CC variable
2019-09-02 08:35:57 +08:00
Chen Huitao
23a426625f check arguments, return error instead of raising exceptions. (#1125)
* check arguments, return error instaed of raising exceptions. close #1117.

* remove empty lines. remove thr underscore prefix in function name.
2019-08-23 17:05:13 +08:00
Daniel Deptford
bc572be472 Check for TLB invalidation after read callback(s). (#1122)
* Adding regression test for issue where writing memory into a read only segment during a access callback fails.

* Check for TLB invalidation when calling read callbacks;  Writes to read-only memory by the callback cause a TLB flush which requires a re-read of the TLB.
2019-08-22 17:54:24 +08:00
Stephen
8f0f77233d fix msys2 and travis builds (#1118)
* fix msys2 builds

* move to travis xenial

now the default

* add i386 cmocka

* move to only different cmocka on 32 bit build

* minimize packages on non x86
2019-08-11 17:47:36 +08:00
naq
2a4924b161 Merge branch 'master' of github.com:unicorn-engine/unicorn 2019-08-05 23:00:26 +08:00
naq
9208a6f317 initialize ret=0 in cpu_exec(). issue #1115 2019-08-05 23:00:01 +08:00
Guille Polito
56ac8859b3 Add pharo-unicorn to binding list (#1110)
* Add pharo-unicorn to binding list

* Add Pharo
2019-07-31 15:56:28 +08:00
naq
3eb3a18b56 Merge branch 'master' of github.com:unicorn-engine/unicorn 2019-07-31 15:43:38 +08:00
naq
540c893157 cleanup qemu/cpus.c 2019-07-31 15:43:06 +08:00
Stephen
b55bbd0ac6 fix broken build (#1108)
* fix broken build

* add binutils to path
2019-07-31 12:34:49 +08:00
Stephen
ca6cb2368f remove broken iOS builds (#1109) 2019-07-31 09:33:13 +08:00
Kevin Phoenix
3053e64708 Specify python for building QEMU on macOS (#1107) 2019-07-30 10:49:33 +08:00
kj.xwings.l
24f55a7973 Removed hardcoded CP0C3_ULRI (#1098)
* activate CP0C3_ULRI for CONFIG3, mips

* updated with mips patches

* updated with mips patches

* remove hardcoded config3

* git ignore vscode

* fix spacing issue and turn on floating point
2019-07-06 17:53:02 +08:00
Starlet Leonhart
0cd69ee03b Add ARM64 Android support in make.sh (#1099)
* Add Android ARM64 support.

* Fix some things
2019-07-01 19:24:36 +08:00
kj.xwings.l
5efc0afd49 activate CP0C3_ULRI for CONFIG3, mips (#1097) 2019-06-24 20:58:53 +08:00
Ryan Houdek
ae6e3c193d Fixes register reading and writing for XMM8-15 on x86-64 (#1090) 2019-06-03 19:04:41 +08:00
lzutao
778171fc95 Update help description for make.sh (#1078)
* Update help description for make.sh

* Add description for msvc_update_genfiles
2019-04-11 09:30:56 +08:00
Lukas Dresel
55d8d073bd support for YMM registers ymm8-ymm15 (#1079) 2019-04-01 11:00:34 +08:00
Aldo Mazzeo
d38c8fb27f Don't duplicate a uc_mem_map_ptr'd memory region when splitting it (#1028) (#1030) 2019-03-07 09:05:26 +08:00
Jonas
d6d4131873 Added x86Msr functions for the go bindings (#986) 2019-03-07 08:39:38 +08:00
Nguyen Anh Quynh
07cafff76a bindings: update for latest ARM registers addition 2019-03-07 08:38:41 +08:00
yhql
3185128031 Add ARM MSP, PSP and CONTROL register access (#1071)
Necessary for NVIC exception emulation from user.
2019-03-07 08:37:27 +08:00
Stephen
c012d19034 Add xenial support (#1069)
trusty is sunsetting support in April 2019
2019-03-01 01:09:41 +08:00
Nguyen Anh Quynh
6d47b38b7f bindings: update after recent addition of ARM_REG_IPSR 2019-02-28 09:56:29 +08:00
cfrantz
6c319941a5 Add support for the ARM IPSR register. (#1067)
1. Create an enum name for the IPSR register.
2. Implement read and write of the IPSR via the xpsr helper functions.

Fixes #1065
2019-02-28 09:55:27 +08:00
Stephen
075bd65bbb Fix Cygwin Python Issue (#1068)
* Test Cygwin

* more specific python setuptools

* readd other tests
2019-02-28 09:54:45 +08:00
dmarxn
5bf6d77e4e Fixed the decoding of opcodes after getting vex2 using 0xc5 (#1064)
* Fixed the decoding of opcodes after getting vex2 using 0xc5

* Added testcase for vex. Can and should be expanded

* Fixed warning of testcase for vex (parentheses for assignment)
2019-02-25 21:14:20 +08:00
Nguyen Anh Quynh
738d102989 bindings: add newly added register MXCSR 2019-02-15 13:01:27 +08:00
dmarxn
256e7782ce Added MXCSR register, fixed writing to FPUCW. (#1059)
* Added MXCSR register for reading and writing

* Changed writing for fpucw register, now the qemu rounding status is updated as well
2019-02-15 12:59:49 +08:00
dmarxn
360e9c60e1 changed cpu_compue_eflags to use the updated eflags variable. Otherwise, cli/sti and popfl may break, as we get the non-updated eflags (#1057) 2019-02-07 23:10:01 +08:00