Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
13c6ce8
sys: bump capstone to 6.0.0-alpha4, fix arm64 and sysz rename
jiegec May 23, 2025
e0134cb
rs: rename arm64 -> aarch64 and sysz -> systemz to follow upstream
jiegec May 23, 2025
5e5d5ce
rs: adapt to capstone v6 changes, mainly in aarch64
jiegec May 23, 2025
b15a706
rs: use aarch64_reg::Type for windows compat
jiegec May 23, 2025
b258ef4
rs: run cargo fmt to make ci happy
jiegec May 23, 2025
9a7fc1e
rs, sys: mention capstone 6.0.0-alpha4 and arch renaming in CHANGELOG
jiegec May 23, 2025
03a847f
rs: avoid possible panics in library functions
jiegec May 23, 2025
06884ab
rs: add missing doc comments
jiegec May 23, 2025
da7ec96
rs, sys: generate arm_spsr_cspr_bits as bitfield enum
jiegec May 24, 2025
ae1ce57
rs: add previously failed testcase from issue 175
jiegec May 24, 2025
710c211
ci: rename arch_arm64 to arch_aarch64 feature
jiegec May 24, 2025
5879f10
sys: add Alpha arch support
jiegec May 24, 2025
97a6333
rs, sys: fix feature detection after renaming
jiegec May 24, 2025
3e3671b
sys: add HPPA arch support
jiegec May 24, 2025
3dd5f40
sys: add LoongArch arch support
jiegec May 24, 2025
6ec8081
sys: add Xtensa arch support
jiegec May 24, 2025
048dcc6
sys: add ARC arch support
jiegec May 24, 2025
48dd578
sys: move bpf bindings around to become in order
jiegec May 24, 2025
3d4ffaf
rs: add Alpha arch support
jiegec May 24, 2025
aa0b8f9
sys: fix build.rs lifetime for Rust 1.70.0
jiegec May 24, 2025
6d8bfa5
rs: add HPPA arch support
jiegec May 24, 2025
d5c7eb5
rs: add LoongArch arch support
jiegec May 24, 2025
e653178
rs: rename variable to reflect its type
jiegec May 24, 2025
5465d0a
rs: disable failing hppa test due to upstream bug
jiegec May 24, 2025
dc490c7
rs: add Xtensa arch support
jiegec May 24, 2025
e0b3eb3
rs: fix tests on windows
jiegec May 24, 2025
ce140e1
rs: add ARC arch support
jiegec May 24, 2025
be4056e
rs: fix type conversion on windows
jiegec May 24, 2025
bde72f0
rs: bump capstone to 6.0.0-Alpha4-8-gefc0ba44 to fix upstream bugs
jiegec May 26, 2025
643f7c0
rs: update tests after upstream bugs are fixed
jiegec May 26, 2025
3e05f2f
rs: test CS_OPT_UNSIGNED using x86 code
jiegec May 26, 2025
256b640
rs, sys: bump capstone to 6.0.0-Alpha4-13-gfe6bdc6e
jiegec Jun 15, 2025
e2b0bcb
sys: bump capstone to 6.0.0-Alpha4-25-g717d8b05
jiegec Jul 9, 2025
5b6cf3b
rs: bump capstone to 6.0.0-Alpha4-25-g717d8b05
jiegec Jul 9, 2025
3138edf
rs: add access mode to sparc operand
jiegec Jul 9, 2025
9935f8d
rs: document recent changes in CHANGELOG
jiegec Jul 9, 2025
a213366
rs: update tests for sparc, not a bug actually
jiegec Jul 9, 2025
837d2f7
rs: apply cargo clippy
jiegec Jul 9, 2025
e21f508
rs: fix tests on windows
jiegec Jul 9, 2025
7c44bb0
rs, sys: bump capstone to 6.0.0-Alpha5
jiegec Aug 4, 2025
2e3c1b8
rs: zero initialize cs_insn to make valgrind happy
jiegec Aug 4, 2025
77c13d3
sys: regenerate bindings to use ffi instead of libc for c_uint type
jiegec Jan 17, 2026
94bb894
rs: use ffi instead of libc for c_uint type
jiegec Jan 17, 2026
ae85f5d
rs: drop misplaced changelog due to git rebase
jiegec Jan 17, 2026
251a52a
rs, sys: bump capstone to 6.0.0-Alpha6
jiegec Jan 17, 2026
af51978
rs, sys: bump capstone to 6.0.0-Alpha7
jiegec Feb 16, 2026
e2c56d3
rs, sys: bump capstone to 6.0.0-Alpha8
jiegec May 24, 2026
e4c87bc
sys: only compile enabled arch sources in build.rs
CodeWenjiu May 29, 2026
58afc5d
sys: panic on unhandled arch dir, allow clippy match_like_matches_macro
CodeWenjiu Jun 16, 2026
266132e
sys: fix panic format for Rust 2018 edition compatibility
CodeWenjiu Jun 16, 2026
8d7f9ef
sys: remove redundant clippy allow attribute
CodeWenjiu Jun 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
4 changes: 2 additions & 2 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,5 @@ jobs:
- name: test (with bindgen)
run: env ${{ matrix.rust.env }} FEATURES="use_bindgen" ./capstone-rs/ci/test.sh

