diff options
Diffstat (limited to 'src/ARMJIT_A64')
| -rw-r--r-- | src/ARMJIT_A64/ARMJIT_LoadStore.cpp | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/src/ARMJIT_A64/ARMJIT_LoadStore.cpp b/src/ARMJIT_A64/ARMJIT_LoadStore.cpp index ba1bf00..8aa1409 100644 --- a/src/ARMJIT_A64/ARMJIT_LoadStore.cpp +++ b/src/ARMJIT_A64/ARMJIT_LoadStore.cpp @@ -827,12 +827,15 @@ void Compiler::T_Comp_PUSH_POP()      }      ARM64Reg sp = MapReg(13); -    s32 offset = Comp_MemAccessBlock(13, regs, !load, !load, !load, false); +    s32 offset = Comp_MemAccessBlock(13, regs, !load, !load, !load, false, false); -    if (offset > 0) +    if (offset) +    { +        if (offset > 0)              ADD(sp, sp, offset);          else              SUB(sp, sp, -offset); +    }  }  void Compiler::T_Comp_LDMIA_STMIA() |