Version history
Version 2.0.1
November 1, 2022
This release focuses on fixing minor issues in the core and some bindings. See our Github tag page for more details.
Version 2.0.0
July 7, 2022
See https://github.com/unicorn-engine/unicorn/releases/tag/2.0.0 for details
Version 1.0.3
May 26, 2021
- Fix some building issues
- Fix build with LLVM on Powerpc64(le)
- cmake: enable UNICORN_HAS_ARMEB when ARM is on
- Better support MingW building
- Better support FreeBSD host
- Better support VS2008/VS2010
- Fix some issues in the core:
- Fix wrong sync after UC_ERR_[READ, WRITE, FETCH]_[UNMAPPED, PROT]
- Support querying architecture mode besides arm
- Fix pausing within Thumb2 ITE blocks
- Arm:
- X86:
- Fix FPIP & FTST instructions
- Bindings:
- Java: remove deprecated javah and build with javac
- Python: handle exceptions raised in hook functions
- Rust binding
Version 1.0.2
October 21, 2020
- Various bugfixes for the core and bindings of all architectures.
- No longer require Python to build the core.
- Support read/write to many new registers of X86 & Arm64.
- Add new API: uc_context_free()
- Add new query type: UC_QUERY_TIMEOUT
- Better support for native Windows build
Version 1.0.1
April 20, 2017
- Properly handle selected-architecture build.
- Fix compilation issues on PPC & S390x.
- Fix a memory leak on uc_mem_protect().
- ARM:
- Support big-endian mode.
- Correct instruction size of Thumb/Thumb2 code.
- Support read/write APSR register.
- ARM64:
- Support read/write NEON registers.
- Support read/write NZCV registers.
- Mips: Support read/write Mips64 registers.
- X86: Support read/write MSR.
- Haskell binding: update to the latest API.
- Python: allow not having PATH setup.
Version 1.0
February 23, 2017
- Lots of bugfixes in all architectures.
- Fix many memory leaking issues.
- New APIs: uc_query, uc_reg_write_batch, uc_reg_read_batch, uc_mem_map_ptr, uc_mem_regions, uc_free, uc_context_alloc, uc_context_save & uc_context_restore.
- New memory hook type: UC_HOOK_MEM_READ_AFTER.
- Add new version macros UC_VERSION_MAJOR, UC_VERSION_MINOR, UC_VERSION_EXTRA.
- Remove glib & pkconfig dependency.
- Windows: export a static lib that can be used outside of Mingw.
- ARM:
- Support MCLASS cpu (Cortex-M3).
- Better support for Thumb mode.
- uc_reg_write now can modify CPSR register.
- Add some ARM coproc registers.
- ARM64: uc_reg_read & uc_reg_write now handles W0-W31 registers.
- X86:
- Fix 16bit address computation.
- Fix initial state of segment registers.
- Windows: fix a double free bug in uc_close.
- 3 new bindings: Haskell, MSVC, VB6.
- Python:
- Better support for Python3
- Fix memory leaking that prevents UC instances from being GC.
Version 0.9
October 15, 2015