- name: test (only enable x86 and arm64)
run: env ${{ matrix.rust.env }} FEATURES=std,full,arch_x86,arch_arm64 NO_DEFAULT_FEATURES=1 ./capstone-rs/ci/test.sh
- name: test (only enable x86 and aarch64)
run: env ${{ matrix.rust.env }} FEATURES=std,full,arch_x86,arch_aarch64 NO_DEFAULT_FEATURES=1 ./capstone-rs/ci/test.sh
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,23 @@ Notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [UNRELEASED] - YYYY-MM-DD
### Added
- Alpha arch support
- HPPA arch support
- LoongArch arch support
- Xtensa arch support
- ARC arch support
- Make AccessType available for Sparc
- New operands types are added to `ArmOperandType`

### Changed
- Bump bundled capstone to 6.0.0-Alpha8
- Rename ARM64 to AARCH64, SYSZ to SYSTEMZ to follow upstream changes
- AArch64 support is rewritten to follow upstream changes
- Endian must be specified for Sparc/SystemZ, since little endian support is added
- Rename RegAccessType to AccessType while keeping type alias

## [0.14.0] - 2026-01-04
### Added
- TriCore arch support
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ More complex demos welcome!
- `use_bindgen`: run `bindgen` to generate Rust bindings to Capstone C library
instead of using pre-generated bindings (not recommended)
- `arch_$ARCH`<sup>&dagger;</sup>: enable arch `$ARCH` support in capstone,
e.g. `arch_arm64` enables arch arm64 support
e.g. `arch_aarch64` enables arch aarch64 support.
- `support_all_archs`<sup>&dagger;</sup>: enable all archs available
in capstone, imply all `arch_$ARCH` features
- `check_only`: do not compile and link capstone C library,
Expand Down
18 changes: 14 additions & 4 deletions capstone-rs/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,14 @@ full = ["capstone-sys/full"]
use_bindgen = ["capstone-sys/use_bindgen"]
# arch specific features to reduce binary size
support_all_archs = [
"arch_aarch64",
"arch_alpha",
"arch_arc",
"arch_arm",
"arch_arm64",
"arch_bpf",
"arch_evm",
"arch_hppa",
"arch_loongarch",
"arch_m680x",
"arch_m68k",
"arch_mips",
Expand All @@ -49,18 +53,23 @@ support_all_archs = [
"arch_riscv",
"arch_sh",
"arch_sparc",
"arch_sysz",
"arch_systemz",
"arch_tms320c64x",
"arch_tricore",
"arch_wasm",
"arch_x86",
"arch_xcore",
"arch_xtensa",
"capstone-sys/support_all_archs",
]
arch_aarch64 = ["capstone-sys/arch_aarch64"]
arch_alpha = ["capstone-sys/arch_alpha"]
arch_arc = ["capstone-sys/arch_arc"]
arch_arm = ["capstone-sys/arch_arm"]
arch_arm64 = ["capstone-sys/arch_arm64"]
arch_bpf = ["capstone-sys/arch_bpf"]
arch_evm = ["capstone-sys/arch_evm"]
arch_hppa = ["capstone-sys/arch_hppa"]
arch_loongarch = ["capstone-sys/arch_loongarch"]
arch_m680x = ["capstone-sys/arch_m680x"]
arch_m68k = ["capstone-sys/arch_m68k"]
arch_mips = ["capstone-sys/arch_mips"]
Expand All @@ -69,11 +78,12 @@ arch_powerpc = ["capstone-sys/arch_powerpc"]
arch_riscv = ["capstone-sys/arch_riscv"]
arch_sh = ["capstone-sys/arch_sh"]
arch_sparc = ["capstone-sys/arch_sparc"]
arch_sysz = ["capstone-sys/arch_sysz"]
arch_systemz = ["capstone-sys/arch_systemz"]
arch_tms320c64x = ["capstone-sys/arch_tms320c64x"]
arch_tricore = ["capstone-sys/arch_tricore"]
arch_wasm = ["capstone-sys/arch_wasm"]
arch_x86 = ["capstone-sys/arch_x86"]
arch_xcore = ["capstone-sys/arch_xcore"]
arch_xtensa = ["capstone-sys/arch_xtensa"]
# Can be used to accelerate check builds by not building C code
check_only = ["capstone-sys/check_only"]
Loading
Loading