]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
JIT: use correct offset (for 64-bit) for read/writemem_special
authorFrode Solheim <frode@fs-uae.net>
Mon, 7 Sep 2015 19:26:08 +0000 (21:26 +0200)
committerFrode Solheim <frode@fs-uae.net>
Thu, 17 Sep 2015 17:18:09 +0000 (19:18 +0200)
jit/compemu_support.cpp

index df80a41d5d14b2872c033831b41958da1bc47131..b9d6fd90ab5fde06f56e5b5237d5b403879a7db9 100644 (file)
@@ -2933,7 +2933,7 @@ static inline void writemem(int address, int source, int offset, int size, int t
 void writebyte(int address, int source, int tmp)
 {
        if ((special_mem & S_WRITE) || distrust_byte())
-               writemem_special(address,source,20,1,tmp);
+               writemem_special(address, source, 5 * SIZEOF_VOID_P, 1, tmp);
        else
                writemem_real(address,source,1,tmp,0);
 }
@@ -2942,7 +2942,7 @@ static inline void writeword_general(int address, int source, int tmp,
        int clobber)
 {
        if ((special_mem & S_WRITE) || distrust_word())
-               writemem_special(address,source,16,2,tmp);
+               writemem_special(address, source, 4 * SIZEOF_VOID_P, 2, tmp);
        else
                writemem_real(address,source,2,tmp,clobber);
 }
@@ -2961,7 +2961,7 @@ static inline void writelong_general(int address, int source, int tmp,
        int clobber)
 {
        if ((special_mem & S_WRITE) || distrust_long())
-               writemem_special(address,source,12,4,tmp);
+               writemem_special(address, source, 3 * SIZEOF_VOID_P, 4, tmp);
        else
                writemem_real(address,source,4,tmp,clobber);
 }
@@ -3034,7 +3034,7 @@ static inline void readmem(int address, int dest, int offset, int size, int tmp)
 void readbyte(int address, int dest, int tmp)
 {
        if ((special_mem & S_READ) || distrust_byte())
-               readmem_special(address,dest,8,1,tmp);
+               readmem_special(address, dest, 2 * SIZEOF_VOID_P, 1, tmp);
        else
                readmem_real(address,dest,1,tmp);
 }
@@ -3042,7 +3042,7 @@ void readbyte(int address, int dest, int tmp)
 void readword(int address, int dest, int tmp)
 {
        if ((special_mem & S_READ) || distrust_word())
-               readmem_special(address,dest,4,2,tmp);
+               readmem_special(address, dest, 1 * SIZEOF_VOID_P, 2, tmp);
        else
                readmem_real(address,dest,2,tmp);
 }
@@ -3050,7 +3050,7 @@ void readword(int address, int dest, int tmp)
 void readlong(int address, int dest, int tmp)
 {
        if ((special_mem & S_READ) || distrust_long())
-               readmem_special(address,dest,0,4,tmp);
+               readmem_special(address, dest, 0 * SIZEOF_VOID_P, 4, tmp);
        else
                readmem_real(address,dest,4,tmp);
 }
@@ -3059,7 +3059,7 @@ void get_n_addr(int address, int dest, int tmp)
 {
        if (special_mem || distrust_addr()) {
                /* This one might appear a bit odd... */
-               readmem(address,dest,24,4,tmp);
+               readmem(address, dest, 6 * SIZEOF_VOID_P, 4, tmp);
                return;
        }