capstone/suite
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
..
arm Add Werror to compile options. (#2114) 2023-07-23 23:18:33 +08:00
auto-sync Restructure auto-sync docs to have them more contained (#2355) 2024-06-10 09:55:47 +08:00
benchmark update .gitignore 2022-01-04 23:47:08 +08:00
cstest Add test with ASAN enabled. (#2313) 2024-06-10 10:01:00 +08:00
fuzz fix typos (#2344) 2024-04-30 10:37:53 +08:00
MC Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
regress Fix register accesses & operands of multiple PAC instructions 2023-05-16 14:10:00 +02:00
synctools fix typos (#2346) 2024-05-12 21:17:20 +08:00
x86 suite: add some tools to verify X86 machine code 2015-01-06 13:11:04 +07:00
autogen_x86imm.py fix typos (#2344) 2024-04-30 10:37:53 +08:00
benchmark.py Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
capstone_get_setup.c Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
compile_all.sh Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
disasm_mc.py Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
disasm_mc.sh fix typos (#2344) 2024-04-30 10:37:53 +08:00
fuzz.py Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
gencstest.py Update tests and inc files 2023-07-01 16:26:54 +08:00
patch_major_os_version.py suite: correct authors of patch_major_os_version.py 2015-05-06 10:40:20 +08:00
ppcbranch.py suite: chmod +x ppcbranch.py 2014-10-01 18:17:37 +08:00
python_capstone_setup.py suite: add python_capstone_setup.py 2015-06-07 15:55:05 +08:00
README suite: add testsuite tool 'test_mc.sh' to compare output of Capstone & LLVM 2014-11-07 17:24:01 +08:00
regress.py Test suite update (#926) 2017-05-12 07:05:11 +07:00
run_invalid_cstool.sh Add test with ASAN enabled. (#2313) 2024-06-10 10:01:00 +08:00
test_all.sh add ci_test steps&&Fixed suite test for python3 2021-11-23 12:27:39 +08:00
test_c.sh Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
test_corpus3.py Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
test_corpus.py Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
test_group_name.py Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
test_mc.py Architecture updater (auto-sync) - Updating AArch64 (#2026) 2023-11-15 12:12:14 +08:00
test_mc.sh fix typos (#2344) 2024-04-30 10:37:53 +08:00
test_python.sh Add HPPA(PA-RISC) architecture (#2265) 2024-03-26 13:58:56 +08:00
x86odd.py suite: add crc32 instruction to x86odd.py 2014-11-16 19:48:41 +08:00

This directory contains some tools used by developers of Capstone project.
Average users should ignore all the contents here.


- arm/
	Test some ARM's special input.

- MC/
	Input used to test various architectures & modes.

- benchmark.py
	This script benchmarks Python binding by disassembling some random code.

- test_*.sh
	Run all the tests and send the output to external file to be compared later.
	This is useful when we want to verify if a commit (wrongly) changes
	the disassemble result.

- compile_all.sh
	Compile Capstone for all platforms (*nix32, clang, cygwin, cross-compile) &
	report the result as pass or fail.

- fuzz.py
	This simple script disassembles random code for all archs (or selected arch)
	in order to find segfaults.

- test_mc.sh
    This script compares the output of Capstone with LLVM's llvm-mc with the
	input coming from MC/. This relies on test_mc.py to do all the hard works.

- x86odd.py
	Test some tricky X86 instructions.

- ppcbranch.py
	Test some tricky branch PPC instructions.