capstone-engine / capstone

Capstone disassembly/disassembler framework for ARM, ARM64 (ARMv8), Alpha, BPF, Ethereum VM, HPPA, LoongArch, M68K, M680X, Mips, MOS65XX, PPC, RISC-V(rv32G/rv64G), SH, Sparc, SystemZ, TMS320C64X, TriCore, Webassembly, XCore and X86.
http://www.capstone-engine.org
7.51k stars 1.54k forks source link

Add cs_insn_flags. Breaking API change. #2374

Closed numas13 closed 4 months ago

numas13 commented 4 months ago

Replace cs_insn.is_alias and cs_insn.usesAliasDetails with bitflags.

Your checklist for this pull request

Detailed description

Add instruction bitflags with reserved range for arch-specific usage. For example:

This information is critical and must be present even if instruction details is off.

But I'm not sure how many bitflags should be arch-specific.

Test plan

Update bindings and user software.

numas13 commented 4 months ago

I'm closing PRs. We'll think about what can be done.