3.0.4
July 15, 2015
Release 3.0.4 is a stable version with important fixes in the core & Python bindings.
Library
- Improve cross-compile for Android using Android NDK.
- Support cross-compile for AArch64 Android (with Linux GCC).
- Removed osxkernel_inttypes.h that is incompatible with BSD license.
- Make it possible to compile with CC having a space inside (like “ccache gcc”).
X86
- Fix a null pointer dereference bug on handling code with special prefixes.
- Properly handle AL/AX/EAX operand for OUT instruction in AT&T syntax.
- Print immediate operand in positive form in some algorithm instructions.
- Properly decode some SSE instructions.
Arm
- Fixed a memory corruption bug on IT instruction.
Mips
- Fixed instruction ID of SUBU instruction.
- Fixed a memory corruption bug.
PowerPC
- Fixed some memory corruption bugs.
XCore
- Fixed a memory corruption bug when instruction has a memory operand.
Python binding
- Support Virtualenv.
- setup.py supports option –user if not in a virtualenv to allow for local usage.
- Properly handle the destruction of Cs object in the case the shared library was already unloaded.