]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
JIT: Some minor fixes for special_mem handling cleanup
authorFrode Solheim <frode@fs-uae.net>
Mon, 12 Oct 2015 18:53:29 +0000 (20:53 +0200)
committerFrode Solheim <frode@fs-uae.net>
Mon, 12 Oct 2015 18:53:29 +0000 (20:53 +0200)
include/memory.h
memory.cpp

index b09f0f2d97e3937fc863141ae2a7d02c6420a09b..338383294fdf9f8accbb8946117c9624b0b626f5 100644 (file)
@@ -378,31 +378,41 @@ STATIC_INLINE uae_u32 get_wordi(uaecptr addr)
 STATIC_INLINE uae_u32 get_long_jit(uaecptr addr)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_read_flag;
+#endif
        return bank->lget(addr);
 }
 STATIC_INLINE uae_u32 get_word_jit(uaecptr addr)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_read_flag;
+#endif
        return bank->wget(addr);
 }
 STATIC_INLINE uae_u32 get_byte_jit(uaecptr addr)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_read_flag;
+#endif
        return bank->bget(addr);
 }
 STATIC_INLINE uae_u32 get_longi_jit(uaecptr addr)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_read_flag;
+#endif
        return bank->lgeti(addr);
 }
 STATIC_INLINE uae_u32 get_wordi_jit(uaecptr addr)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_read_flag;
+#endif
        return bank->wgeti(addr);
 }
 
@@ -452,19 +462,25 @@ STATIC_INLINE void put_byte (uaecptr addr, uae_u32 b)
 STATIC_INLINE void put_long_jit(uaecptr addr, uae_u32 l)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_write_flag;
+#endif
        bank->lput(addr, l);
 }
 STATIC_INLINE void put_word_jit(uaecptr addr, uae_u32 l)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_write_flag;
+#endif
        bank->wput(addr, l);
 }
 STATIC_INLINE void put_byte_jit(uaecptr addr, uae_u32 l)
 {
        addrbank *bank = &get_mem_bank(addr);
+#ifdef JIT
        special_mem |= bank->jit_write_flag;
+#endif
        bank->bput(addr, l);
 }
 
@@ -553,6 +569,8 @@ typedef struct shmpiece_reg {
 extern shmpiece *shm_start;
 
 extern uae_u8* natmem_offset;
+extern uae_u8 *natmem_reserved;
+extern uae_u32 natmem_reserved_size;
 
 #endif
 
index ad8a9322527e270ad97ace9b879c961abe9ecd3b..0faef6c42c77e1ab079536fe0f4c1838697d1335 100644 (file)
@@ -787,9 +787,9 @@ static void REGPARAM3 kickmem_lput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 kickmem_wput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 kickmem_bput (uaecptr, uae_u32) REGPARAM;
 
-MEMORY_BGET(kickmem, 0);
-MEMORY_WGET(kickmem, 0);
-MEMORY_LGET(kickmem, 0);
+MEMORY_BGET(kickmem);
+MEMORY_WGET(kickmem);
+MEMORY_LGET(kickmem);
 MEMORY_CHECK(kickmem);
 MEMORY_XLATE(kickmem);
 
@@ -891,9 +891,9 @@ static void REGPARAM3 extendedkickmem_lput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 extendedkickmem_wput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 extendedkickmem_bput (uaecptr, uae_u32) REGPARAM;
 
-MEMORY_BGET(extendedkickmem, 0);
-MEMORY_WGET(extendedkickmem, 0);
-MEMORY_LGET(extendedkickmem, 0);
+MEMORY_BGET(extendedkickmem);
+MEMORY_WGET(extendedkickmem);
+MEMORY_LGET(extendedkickmem);
 MEMORY_CHECK(extendedkickmem);
 MEMORY_XLATE(extendedkickmem);
 
@@ -918,9 +918,9 @@ static void REGPARAM3 extendedkickmem2_lput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 extendedkickmem2_wput (uaecptr, uae_u32) REGPARAM;
 static void REGPARAM3 extendedkickmem2_bput (uaecptr, uae_u32) REGPARAM;
 
-MEMORY_BGET(extendedkickmem2, 0);
-MEMORY_WGET(extendedkickmem2, 0);
-MEMORY_LGET(extendedkickmem2, 0);
+MEMORY_BGET(extendedkickmem2);
+MEMORY_WGET(extendedkickmem2);
+MEMORY_LGET(extendedkickmem2);
 MEMORY_CHECK(extendedkickmem2);
 MEMORY_XLATE(extendedkickmem2);
 
@@ -1705,6 +1705,7 @@ bool mapped_malloc (addrbank *ab)
                answer = uae_shmat (ab, id, 0, 0);
                uae_shmctl (id, UAE_IPC_RMID, NULL);
        } else {
+               write_log(_T("MMAN: mapped_malloc using existing baseaddr %p\n"), ab->baseaddr);
                answer = ab->baseaddr;
        }
        if (answer != (void *) -1) {