summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2015-02-28 04:53:33 +0100
committerbunnei <bunneidev@gmail.com>2015-02-28 04:53:33 +0100
commitd362eb266956c2a997fdda4b6fbf25d3e3a4f5fc (patch)
tree2dfc7b7269a4887d20e4312ac914a2cc39edde37
parentMerge pull request #619 from lioncash/unused (diff)
parentarm_disasm: Show conditional code for BKPT instructions. (diff)
downloadyuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar.gz
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar.bz2
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar.lz
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar.xz
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.tar.zst
yuzu-d362eb266956c2a997fdda4b6fbf25d3e3a4f5fc.zip
-rw-r--r--src/core/arm/disassembler/arm_disasm.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/arm/disassembler/arm_disasm.cpp b/src/core/arm/disassembler/arm_disasm.cpp
index 5fb5966af..913dc1454 100644
--- a/src/core/arm/disassembler/arm_disasm.cpp
+++ b/src/core/arm/disassembler/arm_disasm.cpp
@@ -131,7 +131,7 @@ static const char *shift_names[] = {
"ROR"
};
-static const char* cond_to_str(int cond) {
+static const char* cond_to_str(uint32_t cond) {
return cond_names[cond];
}
@@ -337,8 +337,9 @@ std::string ARM_Disasm::DisassembleBX(uint32_t insn)
std::string ARM_Disasm::DisassembleBKPT(uint32_t insn)
{
+ uint8_t cond = (insn >> 28) & 0xf;
uint32_t immed = (((insn >> 8) & 0xfff) << 4) | (insn & 0xf);
- return Common::StringFromFormat("bkpt\t#%d", immed);
+ return Common::StringFromFormat("bkpt%s\t#%d", cond_to_str(cond), immed);
}
std::string ARM_Disasm::DisassembleCLZ(uint32_t insn)