summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2015-01-08 11:22:20 -0500
committerGravatar bunnei2015-01-08 11:22:20 -0500
commit2432f317e4ea1dbc8a6b87ea4ad8c326ad4b8f04 (patch)
treef7296555da6b9fe174a4477a86f7231f5ba900c2 /src
parentMerge pull request #441 from Kingcom/CallStack (diff)
parentdyncom: Fix UMAAL (diff)
downloadyuzu-2432f317e4ea1dbc8a6b87ea4ad8c326ad4b8f04.tar.gz
yuzu-2432f317e4ea1dbc8a6b87ea4ad8c326ad4b8f04.tar.xz
yuzu-2432f317e4ea1dbc8a6b87ea4ad8c326ad4b8f04.zip
Merge pull request #446 from lioncash/umaal
dyncom: Fix UMAAL
Diffstat (limited to 'src')
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
index 7c710ccde..e3ca02e98 100644
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
+++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
@@ -6696,10 +6696,10 @@ unsigned InterpreterMainLoop(ARMul_State* state) {
6696 { 6696 {
6697 if (inst_base->cond == 0xE || CondPassed(cpu, inst_base->cond)) { 6697 if (inst_base->cond == 0xE || CondPassed(cpu, inst_base->cond)) {
6698 umaal_inst* const inst_cream = (umaal_inst*)inst_base->component; 6698 umaal_inst* const inst_cream = (umaal_inst*)inst_base->component;
6699 const u32 rm = RM; 6699 const u64 rm = RM;
6700 const u32 rn = RN; 6700 const u64 rn = RN;
6701 const u32 rd_lo = RDLO; 6701 const u64 rd_lo = RDLO;
6702 const u32 rd_hi = RDHI; 6702 const u64 rd_hi = RDHI;
6703 const u64 result = (rm * rn) + rd_lo + rd_hi; 6703 const u64 result = (rm * rn) + rd_lo + rd_hi;
6704 6704
6705 RDLO = (result & 0xFFFFFFFF); 6705 RDLO = (result & 0xFFFFFFFF);