aboutsummaryrefslogtreecommitdiff
path: root/src/ARMJIT_x64/ARMJIT_LoadStore.cpp
diff options
context:
space:
mode:
authorRSDuck <rsduck@users.noreply.github.com>2020-04-25 14:42:37 +0200
committerRSDuck <rsduck@users.noreply.github.com>2020-06-16 11:59:06 +0200
commit1c98cefcee727a2ff621bfe9924cf6cd91770379 (patch)
treea771af1a274607d1ebf59a3296e629091a42e20c /src/ARMJIT_x64/ARMJIT_LoadStore.cpp
parent1c07932b40e6e072c6ea66c49889860252e45186 (diff)
compile UMULLs and some fixes
Diffstat (limited to 'src/ARMJIT_x64/ARMJIT_LoadStore.cpp')
-rw-r--r--src/ARMJIT_x64/ARMJIT_LoadStore.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ARMJIT_x64/ARMJIT_LoadStore.cpp b/src/ARMJIT_x64/ARMJIT_LoadStore.cpp
index 4cafc1c..7f6fa53 100644
--- a/src/ARMJIT_x64/ARMJIT_LoadStore.cpp
+++ b/src/ARMJIT_x64/ARMJIT_LoadStore.cpp
@@ -423,7 +423,8 @@ void Compiler::Comp_MemAccess(int rd, int rn, const ComplexOperand& op2, int siz
if (flags & memop_SubtractOffset)
{
- MOV(32, R(finalAddr), rnMapped);
+ if (R(finalAddr) != rnMapped)
+ MOV(32, R(finalAddr), rnMapped);
if (!offset.IsZero())
SUB(32, R(finalAddr), offset);
}