Skip to content

Releases: capstone-engine/capstone

Version 5.0.1

23 Aug 01:58
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 5.0...5.0.1

Version 5.0

05 Jul 14:58
650e85d
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 4.0.1...5.0

Version 5.0 post1

05 Jul 15:36
Compare
Choose a tag to compare

This version exists to fix the issue of the same name that we yanked V5.0 on PyPI caused. The code is still the same as V5.0.

Full Changelog: 5.0...5.0-post1

Version 5.0-rc4

18 Jun 12:47
f5e3ecd
Compare
Choose a tag to compare
Version 5.0-rc4 Pre-release
Pre-release

What's Changed

Full Changelog: 5.0-rc3...5.0-rc4

Version 5.0-rc3

17 Jun 03:56
045171f
Compare
Choose a tag to compare
Version 5.0-rc3 Pre-release
Pre-release

What's Changed

New Contributors

Read more

Version 5.0-rc2

28 Feb 14:48
d5141c0
Compare
Choose a tag to compare
Version 5.0-rc2 Pre-release
Pre-release

Improvements:

  • Fix for python publish build (#1844)
  • Modernize CMake and switch to CMake 3.15 (#1841)
  • Fix AArch64 ldapr detailed information (#1840)
  • Fix incorrect MI->ac_idx leading to wrong AArch64 InsnOp access printing (#1845)

Contributors:

Version 5.0-rc1

27 Feb 15:11
5f20052
Compare
Choose a tag to compare
Version 5.0-rc1 Pre-release
Pre-release

New features:

Improvements:

  • Add fixups for aarch64 instructions (#1632 #1655)
  • Add fixups for x86 instructions (#1644 #1657 #1689 1751)
  • Add fixups for m68k instructions (#1663 #1709)
  • Add fixups for m680x instructions (#1695)
  • Add fixups for mips instructions (#1674)
  • Add fixups for mos65xx instructions (#1702)
  • Add fixups for systemz instructions (#1679)
  • Add fixups for risc-v instructions (#1682 #1690 #1691)
  • Add fixups for ppc instructions (#1687 #1688)
  • Add cmake config and export targets (#1637)
  • Fix issues in Makefiles (#1639)
  • Fix issues about cmake builds (#1649 #1659)
  • MSVC tooling updates (#1651)
  • Fix crash when using skipdata with NULL mnemonic(#1703)
  • Fix python only use ascii character (#1704)
  • Add support for aarch64 distributions (#1720)
  • Fix registry access for several versions of pop such as POPDS, POPSS, etc. (#1725)
  • Fix registry access on cmov instructions (#1727)
  • Fix -Wstringop-truncation warnings (#1730)
  • Fix always return the same type from regs_read (#1736)
  • Fix inconsistent behavior of Mips_option() (#1744)
  • Fix pythonic bug (#1745)
  • Fixes the (pip) Python Module build on FreeBSD (#1750)
  • Enable detection and build on all BSD systems (#1753)
  • Fix the displacement offset for moffset-encoded operands (#1754)
  • Update cmake_minimum_required to version 2.8.12 (#1756)
  • Fixed typos in compilation steps (#1762)
  • Fix build android (#1765)
  • Support disassembling bytes from memoryview (#1773)
  • Fixed library extension to build properly under CYGWIN (#1791)
  • Add Capstone Engine Documentation (#1794)
  • Fix eflags effects for adc/sbb (#1798)
  • Update x86 operand access information (#1801)
  • CI automatically build release tarball (#1802)
  • Dont format sstreams when there's nothing to format (#1805)
  • Fix warning about Unused variables (#1815)
  • Fix insn initialization when instruction have no operands or have a prefix (#1816)
  • Avoid abort() if x86 not supported (#1818)
  • Fix unterminated string regression (#1819)
  • Fixed incorrect operand access on x86 instruction vmovdqu (#1823)

Contributors:

Version 4.0.2

08 May 11:58
Compare
Choose a tag to compare

Release 4.0.2 is a stable release version, with bugfixes in the core & some bindings.

Core

  • Windows kernel-mode driver support
  • Fix installation path on FreeBSD and DragonFly

cstool

  • Add armv8, ppc32 & thumbv8 modes
  • Print instruction ID

X86

  • Support CS_OPT_UNSIGNED for ATT syntax
  • Fix operand size for some instructions
  • Fix LOCK prefixes
  • Recognize xacquire/xrelease prefix
  • Fix call/jmp access mode of mem operand
  • Add ENDBR32, ENDBR64 to reduce mode
  • Other minor fixes

ARM64

  • Support CS_OPT_UNSIGNED
  • Fix register access flags for memory instructions
  • Fix UMOV vess

ARM

  • Update writeback for STR_POST_REG

M68K

  • Store correct register value in op.reg_pair

PowerPC

  • BDZLA is absolute branch

SystemZ

  • Fix truncated 64bit imm operand
  • Fix base/index printing

Python

  • Fix skipdata struct being destroyed
  • Add repr for capstone.CsInsn

Java

  • Fix Java bindings to use pointers instead of longs

Ocaml

  • Fix x86_op record

Version 4.0.1

10 Jan 14:20
Compare
Choose a tag to compare

This release fixes some minor bugs of v4.0, as well as introduces some improvements for Python binding.

[ Core ]

  • Fix some issues for packaging (Debian, Gentoo).
  • Better support for building with Mingw.
  • cstool has new option -s to turn on skipdata mode.
  • cstool -v now report build settings of the core.
  • Add suite/capstone_get_setup.c so users can integrate with their own code
    to retrieve Capstone settings at build time.

[ Arm ]

  • Fix 4.0 regression: the tbh [r0, r1, lsl #1] instruction sets the operand.shift.value back again.
  • Remove ARM_REG_PC group for BX instruction.

[ X86 ]

  • Fix: endbr32 and endbr64 instructions are now properly decoded in both CS_MODE_32 and CS_MODE_64.

[ M680X ]

  • Fix some issues reported by clang-analyzer.

[ Python ]

  • Fix skipdata setup.
  • Add getter/setter for skipdata_mnem, skipdata_callback.

Version 4.0

18 Dec 17:02
Compare
Choose a tag to compare

[ Core ]

  • New APIs: cs_regs_access()
  • Add new options for cs_option(): CS_OPT_MNEMONIC & CS_OPT_UNSIGNED & CS_OPT_SYNTAX_MASM.
  • Various updates & bugfixes for all architectures.
  • Add 4 new architectures: EVM, M68K, M680X & TMS320C64x.
  • Add new group types: CS_GRP_PRIVILEGE & CS_GRP_BRANCH_RELATIVE.
  • Add new error types: CS_ERR_X86_MASM.

[ X86 ]

  • Add XOP code condition type in x86_xop_cc.
  • Add some info on encoding to cs_x86 in cs_x86_encoding.
  • Add register flags update in cs_x86.{eflags, fpu_flags}
  • Change cs_x86.disp type from int32_t to int64_t.
  • Add new groups: X86_GRP_VM & X86_GRP_FPU.
  • Lots of new instructions (AVX)

[ ARM64 ]

  • Add instruction ARM64_INS_NEGS & ARM64_INS_NGCS.

[ Mips ]

  • Add mode CS_MODE_MIPS2.

[ PPC ]

  • Change cs_ppc_op.imm type from int32_t to int64_t.
  • Add new groups: PPC_GRP_ICBT, PPC_GRP_P8ALTIVEC, PPC_GRP_P8VECTOR & PPC_GRP_QPX.
  • Lots of new instructions (QPX among them)

[ Sparc ]

  • Change cs_sparc_op.imm type from int32_t to int64_t.

[ Binding ]

  • New bindings: PowerShell & VB6