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

[v5][arm] Consider SpecRegRBit on setting SYSREG #2422

Closed david942j closed 1 month ago

david942j commented 2 months ago

Your checklist for this pull request

Detailed description

In ARMInstPrinter#printMSRMaskOperand, setting the type of SYSREG does not consider the SpecRegRBit, which causes the reported SYSREG value is always for SPSR even the instruction is using CPSR.

...

Test plan

Added a test case in suite/cs_test/issues.cs

...

Closing issues

closes #2418

...

david942j commented 1 month ago

Conflict resolved!