Stack traces: Add support for BLX instruction
Adam Higerd chighland@gmail.com
Mon, 10 Aug 2020 12:02:32 -0500
2 files changed,
2 insertions(+),
2 deletions(-)
M
include/mgba/internal/arm/decoder-inlines.h
→
include/mgba/internal/arm/decoder-inlines.h
@@ -27,7 +27,7 @@ switch (mnemonic) {
case ARM_MN_B: case ARM_MN_BL: case ARM_MN_BX: - // TODO: case: ARM_MN_BLX: + case ARM_MN_BLX: return true; default: return false;
M
src/arm/debugger/debugger.c
→
src/arm/debugger/debugger.c
@@ -61,7 +61,7 @@ }
bool interrupt = false; bool isWideInstruction = ARMDecodeCombined(cpu, &info); - if (!isWideInstruction && info.mnemonic == ARM_MN_BL) { + if (!isWideInstruction && (info.mnemonic == ARM_MN_BL || info.mnemonic == ARM_MN_BLX)) { return false; } if (!ARMTestCondition(cpu, info.condition)) {