Commit Graph

2526 Commits

Author SHA1 Message Date
lazymio
2d68708244
Update CI for static builds 2022-04-12 19:08:35 +02:00
lazymio
ac04c02789
Refine static libs on Linux/MacOS 2022-04-12 18:49:15 +02:00
lazymio
469fc4c35a
Merge pull request #1587 from liyansong2018/dev
Fix https://github.com/unicorn-engine/unicorn/issues/1586
2022-04-11 10:44:10 +02:00
liyansong2018
9985974998 Fix https://github.com/unicorn-engine/unicorn/issues/1586 inner free 2022-04-11 15:48:11 +08:00
liyansong2018
a28d1dfbed Fix https://github.com/unicorn-engine/unicorn/issues/1586 2022-04-11 15:31:15 +08:00
Henrik Tjäder
d1372c28eb Make README code example compile 2022-04-06 13:31:12 +02:00
lazymio
e3d0a33ab8
Fix BE32 usermode address XOR 2022-04-05 11:55:58 +02:00
lazymio
7e64e620d2
Remove unassigned_io_write from ioport.c 2022-04-04 11:25:40 +02:00
lazymio
2f113b11d1
Fix symbol clash on bunlded static libs 2022-04-04 11:24:59 +02:00
lazymio
e188591695
Rename unicorn_static to unicorn-static 2022-04-04 10:54:35 +02:00
lazymio
4f0be88f01
Support macos 2022-04-04 10:24:07 +02:00
lazymio
82559cb9a7
Bundle static libraries 2022-04-04 10:24:07 +02:00
lazymio
da561f6164
Merge pull request #1581 from rose4096/dev
Fix clang-cl compile with CONFIG_INT128 in qemu
2022-04-03 23:41:22 +02:00
rose
fc0d9a82a5 Fix clang-cl compile with CONFIG_INT128 in qemu 2022-04-03 16:30:26 -04:00
lazymio
7e6d21d27c
Fix memory leak in code_gen_buffer 2022-04-03 21:44:09 +02:00
lazymio
ca81d46ad5
Merge pull request #1574 from nviennot/dev
Rust bindings for insn_invalid_hook
2022-04-03 10:27:00 +02:00
lazymio
ec808c94a7
Merge pull request #1575 from n1tram1/dev
Fix rust binding for insn_in hook callback
2022-04-03 00:42:45 +02:00
lazymio
6da43e268a
Merge pull request #1572 from iii-i/x86-holes
Add "holes" to where the removed x86 registers used to be
2022-04-03 00:42:08 +02:00
Martin Schmidt
9702e657a2 rust: return u32 from insn_in_hook callback 2022-03-26 15:41:37 +01:00
Nicolas Viennot
af8a409141 Rust bindings for insn_invalid_hook 2022-03-25 21:49:26 -04:00
Ilya Leoshkevich
28c4c665f0 Add "holes" to where the removed x86 registers used to be
A number of x86 registers were removed for #1440, causing a change in
numbering for many other registers. This is causing inconveniences at
the moment, e.g. it's not possible to use the Unicorn2 shared library
as a drop-in replacement for the Unicorn1 one.

Restore the old numbering.

Fixes #1492.
2022-03-22 11:31:58 +01:00
lazymio
966798fbf6
Merge pull request #1570 from iii-i/s390x-brasl-brcl
Merged, thanks!
2022-03-17 20:57:53 +01:00
Ilya Leoshkevich
7de130a5d7 s390x/tcg: Fix BRASL and BRCL with large negative offsets
This is a backport of the following upstream commits:
- commit fc3dd86a290a ("s390x/tcg: Fix BRASL with a large negative offset")
- commit 16ed5f14215b ("s390x/tcg: Fix BRCL with a large negative offset")

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
2022-03-17 14:23:57 +01:00
lazymio
3112cd920e
Add a test for nested uc_emu_start exits 2022-03-06 23:51:35 +01:00
lazymio
2a4e42f315
Fix test 2022-03-06 23:40:57 +01:00
lazymio
1eeab7bb02
Format code 2022-03-06 23:40:50 +01:00
lazymio
09b15e9071
Fix exits wrongly cleared in nested uc_emu_start 2022-03-06 23:40:34 +01:00
lazymio
12fa73f2b6
Generate check_exit_request for the first tb
Consider this case:

   t:inc ecx,
     inc edx,
     jmp t

It would generate exactly one block and TB chain will generate an inline
jump. If we don't check exit at the entry of the block, we will never be
terminated.

This test case is recorded in the commit message since it's a bit
painful to write multithread related code that builds on all platforms.
2022-03-05 22:42:41 +01:00
lazymio
b7bc13650c
Sync PC after we exit
We should sync PC if there is no UC_HOOK_CODE hook
2022-03-05 22:42:41 +01:00
lazymio
ce932e4c28
Update comments for uc_cb_insn_sys_t 2022-03-05 22:42:41 +01:00
David Zimmer
b1739c6a62
vb6 bindings: clarify Apache license as v2.0 (#1563) 2022-03-03 09:35:02 +08:00
lazymio
9f62c71094
Sync PC for SYS instruction hook 2022-02-27 15:30:27 +01:00
lazymio
7f8ff1af6a
Update sample for MRS hook 2022-02-27 15:28:32 +01:00
lazymio
dd96cab9bf
Update bindings 2022-02-27 15:28:32 +01:00
lazymio
e5207a1363
Implement UC_HOOK_INSN for aarch64 MRS/MSR/SYS/SYSL 2022-02-27 15:28:31 +01:00
lazymio
8e2f70a35b
Merge pull request #1559 from yrashk/aarch64-use-map-jit
Problem: Could not allocate dynamic translator buffer
2022-02-25 22:46:19 +01:00
lazymio
d946114dfe
Set EFLAGS correctly on startup 2022-02-25 22:44:42 +01:00
lazymio
186be25c40
Fix wrong mode in tests 2022-02-25 22:28:26 +01:00
lazymio
84e796494f
Format code 2022-02-25 22:24:25 +01:00
lazymio
45b5d7d8d2
Add test for caf2fe1ddb 2022-02-25 22:24:17 +01:00
lazymio
caf2fe1ddb
Clear state when exiting from uc_emu_start
This may cause unexpected result when we are in a nested uc_emu_start
2022-02-25 22:23:44 +01:00
lazymio
defb0135fe
MSVC doesn't really have atomic64 2022-02-23 20:22:54 +01:00
lazymio
ad4b56ad54
Remove armeb and aarcheb in configure 2022-02-22 15:28:16 +01:00
Yurii Rashkovskii
f652340bec Problem: Could not allocate dynamic translator buffer
`Could not allocate dynamic translator buffer` error while
trying to perform any memory-related operation.

This happens on aarch64 (MacBook Pro M1)

Solution: ensure aarch64 architecture is properly checked against

Fixes #1556
2022-02-20 07:46:30 -08:00
lazymio
051ae39f08
Merge pull request #1558 from bet4it/sc
Fix pc after ppc sc inst
2022-02-20 15:42:23 +01:00
Bet4
d96083d4d1 Fix pc after ppc sc inst 2022-02-20 20:42:46 +08:00
lazymio
fc4ca3b04f
Merge pull request #1554 from bet4it/const
Update constants of bindings
2022-02-19 21:27:40 +01:00
Bet4
504b31b928 Update constants of bindings 2022-02-19 21:24:40 +08:00
lazymio
cc45585e90
Use windows 2019 for pypi and cargo 2022-02-17 10:47:31 +01:00
lazymio
debdb66837
Use windows 2019 2022-02-17 10:39:02 +01:00