]> git.proxmox.com Git - qemu.git/blobdiff - target-sparc/op_helper.c
sparc fixes (Blue Swirl)
[qemu.git] / target-sparc / op_helper.c
index 4c65c64d67b7cbf0780d0e5ef772099c3892fb97..9cb3de49ac57f6088fd4623f093a5cc3afb1e24b 100644 (file)
@@ -164,7 +164,9 @@ void helper_st_asi(int asi, int size, int sign)
             case 0:
                env->mmuregs[reg] &= ~(MMU_E | MMU_NF);
                env->mmuregs[reg] |= T1 & (MMU_E | MMU_NF);
-                if ((oldreg & MMU_E) != (env->mmuregs[reg] & MMU_E))
+               // Mappings generated during no-fault mode or MMU
+               // disabled mode are invalid in normal mode
+                if (oldreg != env->mmuregs[reg])
                     tlb_flush(env, 1);
                 break;
             case 2: