diff options
author | bunnei <bunneidev@gmail.com> | 2014-12-09 01:17:54 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2014-12-09 01:17:54 +0100 |
commit | f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a (patch) | |
tree | f6dd1ae9024bb926ddc06c973eaaceb252020cd5 /src/core/arm | |
parent | Merge pull request #259 from ichfly/master (diff) | |
parent | armemu: Fix SSAX (diff) | |
download | yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar.gz yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar.bz2 yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar.lz yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar.xz yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.tar.zst yuzu-f1ec1a0d2c4e1cdd01b1ba67234f904e3edcc11a.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/arm/interpreter/armemu.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/arm/interpreter/armemu.cpp b/src/core/arm/interpreter/armemu.cpp index 73223874e..d717bd2c8 100644 --- a/src/core/arm/interpreter/armemu.cpp +++ b/src/core/arm/interpreter/armemu.cpp @@ -5724,7 +5724,7 @@ L_stm_s_takeabort: s16 a2 = ((state->Reg[src1] >> 0x10) & 0xFFFF); s16 b1 = (state->Reg[src2] & 0xFFFF); s16 b2 = ((state->Reg[src2] >> 0x10) & 0xFFFF); - state->Reg[tar] = (a1 - a2)&0xFFFF | (((b1 - b2)&0xFFFF)<< 0x10); + state->Reg[tar] = ((a1 - a2) & 0xFFFF) | (((b1 - b2)&0xFFFF)<< 0x10); return 1; } else if ((instr & 0xFF0) == 0xf10)//sadd16 @@ -5736,7 +5736,7 @@ L_stm_s_takeabort: s16 a2 = ((state->Reg[src1] >> 0x10) & 0xFFFF); s16 b1 = (state->Reg[src2] & 0xFFFF); s16 b2 = ((state->Reg[src2] >> 0x10) & 0xFFFF); - state->Reg[tar] = (a1 + a2)&0xFFFF | (((b1 + b2)&0xFFFF)<< 0x10); + state->Reg[tar] = ((a1 + a2) & 0xFFFF) | (((b1 + b2)&0xFFFF)<< 0x10); return 1; } else if ((instr & 0xFF0) == 0xf50)//ssax @@ -5748,7 +5748,7 @@ L_stm_s_takeabort: s16 a2 = ((state->Reg[src1] >> 0x10) & 0xFFFF); s16 b1 = (state->Reg[src2] & 0xFFFF); s16 b2 = ((state->Reg[src2] >> 0x10) & 0xFFFF); - state->Reg[tar] = (a1 - b2) & 0xFFFF | (((a2 + b1) & 0xFFFF) << 0x10); + state->Reg[tar] = ((a1 + b2) & 0xFFFF) | (((a2 - b1) & 0xFFFF) << 0x10); return 1; } else if ((instr & 0xFF0) == 0xf30)//sasx @@ -5760,7 +5760,7 @@ L_stm_s_takeabort: s16 a2 = ((state->Reg[src1] >> 0x10) & 0xFFFF); s16 b1 = (state->Reg[src2] & 0xFFFF); s16 b2 = ((state->Reg[src2] >> 0x10) & 0xFFFF); - state->Reg[tar] = (a2 - b1) & 0xFFFF | (((a2 + b1) & 0xFFFF) << 0x10); + state->Reg[tar] = ((a1 - b2) & 0xFFFF) | (((a2 + b1) & 0xFFFF) << 0x10); return 1; } else printf ("Unhandled v6 insn: sadd/ssub\n"); |