sparc64 fix context value for ITLB fault
authorIgor Kovalenko <igor.v.kovalenko@gmail.com>
Mon, 27 Apr 2009 20:10:08 +0000 (00:10 +0400)
committerBlue Swirl <blauwirbel@gmail.com>
Tue, 28 Apr 2009 15:59:51 +0000 (15:59 +0000)
Revert previous change to get_physical_address_code:
I/D MMU context register is shared, so using dmmuregs[1] is correct

Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>

target-sparc/helper.c

index 09a2829..e249c64 100644 (file)
@@ -490,7 +490,7 @@ static int get_physical_address_code(CPUState *env,
 #ifdef DEBUG_MMU
     printf("TMISS at 0x%" PRIx64 "\n", address);
 #endif
-    env->immuregs[6] = (address & ~0x1fffULL) | (env->immuregs[1] & 0x1fff);
+    env->immuregs[6] = (address & ~0x1fffULL) | (env->dmmuregs[1] & 0x1fff);
     env->exception_index = TT_TMISS;
     return 1;
 }