Commit Graph

3078 Commits

Author SHA1 Message Date
lockbox
c850db1125 Inherit architecture support from cfg features
While the bindings conditionally compile code based on the cfg
flags, we still include the architecture support in emitted rust
code. This patch removes the ability to refer to architectures
that cannot possibly be supported.
2024-03-27 17:30:53 -04:00
lockbox
30b99601d2 apply default rust 2021 formatting 2024-03-27 16:54:51 -04:00
lazymio
b4f2ac9aab
Merge pull request #1930 from lockbox/address-typo
Address typo in documentation of address in memory event callbacks
2024-03-20 13:52:31 +08:00
lockbox
321de00f36 [typo]: Correctly document address parameter in mem hook callbacks 2024-03-18 17:51:35 -04:00
lazymio
227ff1d8bd
Merge pull request #1928 from mlgiraud/feat/add_start_end_to_hook
Feature: Bindings: add start end to block hook
2024-03-11 19:50:46 +08:00
Mark Giraud
d4f5bf1be2
fix: Fix rust test that was missing a parameter 2024-03-11 12:31:54 +01:00
mio
e03109d8c9
Respect users' decision for UC_ERR_INSN_INVALID 2024-03-08 17:31:27 +08:00
mio
a9a54aed2f
Fix for xcode build 2024-03-08 17:28:46 +08:00
mio
4c4d582fcb
Also add _repr_ for UcReg 2024-03-08 17:07:08 +08:00
mio
13f17e5b3f
Apply repr for C structs 2024-03-08 16:48:31 +08:00
mio
9463d00c3e
Merge remote-tracking branch 'origin/dev' into dev 2024-03-08 16:20:58 +08:00
mio
dae2391bb0
Apply fix for linux2 2024-03-08 16:19:53 +08:00
mio
399f204787
Merge elicn's work 2024-03-08 16:16:12 +08:00
lazymio
0bca8df694
Merge pull request #1796 from bet4it/dylib
Fix dynamic linkage on msvc
2024-03-08 15:16:36 +08:00
lazymio
ba92f79c9e
Merge pull request #1823 from unicorn-engine/restore-py2
[RFC] Restore py2 compatibility by using 2 files
2024-03-08 15:12:24 +08:00
lazymio
d1da4de080
Merge pull request #1929 from xclusivor/master
Remove semicolons in python files
2024-03-08 15:10:58 +08:00
xclusivor
4a694d8a30 remove semicolons 2024-03-06 02:15:02 -05:00
Mark Giraud
00680412d3
feat: Add start and end address to rust block hook binding 2024-02-26 11:20:27 +01:00
mio
24f898fb58
Fix #1869 2024-02-15 15:22:32 +08:00
lazymio
8a1c8daca3
Add a comment 2024-02-13 19:11:22 +08:00
lazymio
71c729a9d7
Define HAVE_SPRR 2024-02-13 19:09:35 +08:00
lazymio
7012e4599b
Remove debugging session 2024-02-13 16:22:16 +08:00
lazymio
4245475514
Detect if we have valid pthread_jit_write_protect_np 2024-02-13 16:21:53 +08:00
lazymio
67deee7771
dbg 2024-02-13 14:46:08 +08:00
lazymio
b31081a105
Remove unused var 2024-02-13 14:38:48 +08:00
lazymio
aef3bd4a27
Fix defines in uc.c 2024-02-13 12:11:27 +08:00
lazymio
78ea3c8301
Fix m1 defines 2024-02-13 11:52:10 +08:00
lazymio
a4ba7c9dd5
Add inline 2024-02-13 11:48:24 +08:00
lazymio
591b562721
Fix defined 2024-02-13 11:38:49 +08:00
lazymio
a6fb2a6870
Save jit state before/after callback 2024-02-13 11:13:01 +08:00
lazymio
f3323469d0
Format 2024-02-12 00:10:58 +08:00
lazymio
822bb527f3
M1 W^X fully supported 2024-02-12 00:10:44 +08:00
lazymio
e915e18987
Add .cache 2024-02-12 00:10:08 +08:00
lazymio
f09f488356
Add macos aarch64 2024-02-11 13:19:25 +08:00
lazymio
f1e913d229
Fix python version 2024-02-11 12:58:58 +08:00
lazymio
48287d0675
Fix python aarch64 2024-02-11 12:50:59 +08:00
lazymio
3b5d1dfb4c
python aarch64 2024-02-11 12:41:53 +08:00
lazymio
23303994e7
Fix naming 2024-02-11 11:37:00 +08:00
lazymio
92175c2698
Fix macos actions 2024-02-11 11:35:03 +08:00
lazymio
98777f2801
m1 runner 2024-02-11 11:33:43 +08:00
lazymio
5e901baa06
Merge pull request #1922 from redoste/fix-do_nonatomic_op-signed
Backport from qemu : fix do_nonatomic_op_* vs signed operations
2024-01-25 11:11:39 +08:00
redoste
a070ea95af
Backport qemu/qemu@852f933
tcg: Fix do_nonatomic_op_* vs signed operations

The smin/smax/umin/umax operations require the operands to be
properly sign extended.  Do not drop the MO_SIGN bit from the
load, and additionally extend the val input.
2024-01-24 23:41:30 +01:00
lazymio
97beeb6fa1
Merge pull request #1920 from PhilippTakacs/fix_cow2
fix uc_mem write with cow when using upper half of the address
2024-01-16 20:29:02 +08:00
Takacs, Philipp
d9d2c4e581 fix uc_mem write with cow when using upper half of the address
uc->target_page_align is a uint32_t. When the binary not will only
invert the 32 bit of the value. Used this in a binary and operator with
a uint64_t will case the upper 32bit of the address to be 0. Therefor
the bug only appears when the upper 32bit of the address are used.

Now a local uint64_t variable is used for the alignemend and the test
uses a not page alligned address which does not fit in 32bit.
2024-01-15 14:20:29 +01:00
lazymio
5e39cc602a
Merge pull request #1919 from PhilippTakacs/fix_cow
fix cow when using uc_mem_write
2024-01-11 14:52:21 +08:00
Takacs, Philipp
8d3bf02041 fix cow when using uc_mem_write
memory_cow expect the address and size to be aligned on pagesize.
2024-01-10 15:54:46 +01:00
mio
e0eeda2362
Add arm for bad assert implementation 2024-01-03 18:07:04 +08:00
mio
3c64e9a9e7
Revert previous wrong fixes 2024-01-03 18:06:09 +08:00
mio
02e3cba4c4
HAVE_ATOMIC128 is defined as a number 2024-01-03 17:45:04 +08:00
mio
3cff3eb2d5
Don't rely on dead code elimination 2024-01-03 16:50:28 +08:00