diff options
author | Lioncash <mathew1800@gmail.com> | 2015-08-07 01:53:20 +0200 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2015-08-07 01:55:41 +0200 |
commit | 59d5358068986fe275a2d96b2b63eff5c04f91e5 (patch) | |
tree | 620861d008aa05b9545fec2f908b90a3140a5d25 | |
parent | Merge pull request #1007 from lioncash/pc (diff) | |
download | yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar.gz yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar.bz2 yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar.lz yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar.xz yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.tar.zst yuzu-59d5358068986fe275a2d96b2b63eff5c04f91e5.zip |
-rw-r--r-- | src/core/arm/disassembler/arm_disasm.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/core/arm/disassembler/arm_disasm.cpp b/src/core/arm/disassembler/arm_disasm.cpp index f6d44d85a..aaf47b3f0 100644 --- a/src/core/arm/disassembler/arm_disasm.cpp +++ b/src/core/arm/disassembler/arm_disasm.cpp @@ -779,20 +779,12 @@ Opcode ARM_Disasm::Decode10(uint32_t insn) { return OP_LDM; return OP_STM; } - // Branch or Branch with link - uint8_t is_link = (insn >> 24) & 1; - uint32_t offset = insn & 0xffffff; - // Sign-extend the 24-bit offset - if ((offset >> 23) & 1) - offset |= 0xff000000; + // Branch with link + if ((insn >> 24) & 1) + return OP_BL; - // Pre-compute the left-shift and the prefetch offset - offset <<= 2; - offset += 8; - if (is_link == 0) - return OP_B; - return OP_BL; + return OP_B; } Opcode ARM_Disasm::Decode11(uint32_t insn) { |