Commit Graph

5119 Commits

Author SHA1 Message Date
Wu ChenXu
a3fd6ac3a4
Revert "Remove python2 leftovers (#2378)" (#2391)
This reverts commit 60d5b7ec2f.
2024-06-24 16:42:27 +08:00
RainRat
33f24cd074
fix typos (#2387) 2024-06-19 18:54:05 +08:00
Rot127
1adc45f265
Use python3 as default interpreter for all python scripts (#2390) 2024-06-19 18:52:51 +08:00
dufucun
26fd839e74
chore: fix some comments (#2379)
Signed-off-by: dufucun <dufuchun@sohu.com>
Co-authored-by: dufucun <dufucunn@sohu.com>
2024-06-13 08:53:20 +08:00
Rot127
0a67596f70
Add test with ASAN enabled. (#2313)
* Add test with ASAN enabled.

* Fix leaks in cstool and cs.c

* Add work around so ASAN binaries don't DEADSIGNAL due to too many randomized address bits.

* Add ASAN build arguments to cstest

* Fix leaks in cstest

* Use cstest binary build by the main build.

* Add clonging step for cmocka when cstest is build

* Skip Python tests for ASAN

* Remove make build from CI

* Fix leaks in cstest.

- Rewrite split to remove leaks and improve runtime by 6%
- Add free()

* Fix cmocka external project to stable branch.

* Revert "Fix leaks in cstest."

This reverts commit bf8ee125b0c58f9c794eb081a69c80f8a71825cd.

* Fix memleaks in cstest

* Document adding of ASAN job to release guide

* Add CAPSTONE_BUILD_CSTEST to build docs

* Fix double free

* Add more detail tests to CI and fix them

* Initialize variables

* Fix typo

* Update cstest build docs

* Revert "Remove make build from CI"

This reverts commit 84f7360c6da6183cd41bec0fef3e1d0a2ee49ddf.

* Make cstest only run for cmake builds.

* Add cstest job for make build.

* Add CAPSTONE_DIET build test.

* Compile the compatibility header test with ASAN if enabled.

* Fix DIET build by excluding not used code.

* Missing "

* Build static library with ASAN and DIET if enabled.

* Revert "Add CAPSTONE_DIET build test."

This reverts commit 71e1469dee.
2024-06-10 10:01:00 +08:00
Rot127
03c41e1be4
Restructure auto-sync docs to have them more contained (#2355)
* Restructure auto-sync docs to have them more contained in suite/auto-sync

* Enhance Differ documentation

* Fix link and emphasize importance of ARCHITECTURE.md

* Add auto-syc intro.md document, based on @moste00 work

* Be consistent with Auto-Sync naming and use python3
2024-06-10 09:55:47 +08:00
Kevin Phoenix
60d5b7ec2f
Remove python2 leftovers (#2378)
* Remove python2 leftovers

* Remove python2 references from BUILDING.txt

* Remove some leftover install3 references
2024-06-09 17:29:50 +08:00
Rot127
1a6921f5cc
AArch64 compatibility header (#2321) 2024-05-31 20:07:03 +08:00
Rot127
3a6331b4c2
Fix Warning C4098: void returns value. (#2362) 2024-05-31 20:02:03 +08:00
Anton Kochkov
f6ed6efc9c
Mapping - return NULL if compiled with DIET (#2370) 2024-05-31 19:49:41 +08:00
Rot127
fe60b1371c
Apply #2360 to next (#2361) 2024-05-18 14:32:01 +08:00
Rot127
5f11d3c1fe
Typo and tree-sitter init fix (#2358) 2024-05-16 20:31:44 +08:00
Anton Kochkov
9987b86aa4
README: Mention Alpha and HPPA (#2357) 2024-05-14 09:57:19 +08:00
Florian Märkl
2ef45f2a73
Replace non-standard 0b(...) literals (#2314)
Despite being widely implemented and part of C++, the 0b prefix is not
part of any C standard and will be rejected by some compilers such as
Apple GCC 4.0.1 (5493).
2024-05-12 21:19:11 +08:00
RainRat
972bd066bb
fix typos (#2346)
* fix typos

* fix typos

* fix typos
2024-05-12 21:17:20 +08:00
Snoppy
3b18d7d2a4
chore: fix typos (#2328)
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Rot127 <45763064+Rot127@users.noreply.github.com>
2024-05-12 21:16:24 +08:00
Rot127
1a65b8db9e
Fix #2244: The offset for pseudo-instr. IDs was incorrectly applied for vcmp. (#2331) 2024-05-08 22:25:14 +08:00
Rot127
0002f10c99
Clang tidy quality of life (#2348) 2024-05-08 22:24:01 +08:00
Chen
9378216492
Rewrite str_replace using snprintf for security and fix clang-tidy (#2350) 2024-05-08 22:23:23 +08:00
Riccardo Schirone
f81eb3affa
Fix pkgconfig file to make #include <capstone/capstone.h> work (#2307) 2024-05-03 01:07:00 +08:00
Rot127
8f9a337dfa
Fix clang tidy (#2347) 2024-05-01 12:04:27 +08:00
RainRat
b91c727481
fix typos (#2344) 2024-04-30 10:37:53 +08:00
Rot127
b2d5b43ed2
Fix #2079 via the post-printer. (#2330) 2024-04-30 10:35:40 +08:00
Rot127
eb4fc2d761
Replace manually compile tree-sitter-cpp with their Python bindings. (#2337) 2024-04-26 15:16:00 +08:00
Rot127
514b8fca9c
Fix #2128 by adding missing mapping values. (#2335) 2024-04-26 15:12:42 +08:00
Rot127
6c7b54817f
Add a clang-tidy checks and warnings (#2312) 2024-04-26 15:11:46 +08:00
Shuyi Cheng
c4d0993071
Add eBPF bswap16/32/64 instruction (#2323) 2024-04-23 22:04:37 +08:00
Ced2911
e9284b6b36
check if decode[idx] is callable (#2322) 2024-04-23 21:58:40 +08:00
Florian Märkl
bf05d695dd
Fix cstool Makefile for non-C99-defaulting compilers (#2315) 2024-04-23 21:57:39 +08:00
careworry
16017d5f92
chore: remove repetitive words (#2326)
Signed-off-by: careworry <worrycare@outlook.com>

chore: remove repetitive words
2024-04-22 11:57:11 +08:00
Rot127
7746648f0b
[Auto-Sync] LLVM 18 update (#2296)
Refactor auto-sync updater

This refactors the auto-sync updater scripts, adds multiple tests and some other smaller things:

- Converts the updater in a proper Python package.
- Renaming was done to fit this new package structure.
- Format code with usort and black and enforce it with the CI.
- Add license information to auto-sync scripts.
- Update tree-sitter-cpp to v20.0.5
- Fix py-tree-sitter version to `< 0.22.0` due to https://github.com/tree-sitter/tree-sitter-cpp/issues/250
- Allow file/dir creation of non existing paths.
- Add CI tests for Patch, inc gen, translation and diff persistence testing.
- Implement editing of diffs with an editor.
- Fix: Add Namespace id also to anonymous enumeration members.
2024-04-22 11:55:44 +08:00
Rot127
24d99a907b
Weaken requirements to document functions. (#2324) 2024-04-18 23:51:49 +08:00
R3v0LT
a5cf15e556
HPPA dissassembler fix unitialized variables errors (#2309) 2024-04-10 13:49:43 +08:00
R3v0LT
cda40c6537
Fix invalid comparison with HPPA_OP_INVALID (#2300) 2024-03-29 16:46:00 +08:00
R3v0LT
9daa1ffbac
Add HPPA(PA-RISC) architecture (#2265)
* Refactor HPPA

* Add full HPPA 1.1 instructions support

* Add HPPA 1.1 cs tests

* Fix HPPA dissassembler

* Add HPPA 2.0 instructions

* Add HPPA tests

* Fix HPPA disasm & printer

* Update HPPA tests

* Remove unused code

* Add implicit register access info & Refactor HPPA main files

* Add python bindings/tests and cstests

* Fix HPPA disasm wrong decoding

* Rewrite invalid test cases

* Update HPPA python constants

* Make HPPA python test executable

* Change HPPA python tests sequence to match c tests

* Refactor HPPA main files

* Write target instead of offset in details

* Add HPPA detail function support in cstest

* Rewrite targets in branch tests

* Make correct string modifier addition

* Add hppa test calls

* Add zero operands check

* Remove MCOperand array

* Change immediate values printing

* Add HPPA 2.0 wide support

* Fix invalid break instruction decode

Remove unused code

* Add HPPA to fuzzing tests

* Add HPPA to options

* Add HPPA to docs

* Refactor HPPA

* Fix invalid branch insn decoding

* Add HPPA to labeler

* clang-format hppa files

* Document internal structures and minor refactoring

* Add missing default statements

* Fix invalid default statement
2024-03-26 13:58:56 +08:00
James Kang
0d12bcacd7
Remove repetitive words (#2297) 2024-03-23 19:42:19 +08:00
Yudi Zheng
5d9942d13f
Avoid random access values for operands in not-yet-specified instructions. (#2259) 2024-03-21 13:33:30 +08:00
Wu ChenXu
989dca2a28
Add telegram group link to README.md 2024-03-20 19:20:40 +08:00
Rot127
3ef564bcf4
Add issue and PR templates (#2294)
* Add PR template.

* Add issue templates.
2024-03-20 16:57:52 +08:00
Rot127
b4fde983de
[PPC] Expose instruction formats (#2276)
* Expose PPC formats in PPC details

* Add PPC format note in v6 release guide.

* Update python bindings
2024-02-23 13:20:46 +08:00
Rot127
122348ba47
[CMake] Architecture definition fix (#2272)
* Enble all archs only if CAPSTONE_USE_ARCH_REGISTRATION=false

* Add a test if cstool reaches each disassembler engine.

* Move cstool test to sh file.
2024-02-23 13:20:00 +08:00
Sevan Janiyan
1c238b6491
Makefile: Improve Apple detection (#2263)
* Makefile: Improve Apple detection

__APPLE__ is always defined & set to 1 on Darwin.

* HACK.TXT: wording
2024-02-23 13:18:53 +08:00
Rot127
215eae8e54
Fix incorrect alignment of labels. (#2277) 2024-02-22 11:01:05 +08:00
Rot127
34a1e012b7
Fix OOB read and wries (#2273)
* Fix OOB read due to wrong macro in use.

* Fix OOB write for regs_write and replace hardcoded values.
2024-02-18 13:03:05 +08:00
Rot127
336171c333
Fix #2233 (#2267) 2024-02-15 15:53:45 +08:00
Xeonacid
d63211e3ac
Drop distutils in python binding (#2271) 2024-02-15 15:53:25 +08:00
Rot127
330d81d5d0
Make helper functions static to prevent multiple defintions. (#2266) 2024-02-15 15:51:46 +08:00
Wu ChenXu
6a55ef3bda
Fix: cibuildwheel broken on windows build
Ref: https://github.com/pypa/cibuildwheel/issues/1748
2024-02-11 22:49:14 +08:00
Khairul Azhar Kasmiran
cb2b87974d
auto-sync BitCastStdArray.py: Transform to union instead (#2257)
* auto-sync BitCastStdArray.py: Transform to `union` instead

* Do `typeof` manually for MSVC
2024-01-24 11:08:25 +08:00
Ole André Vadla Ravnås
eaf6d7ab67
Fix compilation with CAPSTONE_X86_REDUCE (#2256)
Fixes #1955.
2024-01-24 11:07:03 +08:00