ARM: fix target address when disassembling Thumb BLX
A Thumb BLX instruction is branching to ARM code, and therefore the first 2 bits of the target address must be cleared. Signed-off-by: Nicolas Pitre <nico@marvell.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
This commit is contained in:
parent
993fe4ab63
commit
39dd68bca6
|
@ -1768,6 +1768,7 @@ static int evaluate_b_bl_blx_thumb(uint16_t opcode,
|
||||||
case 1:
|
case 1:
|
||||||
instruction->type = ARM_BLX;
|
instruction->type = ARM_BLX;
|
||||||
mnemonic = "BLX";
|
mnemonic = "BLX";
|
||||||
|
target_address &= 0xfffffffc;
|
||||||
break;
|
break;
|
||||||
/* BL/BLX prefix */
|
/* BL/BLX prefix */
|
||||||
case 2:
|
case 2:
|
||||||
|
|
Loading…
Reference in New Issue