Commit Graph

49 Commits

Author SHA1 Message Date
ba50035830 Format code 2022-05-23 12:30:44 +02:00
Ondřej Ondryáš
f3b776dd7d Support reads and writes over all Arm SIMD registers 2022-05-20 00:30:11 +02:00
b827ebf4c3 Format code 2022-05-07 00:30:18 +02:00
345b63ee96 Only exit TB if pc is within the memory range 2022-05-07 00:16:31 +02:00
b136f08f2d Check CPU model for uc_ctl 2022-04-16 17:49:47 +02:00
e3d0a33ab8 Fix BE32 usermode address XOR 2022-04-05 11:55:58 +02:00
9f62c71094 Sync PC for SYS instruction hook 2022-02-27 15:30:27 +01:00
e5207a1363 Implement UC_HOOK_INSN for aarch64 MRS/MSR/SYS/SYSL 2022-02-27 15:28:31 +01:00
e382ca102a Fix the regression bug 2022-02-13 09:52:00 +01:00
05b9a021dc Merge pull request #1453 from scribam/reg-read-write-fpscr
unicorn_arm: add reg_read/write operations for FPSCR and FPSID
2022-02-13 09:02:32 +01:00
52e0963cc7 Backward compatibility to enable full 64bits address space 2022-02-12 22:54:21 +01:00
81eb7da837 Backward compatibility for c13_c0_3 2022-02-12 22:31:10 +01:00
3c4477d622 Fix another undefined shift found by sanitizer 2022-02-12 19:57:19 +01:00
93c602ead1 FIx anohter undefined shift 2022-02-12 19:47:51 +01:00
e38b1c8af3 Fix the undefined shift 2022-02-12 19:37:32 +01:00
c2bb5c8838 Fix ns and s in cp reg encoding 2022-02-12 14:29:42 +01:00
58fc952230 Remove armeb-softmmu and aarch64eb-softmmu 2022-02-12 14:15:54 +01:00
f511d4a807 Also return error for context read/write 2022-02-11 22:19:03 +01:00
3e6665db00 Implement coprocessor register read/write for arm64 2022-02-11 22:13:01 +01:00
8bc1489210 Implement coprocessor register read/write for arm 2022-02-11 21:45:37 +01:00
ea9c7425b0 Fix the wrong PC when arm translation fectches unmapped memory
This behavior keeps the same with Unicorn1, though, different from arm doc
2022-01-16 16:42:38 +01:00
6ed2214399 Rebuilt hflags when swithing modes
Or we may get the wrong mode during translation
2022-01-14 19:37:48 +01:00
8ad9f8ecb1 This reverts Hack 05ba21160619724033ec83469bbb66bda9e3f5fb and applies the correct fix
And enable experimental v8 support for arm max cpu
2022-01-05 21:58:40 +01:00
c3a49766d8 Fix #1522 2022-01-05 20:02:41 +01:00
7a886f59df Fix #1525 2022-01-05 19:38:22 +01:00
47097b55b7 Fix #1520 2022-01-04 21:01:20 +01:00
scribam
039cd50187 unicorn_arm: add reg_read/write operations for FPSCR and FPSID 2022-01-04 11:36:06 +01:00
mio
085ee07c73 No more hard-coded cpu models 2021-12-30 01:05:10 +01:00
cddc9cf2ed Fix arm post init 2021-12-25 00:16:51 +01:00
4f73d75ea8 Fix #1500 2021-12-23 21:46:27 +01:00
221cde18df Write CPSR as it is initiated from instructions to allow regs switch 2021-11-24 17:10:51 +01:00
87a391d549 Inline uc_tracecode when there is only exactly one hook 2021-11-21 16:44:39 +01:00
23ef5da491 Merge pull request #1481 from bet4it/cp15
Restore cp15 registers
2021-11-09 16:50:31 +01:00
Bet4
acaed986b5 Restore cp15 registers 2021-11-09 13:13:08 +08:00
640251e1aa Leave out size parameter in callback 2021-11-09 00:21:34 +01:00
dfbffa44ec Support changing cpu model for ARM 2021-11-04 18:37:10 +01:00
6b5529fcb7 Merge pull request #1458 from bet4it/patch
Port some patches from Unicorn1 to Unicorn2
2021-11-03 20:59:42 +01:00
bcf85be86d Add a new hook type UC_HOOK_TCG_OPCODE 2021-11-03 01:46:24 +01:00
Bet4
aaf340d9e4 Merge branch 'dev' into patch 2021-11-02 18:36:22 +08:00
6c3960242b Format unicorn_arm and unicorn_aarch64 2021-11-01 10:17:58 +01:00
3dd2e0f95d Basic implementation of uc_ctl 2021-11-01 00:39:36 +01:00
e62b0ef255 Add clang-format and format code to qemu code style 2021-10-29 12:44:49 +02:00
e695686c15 Remove AFL Integration by reverting 2021-10-26 11:22:21 +02:00
7ac7c23c12 Fix Windows build for AFL integration 2021-10-25 16:11:58 +02:00
1fa2eb688b Fix UC_MODE_AFL and update config 2021-10-25 14:39:40 +02:00
dd7476a9bd Initial import unicornafl 2021-10-25 00:51:16 +02:00
Bet4
5f40667d91 Support querying architecture mode besides arm (#1389) 2021-10-11 11:39:23 +08:00
mio
ae1b6ad89b Support building on Android arm aarch64 x86 x86_64
1. Add cmake support in CMakeLists.txt according to https://developer.android.com/ndk/guides/other_build_systems

2. Resolve symbols errors

3. Backport fixes from 438ed42311

   > QEMU relies on two optimization for ppc64 and arm:
   >
   > 1. if(0) /* optimized code */
   > 2. assert(0); /* optimized code */
   >
   > But the assert on mingw32 doesn't have noreturn attribute which prevents
   > the second optimization and some code is reverted to the original code
   > to fit in the first optimization.
   >
   > The assert implementation is copied from glib as qemu did.

   Unfortunately, NDK also doesn't have an assert implementation qemu prefers.
2021-10-06 04:42:44 +08:00
Nguyen Anh Quynh
aaaea14214 import Unicorn2 2021-10-03 22:14:44 +08:00