Commit Graph

5212 Commits

Author SHA1 Message Date
Rot127
926cfebd6b Architecture updater (auto-sync) - Updating PPC (#2013) 2023-09-05 12:24:59 +08:00
tkoecker
198e0ab391 fix compile errors in capstone_static - unresolved external symbols (#2148) 2023-08-30 11:13:17 +08:00
Rot127
b3dd5769a1 Set correct values for the MCRegisterInfo struct. (#2146) 2023-08-28 11:00:43 +08:00
Wu ChenXu
baa273038e Disable swift binding const generate (#2142) 2023-08-21 17:55:06 +08:00
chayleaf
2f81f7bef8 allow absolute CMAKE_INSTALL_*DIR (#2134)
This patch fixes Capstone 5 build on NixOS.

NixOS's build infrastructure sets CMAKE_INSTALL_{LIB,INCLUDE}DIR to
absolute paths. If you append it to ${prefix}, you get the wrong path.
NixOS automatically detects it and links this issue:
https://github.com/NixOS/nixpkgs/issues/144170
2023-08-09 23:05:06 +08:00
Farid Zakaria
0bf0ec5805 Add support for Python binding for diasm_iter (#2136)
* Add venv to the gitignore so I can test Python code

* add test_iter.py which is nearly identical to test_lite.py

* add support for test_iter.py in check; also add missing test_lite.py

* Add support for the disasm_iter C function
2023-08-09 23:04:19 +08:00
peace-maker
0134df14c4 Fix running cstest in CI (#2126)
* Fail CI if a command fails

* Apply cs_options in MC tests

* Emit a space if the alias has one at position I.

* Fix pop instruction tests.

* Update reglist patch and fix it again in ARMGenCSMappingInsnOps.inc

* Fix VSCCLRM* patch and write attributes.

* Emit new system operand formatting in tests

* Set new syntax in issues.cs

* Fix correct setting of neon lane

* Fix cstest arm SYSM operand type output

* Add implicit reads and writes of SP to POP and PUSH.

* Fix issue tests with new syntax and group names.

---------

Co-authored-by: Rot127 <unisono@quyllur.org>
2023-08-06 18:28:52 +08:00
peace-maker
4a7a55f62a Fix ARM Python bindings (#2127) 2023-07-29 08:34:17 +08:00
Bastian Koppelmann
489538fa05 Fixing TriCore disasm instructions (#2088) 2023-07-26 14:47:05 +08:00
Wu ChenXu
4637c1b014 Merge pull request #2096 from peace-maker/python_sh
Add Python bindings for SH
2023-07-24 19:49:10 +08:00
Wu ChenXu
150ce70142 Merge pull request #2122 from Rot127/arm-sysreg-mask
[ARM] Handle system operands in way more detail.
2023-07-24 19:48:26 +08:00
Rot127
539ab53fa8 Set correct SYSm value for BankedRegister 2023-07-24 02:52:59 -05:00
Rot127
8ab1fd5e89 Set correct registers. 2023-07-24 02:45:02 -05:00
Rot127
60ffd7fc84 Fix off by one error. Because detail would have one operand more. 2023-07-24 02:45:02 -05:00
Rot127
34a239b3e6 Handle system operands in way more detail.
- Differentiates between banked and non-banked registers.
- Saves the MSR mask.
- PSR field bits are saved separately.
- SYSm value is saved if possible.
2023-07-24 02:44:59 -05:00
Peace-Maker
a4699018fb Add Python bindings for SH 2023-07-24 05:44:48 +02:00
Wu ChenXu
2aa4eb559d Merge pull request #2123 from Rot127/next-branch-v6 2023-07-24 07:30:21 +08:00
Rot127
6635f5f82e Increment next branch version. 2023-07-23 11:23:52 -05:00
Rot127
b435499c2b Add Werror to compile options. (#2114) 2023-07-23 23:18:33 +08:00
Rot127
48cd538c95 [ARM] Remove LDM leftover code (#2115) 2023-07-23 23:18:17 +08:00
Wu ChenXu
c4947a9ec3 Merge pull request #2121 from Rot127/arm-implicit-reads
[ARM] Add CPSR implicit read for every instruction with predicate
2023-07-23 16:41:18 +08:00
Wu ChenXu
94b63af5cb Merge pull request #2119 from Rot127/arm-hard-coded-operands
Add more in LLVM hard coded operands.
2023-07-23 16:40:39 +08:00
Wu ChenXu
c06f83d17a Merge pull request #2116 from Rot127/sysreg-names 2023-07-23 09:14:53 +08:00
Rot127
235ac3ca4d Add forgotten check 2023-07-22 14:02:17 -05:00
Rot127
8b50621184 Formatting 2023-07-22 13:56:45 -05:00
Rot127
80961dac84 Add CPSR to implicit reads for every instruction which has a predicate. 2023-07-22 13:56:32 -05:00
Rot127
2b6cc3c67c Add more in LLVM hard coded operands. 2023-07-22 13:43:58 -05:00
Rot127
47cf68e312 Return firs the system register name.
Note: System registers and banked register encodings overlap.
So this might lead to problems. But cstool only asks for system registers.
So it should be fine for now.
2023-07-22 13:07:59 -05:00
Wu ChenXu
8a32e34d18 Merge pull request #2107 from Rot127/fix-arm
[ARM] Add missing detail check
2023-07-22 23:18:51 +08:00
Wu ChenXu
503009a8b0 Merge pull request #2112 from Rot127/arm-enum-conversion
Set sysop members by their C++ type name.
2023-07-22 23:17:31 +08:00
Wu ChenXu
8b6c3e2a56 Merge pull request #2111 from Rot127/arm-pop-alias
Add pop alias instruction for `t2LDR_POST`
2023-07-22 23:17:12 +08:00
Rot127
1142466810 Remove leftover code. 2023-07-22 10:00:34 -05:00
Rot127
c14c245986 Set sysop members by their C++ type name.
Prevents build warnings of implicit enum convertions.
2023-07-22 09:08:11 -05:00
Wu ChenXu
ff31c749a3 Merge pull request #2110 from Rot127/inter-os-printf-formatting-next 2023-07-22 20:41:52 +08:00
Rot127
4a6b6d85b5 Add pop alias instruction for t2LDR_POST 2023-07-22 06:46:02 -05:00
Rot127
6511ca8b1f Use OS independent printf formatting. 2023-07-22 04:19:22 -05:00
Rot127
fc32133bb0 Add check for present detail. 2023-07-21 10:42:26 -05:00
Wu ChenXu
bd003941a8 Merge pull request #2100 from peace-maker/sync_bindings
Sync Python bindings for x86, m68k, and mos65xx
2023-07-21 23:35:50 +08:00
Wu ChenXu
aab2aa85cd Merge pull request #2097 from peace-maker/update_python_constants
Update Python binding constants
2023-07-21 23:34:53 +08:00
Wu ChenXu
188356c1d5 Merge pull request #2095 from peace-maker/python_wasm
Add Python bindings for WASM
2023-07-21 23:32:22 +08:00
Anton Kochkov
d3a0e7ff99 ci: use cibuildwheel for python wheels (#2099)
* ci: use cibuildwheel for python wheels

* fix several issues

* fix setup.py

* fix issue

* Compatible with python2

* fix str

* trigger ci

---------

Co-authored-by: kabeor <kabeor00@gmail.com>
2023-07-21 23:15:46 +08:00
Wu ChenXu
c6c07e9731 Merge pull request #2103 from Rot127/fix-header-include
Fix #2101 - Install cs_operand.h as a public header file
2023-07-21 22:00:37 +08:00
Rot127
a96796d090 fix #2101 2023-07-21 04:04:08 -05:00
Peace-Maker
3175055ac2 Update Python bindings for mos65xx 2023-07-20 13:49:38 +02:00
Peace-Maker
e0ea140459 Update Python bindings for m68k 2023-07-20 13:49:31 +02:00
Peace-Maker
fd5c6b0adc Update Python bindings for x86 2023-07-20 13:49:14 +02:00
Wu ChenXu
e87bb5ec0d Merge pull request #2098 from XVilka/fix-windows-python-ci
ci: use proper job syntax for Windows
2023-07-20 10:56:26 +08:00
Anton Kochkov
ac7a365683 ci: use proper job syntax for Windows 2023-07-20 10:45:07 +08:00
Wu ChenXu
799aeca352 Merge pull request #2092 from Rot127/fix-build
[Workflows] Update manylinux docker images
2023-07-20 10:32:06 +08:00
Rot127
102a6bdc28 Bumb manylinux version to 2014 (x86) and 2_28 (x86_64) repectivly.
manylinux1 is EOL since 2 years. Just like Python 3.6
Fixes wheel build.
2023-07-19 11:13:25 -05:00