-
Notifications
You must be signed in to change notification settings - Fork 279
Description
Version and Platform (required):
- Binary Ninja Version: 5.3.9301-dev Personal (0855e811)
- Edition: Non-Commercial
- OS: macOS
- OS Version: Tahoe 26.3
- CPU Architecture: M1
Bug Description:
There seems to be a case where in a thumb2 function, instructions are being disassembled as armv7 instead.
It isn't fully clear to me what the conditions are for this, it seems like it may happen after an it block?
In this image, the instruction at address 6 is being disassembled as stmlt, which is incorrect:

Disassembling that instruction alone as thumb2 gives the correct result, which is a b instruction:

For some reason the instruction is being disassembled as armv7 rather than thumb2, even though the function is being created as thumb2.
Steps To Reproduce:
Please provide all steps required to reproduce the behavior:
- Create new binary view
- Paste following instruction bytes: 04bf0020704705f0aeb8
- Make thumb2 function at address 0
- Observe incorrect disassembly at address 6 (
stmltinstead ofb)
Expected Behavior:
The instruction at address 6 should be disassembled as thumb2.
As an example, this is what the disassembly looks like in IDA.
