summaryrefslogtreecommitdiffstats
path: root/src/core/arm/dyncom
diff options
context:
space:
mode:
authormailwl <mailwl@gmail.com>2016-04-06 13:57:43 +0200
committermailwl <mailwl@gmail.com>2016-04-06 18:46:58 +0200
commit06a4369f75e2791bd62426329b84e979c68f3279 (patch)
tree67e837d30e2a84e725f6492155148163028e0026 /src/core/arm/dyncom
parentMerge pull request #1435 from mailwl/frd_u (diff)
downloadyuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar.gz
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar.bz2
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar.lz
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar.xz
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.tar.zst
yuzu-06a4369f75e2791bd62426329b84e979c68f3279.zip
Diffstat (limited to 'src/core/arm/dyncom')
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.cpp8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
index 9ed61947e..a6faf42b9 100644
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
+++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
@@ -3955,9 +3955,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
add_inst* const inst_cream = (add_inst*)inst_base->component;
- u32 rn_val = RN;
- if (inst_cream->Rn == 15)
- rn_val += 2 * cpu->GetInstructionSize();
+ u32 rn_val = CHECK_READ_REG15_WA(cpu, inst_cream->Rn);
bool carry;
bool overflow;
@@ -6167,9 +6165,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
sub_inst* const inst_cream = (sub_inst*)inst_base->component;
- u32 rn_val = RN;
- if (inst_cream->Rn == 15)
- rn_val += 2 * cpu->GetInstructionSize();
+ u32 rn_val = CHECK_READ_REG15_WA(cpu, inst_cream->Rn);
bool carry;
bool overflow;