File unicorn.changes of Package unicorn
-------------------------------------------------------------------
Thu Jul 7 17:57:55 UTC 2022 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 2.0.0
Features:
* TriCore Support (#1568)
Fixes/Improvements:
* Build both shared library and static archive as unicorn1
does.
* Misc bindings improvements. #1569 #1600 #1609 #1613 #1616
* Make sure setjmp-setjmp-wrapper-win32 participates in the
build. #1604
* Improve Rust bindings build logic.
* Fix wrong python binding for UC_CTL_TB_REMOVE_CACHE
* Flush translation blocks when the count hook is removed.
* Fix unicorn crash when nested `uc_emu_start` deletes a hook
* Fix CPU not fully resumed when writing PC.
* Don't quit TB if `uc_mem_protect` doesn't change the
protection of current TB memory.
* Add type annotations for python bindings.
* Add CPUID hook for python bindings. #1618
* Don't repeat memory hooks if there is already an unhandled
error. #1618
* Support reads and writes over all Arm SIMD registers #1621
* Fix wrong registers range in python bindings.
* Fix uc_mem_protect on mmio regions
* Fix a UAF caused by hook cache.
* Fix the value collision between UC_MODE_ARMBE8 and
UC_MODE_ARM926
version 2.0.0 rc7:
Features:
* Correctly generate static archives for the static build and
have CI auto-tested.
* Rust bindings revised. #1584
* Compatible with clang-cl compiler. #1581
* Implement UC_HOOK_INSN for aarch64 MRS/MSR/SYS/SYSL
Fixes/Improvements:
* Several corner cases on our API. #1587 #1595
* Fix the codegen buffer leak.
* Rust bindins improvements. #1574 #1575
* Add "holes" to allow unicorn lib as a drop-in replacement
for older ones. #1572
* s390x backports. #1570
* Fix exits wrongly removed in nested uc_emu_start
* Fix a possible endless loop for only one translation block
in a multithreaded environment.
* Fix wrong PC without `UC_HOOK_CODE` installed.
* Update vb6 bindings license. #1563
* Fix buffer allocation failure on M1. #1559
* Fix wrong EFLAGS on startup.
* Fix wrong internal states on nested uc_emu_start.
* Remove armeb-softmmu and aarcheb-softmmu which are usermode
targets.
* Advance PPC32 PC. #1558
* Support UC_PPC_REG_CR.
* Update CI to windows-2019
version 2.0.0 rc6:
Features:
* SystemZ (aka. s390x) support. #1521 #1547
* CPUID hook now may return a bool to indicate whether
skipping the CPUID instruction.
* ARM/AARCH64 coprocessor registers read/write support. #889
Fixes/Improvements:
* Rust improvements. More registers enums #1504 Easier to use
#1543 #1545
* M68k improvements. #1507
* Golang improvements. Enable `uc_ctl_set_model` #1506
* Unit tests improvements. #1512
* Various ARM system mode fixes. #1500 #1520 #1525 #1531
* Read/write arm FPSCR and FPSID. #1453
* Fix the support for ARMv8
* Fix a large number of memory leaks and unicorn2 now goes
with google/oss-fuzz!
* Add more X87 registers. #1524
* Add more PPC registers.
* Fix the exception not cleared in python bindings. #1537
* Correctly support ARM big endian and drops `armeb-softmmu`
and `aarch64eb-softmmu`
* Fix ARM CPSR.E not reflected during runtime.
* Resolve fuzzing speed problem on macOS.
* Modernize CmakeFileLists.txt. #1544
* Fix an issue in nested `uc_emu_start`
version 2.0.0 rc5:
Fixes/Improvements:
* Rust bindings improvements. #1480 #1483
* Allow R/W to cp15 registers. #1481
* Fix `UC_HOOK_EDGE_GENERATED` not calling for indirect jumps.
* Python bindings build improvements. #1486
* Fix bindings on m1 macOS.
* Support nested `uc_emu_start` calls without context
save/restore
* Fix wrong MMIO offset for 32bit targets.
* Fix wrong `uc_mem_unmap` logic for both ram and mmio memory.
* Inline `uc_trace_code` and PC sync to improve performance.
* Various fixes in tests.
* Allow writing to CPSR to switch bank registers.
* Implement MMIO in rust bindings. #1499
version 2.0.0 rc4:
New Features:
* New API: uc_ctl, by which you could control CPU models, TB
caches or multiple exits etc.
* New Hook: UC_HOOK_EDGE_GENERATED, UC_HOOK_TCG_OPCODE
* RISCV CSR read/write.
* Support reading MIPS hi/lo regs.
7268c2a19bce2db72b90e3ea3b133482c3ff4e58
* OSS Fuzzing building support.
* MSVC 32bit and Android build support.
* Introduce clang-format.
Fixes/Improvements:
* Java bindings improvements. unicorn-engine/unicorn#1461
* API Documents updates. unicorn-engine/unicorn#1459
* Rust bindings improvements. unicorn-engine/unicorn#1462
* Add a go.mod for go bindings.
* CMakeLists.txt improvements as a subproject. #1373
* Fix rust bindings build script and add CI.
* Use binary search to find mappings.
unicorn-engine/unicorn#1414
* RISCV:
+ Update pc when exiting execution.
unicorn-engine/unicorn#1465
+ Add RISCV control status registers to enable floating.
unicorn-engine/unicorn#1469 unicorn-engine/unicorn#1478
+ After `ecall`, pc not advanced.
unicorn-engine/unicorn#1477
* Fix tb not invalidated when exiting.
* Fix bindings makefile.
* Fix uc_mem_protect not working. unicorn-engine/unicorn#1468
version 2.0.0 rc3:
* Support older Linux distribution, e.g. prior to Ubuntu 19.04
* Fix a memory leak in `uc_close`
* Support building on Android
* Support hooking CPUID instruction.
version 2.0.0 rc2:
* Set `zip_false` and `is_pure` to `False` to avoid issues on
some Linux distributions.
* Link to `libm` to make sure our libraries work.
* Support to read ST registers in rust bindings.
* Fix #1450
version 2.0.0 rc1:
* Based on Qemu 5.0.1
* Remain backward compatible with Unicorn 1.x
* Update ISA of all existing architectures
* Support 2 new architectures in PowerPC & RISCV
- Add static-devel subpackage
- Drop unicorn-pthread.patch and unicorn-aarch64.patch
-------------------------------------------------------------------
Wed May 26 17:35:07 UTC 2021 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 1.0.3
* Fix some building issues
+ Fix build with LLVM on Powerpc64(le)
+ cmake: enable UNICORN_HAS_ARMEB when ARM is on
* 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:
+ Support Arm BE8 mode
* 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:
* Fix Java binding compilation
* Enable building for ARM little-endian only (ignore
big-endian)
* Add uc_context_free() API
* Fix context saving/retoring API (core & Python binding)
* Add cmake option to build Unicorn as a static library
* Fix error handling of mmap()
* uc_emu_start() can be reentrant
* Fix naming conflicts when built with systemd
* Fix setjmp/longjmp on native Windows
* Fix enabled hooks even after deleting them
* X86:
+ Fix 64bit fstenv
+ Fix IP value of 16bit mode
+ Support read/write STn registers
+ Support read/write X64 base regs
* ARM:
+ Fix APSR handling
* ARM64:
+ Support some new registers
* Python: Remove UC_ERR_TIMEOUT
* No longer require Python to build
* Fix recursive UC_HOOK_MEM callbacks for cross pages access
* Remove UC_ERR_TIMEOUT, so timeout on uc_emu_start() is not
considered error
* Added UC_QUERY_TIMEOUT to query exit reason
* Fix UAF when deleting hook while in hook callback
* Ensure that hooks are unaffected by a request to stop
emulation.
* Fix block hooks being called twice after an early exit from
execution.
- Drop unicorn.gcc.patch (no longer necessary)
- Drop python2 subpackage
- Add unicorn-pthread.patch and unicorn-aarch64.patch
-------------------------------------------------------------------
Thu Apr 20 13:58:25 UTC 2017 - aloisio@gmx.com
- Update to version 1.0.1
* 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.
- Dropped unicorn-fix_aarch64_test.patch and
unicorn-fix_tcg.patch (merged upstream)
-------------------------------------------------------------------
Fri Feb 24 08:58:22 UTC 2017 - aloisio@gmx.com
- Initial package (1.0)