Commit Graph

581 Commits

Author SHA1 Message Date
lazymio 185a6fec9e
Bump bindings version to 2.0.0-rc7 2022-04-17 16:48:12 +02:00
lazymio 8fd9ee3dd0
Bump unicorn version 2022-04-17 16:47:37 +02:00
lazymio 5a79d7879c
Generate bindings 2022-04-16 17:50:32 +02:00
shuffle2 2912cd1e29
fix rust bindings build on windows (#1584)
Refine rust bindings.
2022-04-16 13:40:04 +02:00
lazymio a6f9fd17d5
Search cmake build root directory 2022-04-12 21:05:46 +02:00
lazymio e26953c06c
Fix rust static build 2022-04-12 19:15:14 +02:00
Henrik Tjäder d1372c28eb Make README code example compile 2022-04-06 13:31:12 +02:00
lazymio 2f113b11d1
Fix symbol clash on bunlded static libs 2022-04-04 11:24:59 +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
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
David Zimmer b1739c6a62
vb6 bindings: clarify Apache license as v2.0 (#1563) 2022-03-03 09:35:02 +08: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
Bet4 504b31b928 Update constants of bindings 2022-02-19 21:24:40 +08:00
lazymio 3ed9dbda13
Update bindings 2022-02-15 22:08:27 +01:00
lazymio c10639fd46
Bump version in bindings 2022-02-13 11:03:57 +01:00
lazymio 16e9efa4f5
Bump version 2022-02-13 09:56:10 +01:00
lazymio d503a69239
Merge pull request #1511 from bet4it/use_system_unicorn
Add use_system_unicorn feature in rust bindings
2022-02-12 22:57:01 +01:00
lazymio 9bf074d824
Remove armeb-softmmu and aarch64eb-softmmu for rust bindings 2022-02-12 14:18:01 +01:00
lazymio 15f3b58d9b
Implement coprocessor register read/write for python bindings 2022-02-11 23:03:56 +01:00
lazymio 89a1da9a33
Update bindings 2022-02-11 22:42:31 +01:00
Bet4 394f25b1fa rust: Add `get_handle` to expose unicorn handle 2022-01-23 08:22:09 +08:00
Bet4 2977c9ca47 Support to pass unicorn handle to rust through FFI 2022-01-21 22:37:15 +08:00
mio f57467e7ed
Generate bindings 2022-01-19 20:10:09 +01:00
mio c5ad3c318c
Sync with dev and resolve conflicts 2022-01-19 20:09:25 +01:00
Duncan Ogilvie d200eb4be6 Fix rust bindings 2022-01-18 21:33:22 +01:00
mio 7095605607
Merge branch 'dev' into systemz 2022-01-18 21:10:55 +01:00
mio c84dbac9a8
Rename build dir for python bindings 2022-01-18 20:15:28 +01:00
mio 28e791a37f
Add debug tracing feature
It's disabled by default, use -DUNICORN_TRACER=on to enable it
2022-01-18 19:35:43 +01:00
Bet4 5559c097d5 rust: Allow to remove self inside a hook 2022-01-17 21:56:33 +08:00
lazymio 06be6fdc24
Merge pull request #1537 from gerph/clear-pending-hook-exception-before-emulation
Clear Python pending hook exception before we enter the emulation.
2022-01-15 22:13:24 +01:00
lazymio 459a595a98
Merge branch 'dev' into s390x
Mostly for bindings update.
2022-01-15 20:56:39 +01:00
lazymio dfb0446137
Update bindings 2022-01-15 20:56:24 +01:00
Charles Ferguson 1ba59ed70a Clear Python pending hook exception before we enter the emulation.
The pending exception hook is set when the hook raised an exception
and wants to report it outside the emulation loop. However, it is
never cleared back to None. This means that after an exception is
raised in a hook, all subsequent execution (even if successful) will
raise the exception.

This change clears the exception before we start another emulation,
which should ensure that if we have _hook_exception set, it really
is from hooks in this emulation run.
2022-01-15 17:45:45 +00:00
lazymio 71f044ca50
Merge branch 'dev' into s390x 2022-01-10 15:17:42 +01:00
lazymio c671efe798
Update bindings 2022-01-05 22:00:59 +01:00
lazymio c4b4189857
Update bindings 2022-01-04 21:12:52 +01:00
Nguyen Anh Quynh 6813e4a042 bindings: update const_generator.py, and update all binding constants 2022-01-01 09:24:28 +08:00
mio 8b0285e135
Add python support for s390x 2022-01-01 00:58:10 +01:00
mio d5e0bff7d5
Fix rust build for s390x 2022-01-01 00:41:59 +01:00
lazymio 3184d3fcdf
Update python bindings 2021-12-22 20:46:14 +01:00
Bet4 3e9ae003b7 Add use_system_unicorn feature in rust bindings 2021-12-10 19:44:39 +08:00
Brandon Miller 2cc15c7260 Added SetCPUModel go binding
Go cannot use C macros directly, so I followed existing convention and
added a helper to uc.c to call the uc_ctl_set_cpu_model macro
2021-12-04 16:25:23 -05:00
Sven Bartscher 59fb8a2733 rust: Add RISCV CSR registers
The addition of these registers in the C base caused the rust values
for all floating point registers and the PC to point to some of the
CSR registers instead.
2021-11-30 16:09:24 +01:00
lazymio 10d88e89a5
Fix uc_version and bump again 2021-11-25 18:19:46 +01:00
lazymio 9a4d5d0be8
Bump bindings version to 2.0.0-rc5 2021-11-25 14:29:41 +01:00
Sven Bartscher a237505adb rust: Implement deallocation of MMIO callbacks
Previously the user data of MMIO callbacks would live until the end of
the containing Unicorn engine. Now they are deallocated once all
memory referencing those callbacks has been unmapped.
2021-11-24 12:15:20 +01:00
Sven Bartscher 20d97a0c00 Add map_mmio to rust bindings 2021-11-24 12:15:20 +01:00
mid-kid 2d665aa752 Accomodate for setting a different CMAKE_GENERATOR in the environment.
This makes sure the right build utility is called, depending on the
value of the CMAKE_GENERATOR environment.
2021-11-13 13:34:11 +01:00
lazymio fafec703e1
Merge pull request #1480 from domenukk/rust_bindings
Rust bindings improvements
2021-11-10 07:52:31 +01:00
lazymio 7f43e1de3e
Rename rust env to decide build dir 2021-11-10 07:51:07 +01:00
Dominik Maier 67cd9b1c2f fixed doc tests 2021-11-10 04:49:27 +01:00
Dominik Maier 7adcced19b cleanup 2021-11-10 04:26:56 +01:00
Dominik Maier 7873e60740 reverted unfinished commit 2021-11-10 04:21:30 +01:00
Dominik Maier a231440cf8 reverted build.rs 2021-11-10 04:14:56 +01:00
Dominik Maier 177b21c2af removed need for extra api; no_std 2021-11-10 04:11:14 +01:00
Dominik Maier 492779d7d4 fixed context 2021-11-09 16:19:27 +01:00
Dominik Maier 3b0ce89a7a missing pcs 2021-11-09 16:09:02 +01:00
Dominik Maier a3e139847d reapply missing changes 2021-11-09 16:04:59 +01:00
Dominik Maier 1f90734b12 No longer redownloads unicorn each cargo build 2021-11-09 15:51:11 +01:00
Dominik Maier d7ead41a51 fixed testcases 2021-11-09 14:49:18 +01:00
lazymio ec02eccb85
Fixup Rust CI 2021-11-09 00:58:13 +01:00
lazymio 0714fb5760
Bump bindings version 2021-11-09 00:23:19 +01:00
Dominik Maier 0dfc0cba1f removed duplicate 2021-11-08 19:39:15 +01:00
Dominik Maier a8f9655189 lifetime 2021-11-08 19:37:38 +01:00
Dominik Maier f8f0d4471f Unicorn rust bindings improvements 2021-11-08 19:34:53 +01:00
lazymio 9abbba173c
Update python bindings 2021-11-07 21:00:05 +01:00
George Hotz 8732cff287
add rpath and go.mod 2021-11-07 20:24:50 +01:00
lazymio 923b4ad3cc
Update python bindings 2021-11-04 21:47:30 +01:00
lazymio b9c0066a47
Format and naming 2021-11-04 20:04:57 +01:00
lazymio db90f39ac6
Generate bindings 2021-11-04 20:01:19 +01:00
lazymio 3dfec280c7
Merge and close #1161 2021-11-03 21:02:48 +01:00
Bet4 aaf340d9e4 Merge branch 'dev' into patch 2021-11-02 18:36:22 +08:00
lazymio 090686f8ed
uc_ctl proposal (#1473)
* Add uc_ctl

* Add comments

* Slightly changed for bindings generation

* Generate bindings
2021-10-30 10:45:32 +08:00
lazymio 9e1443013b
Fix gen_const 2021-10-26 13:10:59 +02:00
lazymio e695686c15
Remove AFL Integration by reverting 2021-10-26 11:22:21 +02:00
lazymio 17963ff4aa
Update python bindings for afl 2021-10-25 01:27:51 +02:00
lazymio f08b7d6b5b
Make gen_const work and updates constants 2021-10-25 00:57:32 +02:00
mio fbdd321afe
Remove useless import 2021-10-18 21:44:10 +02:00
mio 2463467302
Format the code 2021-10-18 21:41:19 +02:00
mio a1d5c5f1b0
Don't reply on git command 2021-10-18 21:39:59 +02:00
Bet4 c400924fe1
Merge branch 'dev' into patch 2021-10-17 18:18:09 +08:00
mio 15bcdf7cbc
Add documentation link 2021-10-17 03:36:58 +02:00
mio a11cd9c43f
Ready for rust bindings release 2021-10-17 03:26:40 +02:00
mio 6d0d0897f8
Fix Rust build and CI.
Add a test for ppc and fix ppc on windows.
2021-10-17 02:11:38 +02:00
mio c8eea0bcb3
Fix build.rs and tests 2021-10-16 21:21:12 +02:00
Bet4 5a97bf7f8f Update Rust constants to Unicorn2 2021-10-15 09:17:43 +08:00
Bet4 fe296d1c9e Improve Java bindings 2021-10-14 18:39:38 +08:00
insane-shane 47ecfc1b2c Handle exceptions raised in Python hook functions (#1387) 2021-10-12 08:35:52 +08:00
Peter Meerwald-Stadler 00b4a17c1b Fix some typos in include files (#1350) 2021-10-11 11:18:27 +08:00
smeng9 d1496f3700 Update binding list (#1349) 2021-10-11 11:17:49 +08:00
mio 8f7ecfe48b
Support configure threads by environment variable 2021-10-10 23:46:22 +02:00
Bet4 8120a11f24 Update dependencies of rust bindings 2021-10-06 22:43:14 +08:00
lazymio ad3c0a5b32
Bump python bindings version 2021-10-06 12:37:13 +02:00
mio 2474f9513b
Sync docs from wiki and remove cmake.sh 2021-10-05 15:26:13 +02:00
mio 5668fd9c42
Set zip_safe and is_pure to False and trigger another build 2021-10-05 15:11:59 +02:00
mio 59deed7484
Simply the setup.py 2021-10-05 14:46:04 +02:00