Skip to content

Commit 66b0843

Browse files
kabeorRot127thestr4ng3rimbillowAndrewQuijano
authored
Update to Version 6.0.0-Alpha2 (#2554)
* Update changelog for V6.0.0-Alpha1 (#2493) * update version to v6-alpha1 * update bindings const values * Update changelog for V6.0.0-Alpha1 * Remove irrelevant changes. (#2495) * Fixing UB santizer, `LITBASE` and assert errors. (#2499) * Update labeler with Xtensa and v6 files. (#2500) * Add hard asserts to all SStream functions and memset MCInst. (#2501) * Only trigger on released action. (#2497) * Fix cstest build with Ninja (#2506) * Tricore EA calculation (#2504) * Update libcyaml dependency in cstest to 1.4.2 (#2508) * AArch64: Replace vararg add_cs_detail by multiple concrete functions Fixes UB caused by various mismatches on how these arguments are passed and read. This became visible when running on PowerPC hosts with e.g. `cstool -d aarch64 204862f8`. Apart from the UB fix, this is meant to be a pure refactor. Partially addresses #2458 * xtensa: Fix Branch Target (#2516) * xtensa: Fix Branch Target * auto-sync: fix byte pattern * xtensa: add branch insn tests * Revert "auto-sync: fix byte pattern" This reverts commit cf8e870. * Fix #2509. (#2510) Compatibility headers should always include the header in the same dir. * Fix stringop-truncation warning some compilers raise. (#2522) * Add CC and VAS compatibility macros (#2525) * Fix endianess issue during assignment. (#2528) * This time actually fix big endian issue. (#2530) * tricore: fixes #2474 (#2523) * tricore: fix auto-sync tricore * tricore: fixes TriCoreGenCSMappingInsnName.inc * tricore: fixes * tricore: try fix ld.a SC * tricore: fixes all * Add TriCore to .github/workflows/auto-sync.yaml * Add TriCore details tests(a15, d15, a10|sp) * Change CI to create Debian Package to Release (#2521) * Updating CI to create Debian package and version is assigned by tag version. Also updating release CI to not use end-of-life workflows * Clear up usage of static libraries. - Python bindings only use the dynamic lib. But built and copied the static ones sometimes nonetheless. - Add toggles to build only static, static/dyn or only dynamic. --------- Co-authored-by: Rot127 <[email protected]> * Rename build arguments: (#2534) - BUILD_SHARED_LIBS -> CAPSTONE_BUILD_SHARED_LIBS - BUILD_STATIC_LIBS -> CAPSTONE_BUILD_STATIC_LIBS - BUILD_STATIC_LIBS -> CAPSTONE_BUILD_STATIC_MSVC_RUNTIME * xtensa: update to espressif/llvm-project (#2533) * fix coverity (#2546) - cid 514642 - cid 514643 - cid 514644 - cid 514645 * Move debian package generation to a dispatch only workflow (#2543) * Move deb package gen files int package/deb * Fix basename check * Make debian package generation dispatch only * Python package building rework (#2538) * - Refactored setup.py to remove hacks regarding packaging of wheels for different platforms, improve and cleanup the code - Updated README.txt - Removed old Makefile and build_wheel.sh scripts - Created a new workflow that takes care of building and testing python packages for different platforms/architectures/python versions * Added SPDX headers to the setup.py * - cstest_py: Fixed positional argument since it doesn't accept a `required` flag. It turns to have a mandatory tests folder path - integration_tests.py: Use pathlib to determine the required path - GitHub action: Simplified the tests execution command * GitHub Actions: Run python 3.8 (lowest) and 3.13 (current highest) for native runners only during testings and the rest during tag release * GitHub Action: - Fixed the cibw_build matrix element - Added a step to prepare artifact name * GitHub Action: Added run_tests.py script to run all tests during CI workflow * - Added SPDX headers to the run_tests.py script and to the build-wheels-publish.yml workflow file - Minor fixes to the workflow as pointed out in the PR review - Updated MANIFEST.in to reflect the actual libraries built during python wheel creation process - Use subprocess.run in place of os.system in run_tests.py script * GitHub Action: - Run qemu step only if non-native Linux runner - Added arch:universal2 matrix element for macos-latest runner * Python bindings: Refreshed the list of files needed to be copied for sdist archive * GitHub Action: Commented out arch:x86 matrix elements * GitHub Action: Run qemu step only if non-native Linux runner * GitHub Action: Minor fixes * Python bindings: Added missing .in pattern when collecting src files for sdist archive * Auto-Sync reproducability + ARM update (#2532) * fix xtensa DecodeMR23RegisterClass and add tests for MAC16 instru… (#2551) * fix xtensa `DecodeMR23RegisterClass` and add tests for `MAC16` instructions * revert * Prepare for update (#2552) * Bindings(chore): Fix DeprecationWarning * Version(upgrade): update bindings const * Fix(chore): Fix ARMCC_Invalid is not defined * Update Changelog Version to 6.0.0-Alpha2 (#2553) * Bindings(chore): Fix DeprecationWarning * Version(upgrade): update bindings const * Fix(chore): Fix ARMCC_Invalid is not defined * Changelog: Update to version 6.0.0-Alpha2 --------- Co-authored-by: Rot127 <[email protected]> Co-authored-by: Florian Märkl <[email protected]> Co-authored-by: billow <[email protected]> Co-authored-by: Andrew <[email protected]> Co-authored-by: Rot127 <[email protected]> Co-authored-by: @Antelox <[email protected]>
1 parent 97db712 commit 66b0843

File tree

175 files changed

+172981
-250958
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

175 files changed

+172981
-250958
lines changed

.dockerignore

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Ignore source control directories
2+
.git
3+
.svn
4+
5+
# Ignore build directories
6+
build
7+
dist
8+
9+
# Ignore dependency directories
10+
node_modules
11+
vendor
12+
13+
# Ignore temporary files
14+
*.log
15+
*.tmp
16+
17+
# Ignore environment files
18+
.env
19+
20+
# Ignore tests
21+
tests

.gitattributes

+3
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
11
/arch/**/*.inc linguist-language=C
2+
3+
# Ensure shell scripts have LF line endings
4+
*.sh text eol=lf

.github/labeler.yml

+43-21
Original file line numberDiff line numberDiff line change
@@ -28,139 +28,161 @@ ARM:
2828
- cstool/cstool_arm.c
2929
- include/capstone/arm.h
3030
- suite/MC/ARM/**
31-
- tests/test_arm.c
31+
- tests/MC/ARM/**
32+
- tests/details/arm.yaml
3233

3334
AArch64:
3435
- arch/AArch64/**
3536
- cstool/cstool_aarch64.c
3637
- include/capstone/aarch64.h
38+
- include/capstone/arm64.h
3739
- suite/MC/AArch64/**
38-
- tests/test_aarch64.c
40+
- tests/MC/AArch64/**
41+
- tests/details/aarch64.yaml
3942

4043
Alpha:
4144
- arch/Alpha/**
4245
- cstool/cstool_alpha.c
4346
- include/capstone/alpha.h
4447
- suite/MC/Alpha/**
45-
- tests/test_alpha.c
48+
- tests/MC/Alpha/**
49+
- tests/details/alpha.yaml
4650

4751
BPF:
4852
- arch/BPF/**
4953
- cstool/cstool_bpf.c
5054
- include/capstone/bpf.h
5155
- suite/MC/BPF/**
52-
- tests/test_bpf.c
56+
- tests/MC/BPF/**
57+
- tests/details/bpf.yaml
5358

5459
EVM:
5560
- arch/EVM/**
5661
- cstool/cstool_evm.c
5762
- include/capstone/evm.h
58-
- tests/test_evm.c
63+
- tests/details/evm.yaml
5964

6065
HPPA:
6166
- arch/HPPA/**
6267
- cstool/cstool_hppa.c
6368
- include/capstone/hppa.h
6469
- suite/MC/HPPA/**
65-
- tests/test_hppa.c
70+
- tests/MC/HPPA/**
71+
- tests/details/hppa.yaml
6672

6773
LoongArch:
6874
- arch/LoongArch/**
6975
- cstool/cstool_loongarch.c
7076
- include/capstone/loongarch.h
7177
- suite/MC/LoongArch/**
72-
- tests/test_loongarch.c
78+
- tests/MC/LoongArch/**
79+
- tests/details/loongarch.yaml
7380

7481
M680X:
7582
- arch/M680X/**
7683
- cstool/cstool_m680x.c
7784
- include/capstone/m680x.h
78-
- tests/test_m680x.c
85+
- tests/details/m680x.yaml
7986

8087
M68K:
8188
- arch/M68K/**
8289
- cstool/cstool_m68k.c
8390
- include/capstone/m68k.h
84-
- tests/test_m68k.c
91+
- tests/details/m68k.yaml
8592

8693
MOS65XX:
8794
- arch/MOS65XX/**
8895
- cstool/cstool_mos65xx.c
8996
- include/capstone/mos65xx.h
90-
- tests/test_mos65xx.c
97+
- tests/details/mos65xx.yaml
9198

9299
Mips:
93100
- arch/Mips/**
94101
- cstool/cstool_mips.c
95102
- include/capstone/mips.h
96103
- suite/MC/Mips/**
97-
- tests/test_mips.c
104+
- tests/MC/Mips/**
105+
- tests/details/mips.yaml
98106

99107
PowerPC:
100108
- arch/PowerPC/**
101109
- cstool/cstool_powerpc.c
102110
- include/capstone/ppc.h
103111
- suite/MC/PowerPC/**
104-
- tests/test_powerpc.c
112+
- tests/MC/PowerPC/**
113+
- tests/details/ppc.yaml
105114

106115
RISCV:
107116
- arch/RISCV/**
108117
- cstool/cstool_riscv.c
109118
- include/capstone/riscv.h
110119
- suite/MC/RISCV/**
111-
- tests/test_riscv.c
120+
- tests/MC/RISCV/**
121+
- tests/details/riscv.yaml
112122

113123
SH:
114124
- arch/SH/**
115125
- cstool/cstool_sh.c
116126
- include/capstone/sh.h
117-
- tests/test_sh.c
127+
- tests/details/sh.yaml
118128

119129
Sparc:
120130
- arch/Sparc/**
121131
- cstool/cstool_sparc.c
122132
- include/capstone/sparc.h
123133
- suite/MC/Sparc/**
124-
- tests/test_sparc.c
134+
- tests/MC/Sparc/**
135+
- tests/details/sparc.yaml
125136

126137
SystemZ:
127138
- arch/SystemZ/**
128139
- cstool/cstool_systemz.c
129140
- include/capstone/systemz.h
141+
- include/capstone/systemz_compatibility.h
130142
- suite/MC/SystemZ/**
131-
- tests/test_systemz.c
143+
- tests/MC/SystemZ/**
144+
- tests/details/systemz.yaml
132145

133146
TMS320C64x:
134147
- arch/TMS320C6x/**
135148
- cstool/cstool_tms320c64x.c
136149
- include/capstone/tms320x64x.h
137-
- tests/test_tms320c64x.c
150+
- tests/details/tms320c64x.yaml
138151

139152
TriCore:
140153
- arch/TriCore/**
141154
- cstool/cstool_tricore.c
142155
- include/capstone/tricore.h
143156
- suite/MC/Tricore/**
144-
- tests/test_tricore.c
157+
- tests/MC/Tricore/**
158+
- tests/details/tricore.yaml
145159

146160
WASM:
147161
- arch/WASM/**
148162
- cstool/cstool_wasm.c
149163
- include/capstone/wasm.h
150-
- tests/test_wasm.c
164+
- tests/details/wasm.yaml
151165

152166
X86:
153167
- arch/X86/**
154168
- cstool/cstool_x86.c
155169
- include/capstone/x86.h
156170
- suite/MC/X86/**
157-
- tests/test_x86.c
171+
- tests/MC/X86/**
172+
- tests/details/x86.yaml
158173

159174
XCore:
160175
- arch/XCore/**
161176
- cstool/cstool_xcore.c
162177
- include/capstone/xcore.h
163-
- tests/test_xcore.c
178+
- tests/details/xcore.yaml
179+
180+
Xtensa:
181+
- arch/Xtensa/**
182+
- cstool/cstool_xtensa.c
183+
- include/capstone/xtensa.h
184+
- tests/MC/Xtensa/**
185+
- tests/details/xtensa.yaml
164186

165187
python:
166188
- bindings/python/**

.github/workflows/CITest.yml

+6-3
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ concurrency:
2424

2525
env:
2626
CI: true
27+
UBSAN_OPTIONS: "halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1"
28+
ASAN_OPTIONS: "halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1"
29+
LSAN_OPTIONS: "halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1"
2730

2831
jobs:
2932
Linux:
@@ -86,10 +89,10 @@ jobs:
8689
mkdir build && cd build
8790
# build static library
8891
cmake -DCAPSTONE_INSTALL=1 -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_ASAN=${asan} -DCAPSTONE_BUILD_DIET=${diet_build} ..
89-
cmake --build . --config Release
92+
cmake --build . --config Debug
9093
# build shared library
91-
cmake -DCAPSTONE_INSTALL=1 -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=/usr -DCAPSTONE_BUILD_CSTEST=ON -DENABLE_ASAN=${asan} ..
92-
sudo cmake --build . --config Release --target install
94+
cmake -DCAPSTONE_INSTALL=1 -DCAPSTONE_BUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=/usr -DCAPSTONE_BUILD_CSTEST=ON -DENABLE_ASAN=${asan} ..
95+
sudo cmake --build . --config Debug --target install
9396
9497
- name: Lower number of KASL randomized address bits
9598
run: |

.github/workflows/auto-sync.yml

+2
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ jobs:
8080
./src/autosync/ASUpdater.py -d -a Mips -s IncGen
8181
./src/autosync/ASUpdater.py -d -a SystemZ -s IncGen
8282
./src/autosync/ASUpdater.py -d -a Xtensa -s IncGen
83+
./src/autosync/ASUpdater.py -d -a TriCore -s IncGen
8384
8485
- name: CppTranslator - Patch tests
8586
run: |
@@ -98,3 +99,4 @@ jobs:
9899
./src/autosync/ASUpdater.py --ci -d -a Mips -s Translate
99100
./src/autosync/ASUpdater.py --ci -d -a SystemZ -s Translate
100101
./src/autosync/ASUpdater.py --ci -d -a Xtensa -s Translate
102+
./src/autosync/ASUpdater.py --ci -d -a TriCore -s Translate

0 commit comments

Comments
 (0)