Make the paged properties of the tb-jmp-cache hash function work for TARGET_PAGE_BITS...
authoredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 6 May 2008 08:38:22 +0000 (08:38 +0000)
committeredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 6 May 2008 08:38:22 +0000 (08:38 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4351 c046a42c-6fe2-441c-8c8c-71466251a162

exec-all.h

index d98b91d..d4dea1d 100644 (file)
@@ -191,15 +191,15 @@ static inline unsigned int tb_jmp_cache_hash_page(target_ulong pc)
 {
     target_ulong tmp;
     tmp = pc ^ (pc >> (TARGET_PAGE_BITS - TB_JMP_PAGE_BITS));
-    return (tmp >> TB_JMP_PAGE_BITS) & TB_JMP_PAGE_MASK;
+    return (tmp >> (TARGET_PAGE_BITS - TB_JMP_PAGE_BITS)) & TB_JMP_PAGE_MASK;
 }
 
 static inline unsigned int tb_jmp_cache_hash_func(target_ulong pc)
 {
     target_ulong tmp;
     tmp = pc ^ (pc >> (TARGET_PAGE_BITS - TB_JMP_PAGE_BITS));
-    return (((tmp >> TB_JMP_PAGE_BITS) & TB_JMP_PAGE_MASK) |
-           (tmp & TB_JMP_ADDR_MASK));
+    return (((tmp >> (TARGET_PAGE_BITS - TB_JMP_PAGE_BITS)) & TB_JMP_PAGE_MASK)
+           | (tmp & TB_JMP_ADDR_MASK));
 }
 
 static inline unsigned int tb_phys_hash_func(unsigned long pc)