Commit Graph

2489 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
3bc180e3eb x86: wrong number of operands. fix #950 2017-06-23 00:54:09 +08:00
Adrian Herrera
9dff618b04 mingw build: cstool fails to build with mingw (#941)
The correct compiler was not being passed to cstool/Makefile. The expected name
for the capstone lib was also incorrect - there is no "lib" prefix when
compiling with mingw.
2017-06-02 21:49:10 +08:00
Nguyen Anh Quynh
edf289d784 rebuild cstool when the core changes. fix #932 2017-05-25 23:11:12 +08:00
vit9696
62cf15d334 Several changes for size reduction (#929)
* Support CAPSTONE_STATIC with __GNUC__ compilers

* Allow custom export rules

* Make CAPSTONE_SHARED the default visibility option with GNUC (avoids behaviour changes)

* Reduce capstone static build size (mainly for kernel usage)

* Allow basic cs_detail support in diet mode

* Fixed valid_bnd unused function warning

* Do not disable cs_detail generation in CAPSTONE_DIET, use CAPSTONE_NO_DETAIL for that.

* Reverted CAPSTONE_NO_DETAIL at least until capstone supports more flexible configuration

* Added a missing endif

* Disallow custom export rules
2017-05-24 13:07:11 +08:00
Nguyen Anh Quynh
82a2665896 x86: indentation 2017-05-22 21:36:04 +08:00
Quang Nguyễn
3da508b33b Compile cstool on Windows using Microsoft Visual Studio (VS). (#927)
* provide a validity check to prevent against Integer overflow conditions

* fix some style issues.

* provide a validity check in malloc() function to prevent against integer overflow conditions

* missing Ntintsafe.h

* use tabs for indentation

* add cstool project
2017-05-16 16:52:34 +07:00
Nick Briggs
2aedb8168c Rename test.c to test_basic.c with corresponding executable name change. (#923)
* Rename test.c to test_basic.c with corresponding executable name change.

* Fix Makefile, tests/Makefile to comprehend renamed test program. See issue #922

* Fix XCode project to comprehend renamed test program.  See issue #922

* Rename python test.py to test_basic.py to parallel C test name.  See issue #922

* Rename ocaml test.ml to test_basic.ml to parallel C test name.  See issue #922

* Fix MSVC project definitions to comprehend renamed test program.  See issue #922
2017-05-11 22:58:12 +07:00
Nguyen Anh Quynh
7a2d7deb78 x86: LDS is invalid in x64. see #904 2017-05-08 10:49:55 +08:00
Nguyen Anh Quynh
31a2855012 Merge branch 'master' of https://github.com/aquynh/capstone 2017-05-07 14:32:52 +08:00
Nguyen Anh Quynh
36fb9a2fff x86: handle f2/f3 prefix for 16bit. see issue #452 2017-05-07 14:32:39 +08:00
Nguyen Anh Quynh
1e28d29bb9 x86: LES is invalid in x64. see #904 2017-05-06 14:29:11 +08:00
Nguyen Anh Quynh
79e1a1821e x86: AT&T syntax bug with zero offset segment register. see #884 2017-05-06 10:38:08 +08:00
Nguyen Anh Quynh
a3c6eca59a Makefile: do not delete capstone.pc.in 2017-05-05 09:46:46 +08:00
Nguyen Anh Quynh
5b92f8c1da arm: POP {reg} read/write SP register. this fixes #913 2017-05-04 17:21:41 +08:00
Nguyen Anh Quynh
05d9a34efa x86: lock nop is a valid instruction. #915 2017-05-03 20:06:39 +08:00
Gabor Buella
9b1b3871d3 cmake - fix SOVERSION property used for libcapstone.so (#914)
It was set as a global property before, but cmake appears to ignore that,
even after the following fix:
-set_property(GLOBAL PROPERTY SOVERSION SOVERSION ${VERSION_MAJOR})
+set_property(GLOBAL PROPERTY SOVERSION ${VERSION_MAJOR})

So this patch removes the global property, and SOVERSION is now specified as
a target specific property. The result of the cmake install target seems better:

Before:

$ ls -la lib
4375834 May  1 16:05 libcapstone.a
3510040 May  1 16:05 libcapstone.so

After:

$ ls -la lib
4375834 May  1 16:05 libcapstone.a
     16 May  1 16:08 libcapstone.so -> libcapstone.so.4
     20 May  1 16:08 libcapstone.so.4 -> libcapstone.so.4.0.0
3510040 May  1 16:08 libcapstone.so.4.0.0

The SOVERSION property triggers symlink creation in cmake, see:
https://cmake.org/cmake/help/v3.0/prop_tgt/SOVERSION.html
2017-05-02 09:25:32 +08:00
Nguyen Anh Quynh
36d222b494 CMake: fix pkgconfig file 2017-04-30 23:20:08 +08:00
Gabor Buella
f25f105d1a cmake: install pkg config file 2017-04-30 23:19:54 +08:00
noword
22d762085c fix compiling error in MS VS2015 (#869)
for issue #868
2017-04-26 09:10:44 +08:00
Nguyen Anh Quynh
c8336e0add cstool: support arm64be 2017-04-25 21:33:56 +08:00
Simorfo
f88ef5fe37 Bugfix : setting all fields to insns cache (#899)
* Bugfix : setting all fields to insns cache

* Bugfix
Fixing root cause, not setting opcode to 0 in default case

* Not resetting opcode to 0 in this case as well

* Finalizing bugfix
2017-04-21 21:20:17 +08:00
Nguyen Anh Quynh
2bf26fe448 python: add a debug line 2017-04-19 23:19:00 +08:00
Nguyen Anh Quynh
d702c9cb4d cleanup 2017-04-17 10:24:31 +08:00
el2ro
8084cd96d9 Fix for incorrect operand size in 64bit CALL / JMP when x66 prefix in use (#777) 2017-04-15 10:34:50 +08:00
szt
468b4b0b54 replace if-s in AArch64_AM_decodeAdvSIMDModImmType10 with lookup table (#552)
* replace if-s in AArch64_AM_decodeAdvSIMDModImmType10 with lookup table

Lookup table is much faster than bunch of if-s. If you don't like lookup tables, I have another proposal. See http://goo.gl/RjW1lr and compare generated machine code

* Smaller lookup table and shifting and bit mask used

* Update AArch64AddressingModes.h
2017-04-15 09:50:06 +08:00
David Zimmer
6fc1bb2a96 vb6 bindings added to credits.txt (#891)
* +vb6 bindings

* + vb6 bindings to credits.txt
2017-04-15 00:12:41 +08:00
Nguyen Anh Quynh
c1be98a695 add VB to README 2017-04-14 23:26:55 +08:00
David Zimmer
7b87851f25 +vb6 bindings (#889) 2017-04-14 23:23:08 +08:00
Nguyen Anh Quynh
8c7cee7022 PHP binding 2017-04-12 10:02:16 +08:00
Nguyen Anh Quynh
536e4a11a3 cstool: fix mips64 mode 2017-04-11 09:46:18 +08:00
Quang Nguyễn
5c96743735 Fix an integer overflow issue (#871)
* provide a validity check to prevent against Integer overflow conditions

* fix some style issues.

* provide a validity check in malloc() function to prevent against integer overflow conditions

* missing Ntintsafe.h

* use tabs for indentation
2017-03-20 20:13:14 +08:00
Nguyen Anh Quynh
d7948dd2e5 x86: support BND prefix. issue #872 2017-03-18 00:08:10 +08:00
Quang Nguyễn
a8bcdaf7b0 provide a validity check to prevent against Integer overflow conditions (#870)
* provide a validity check to prevent against Integer overflow conditions

* fix some style issues.
2017-03-13 23:34:48 +08:00
Nguyen Anh Quynh
c726ae2273 add nmake.bat 2017-03-13 15:06:32 +08:00
Nguyen Anh Quynh
c978ea26fb cstool: support armbe mode 2017-03-10 20:31:23 +08:00
Nguyen Anh Quynh
7869f1758f Update cs.c
remove a dead code, suggested by @vit9696 on #867
2017-03-08 20:57:33 +08:00
Nguyen Anh Quynh
37718a8bd1 Merge pull request #867 from vit9696/patch-1
Fix compilation from within a macOS kernel extension
2017-03-08 20:53:02 +08:00
vit9696
de45ea5775 fix compilation from within a macOS kernel extension 2017-03-08 14:40:22 +03:00
Nguyen Anh Quynh
fe5ecc6eba fix some warnings on VS2010 on redefining INTxx_MIN, INTxx_MAX 2017-03-06 14:40:30 +08:00
Nguyen Anh Quynh
b013c67f62 Merge pull request #865 from rhelmot/master
Add python prebuilt directory
2017-03-05 14:07:00 +08:00
Andrew Dutcher
425bf530f2 Add ability to copy prebuilt libraries from prebuilt directory during python build 2017-03-04 17:09:07 -08:00
Nguyen Anh Quynh
ef24b5e29a update ChangeLog 2017-03-02 22:21:24 +08:00
Nguyen Anh Quynh
f91b2c2470 arm64: fix immediate number in detail mode. see #860 2017-02-26 18:17:39 +08:00
Nguyen Anh Quynh
a143da537d CMake: bump version to 3.0.5 2017-02-26 10:45:16 +08:00
Nguyen Anh Quynh
6c4762ac91 x86: consistent register names ST0-ST7 with the asm output 2017-02-22 15:54:11 +08:00
Nguyen Anh Quynh
10be4e1292 arm64: rename enum arm64_mrs_reg to arm64_sysreg 2017-02-22 15:34:30 +08:00
Nguyen Anh Quynh
fd1599e279 arm: add IMM operand for printPostIdxImm8s4Operand(). issue #861 2017-02-22 09:26:54 +08:00
Nguyen Anh Quynh
fd15f64ceb Merge branch 'master' of https://github.com/aquynh/capstone 2017-02-19 21:27:30 +08:00
Nguyen Anh Quynh
14283f1556 ppc: print 0 offset for memory operand. see issue #856 2017-02-19 21:27:17 +08:00
Nguyen Anh Quynh
7b4535f746 x86: fix EAX operand for X86_MOV32ao32. fix issue #852 2017-02-09 16:29:13 +08:00