sparc64: fix tag access register on mmu traps

- set mmu tag access register on FAULT and PROT traps as well

Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Igor V. Kovalenko 2010-06-02 00:12:22 +04:00 committed by Blue Swirl
parent d9b73e47a3
commit 9168b3a545

View File

@ -495,6 +495,9 @@ static int get_physical_address_data(CPUState *env,
env->dmmu.sfsr |= (fault_type << 7);
env->dmmu.sfar = address; /* Fault address register */
env->dmmu.tag_access = (address & ~0x1fffULL) | context;
return 1;
}
}
@ -544,6 +547,8 @@ static int get_physical_address_code(CPUState *env,
env->immu.sfsr |= (is_user << 3) | 1;
env->exception_index = TT_TFAULT;
env->immu.tag_access = (address & ~0x1fffULL) | context;
DPRINTF_MMU("TFAULT at %" PRIx64 " context %" PRIx64 "\n",
address, context);