Commit Graph

2479 Commits

Author SHA1 Message Date
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
Nguyen Anh Quynh 3925b332ce Python: Automatically conform to PEP440 for version numbers. ported from Unicorn Python binding 2017-02-01 13:11:21 +08:00
Nguyen Anh Quynh c4b0030b3b switch endian mode with cs_option() for Arm/Arm64/Mips/Sparc. fix issue #849 2017-02-01 11:17:13 +08:00
Nguyen Anh Quynh 27ca16f14b Merge pull request #843 from JustEnuff2BDangerous/master
Patch for issue #842
2017-01-19 09:10:19 +08:00
JustEnuff2BDangerous 6d2c587536 Patch for issue #842
The SETEND instruction is a 16 bit Thumb instruction which is included
in T variants of ARMv6 and above, but is not available in M-Class cores
(see ARM Compiler toolchain Assembler Reference Ver 5.0).

To be consistent with other similar instructions its group flags have
been updated to be:

{ARM_GRP_THUMB, ARM_GRP_V6, ARM_GRP_NOTMCLASS,0}
2017-01-18 17:35:42 +00:00
Nguyen Anh Quynh c1f19ef166 x86: Fix the operand encoding in the test instruction for reduce set, issue #702 2017-01-03 01:30:34 +08:00
Nguyen Anh Quynh 9de18b3397 x86: Fix the operand encoding in the test instruction, issue #702 2017-01-03 01:09:15 +08:00
Nguyen Anh Quynh b7bee9fa2e Merge pull request #833 from 0xbc/fix_cstool_build_vs2012
Fix build under VS2012 (i.e. MSC_VER = 1700)
2016-12-21 10:59:50 +08:00
Ben Cheney 7efaf351d2 Fix build under VS2012 (i.e. MSC_VER = 1700)
cstool.c currently imports inttypes.h, which breaks
building on older Visual Studio versions (I've been
testing 2012). This commit removes the explicit include
of inttypes.h, which is already handled in platform.h
(which is included by capstone.h). A define for the
function strtoull (used by cstool) has also been added
to platform.h for the case where MSC_VER <= 1700.

I don't know what effect this will have on OS X builds
as I'm unable to test on that platform.

Also, cstool.c doesn't need to include stdio.h
because it's already included by capstone.h.
2016-12-21 13:12:32 +10:30
Nguyen Anh Quynh 213378e4b2 Merge pull request #817 from GBuella/fix_x86_rel_addr_macro
x86: fix X86_REL_ADDR macro - handle two-byte jump instructions
2016-11-22 10:20:13 +08:00
Gabor Buella 07dc190b7a x86: fix X86_REL_ADDR macro - handle two-byte jump instructions 2016-11-21 16:40:42 +01:00