fixed eret insn (Ralf Baechle)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1474 c046a42c-6fe2-441c-8c8c-71466251a162
master
bellard 2005-07-02 15:23:21 +00:00
parent 90b37806ba
commit 51e11d9e6c
1 changed files with 5 additions and 2 deletions

View File

@ -597,10 +597,13 @@ void debug_eret (void);
void op_eret (void)
{
CALL_FROM_TB0(debug_eret);
if (env->hflags & MIPS_HFLAG_ERL)
if (env->hflags & MIPS_HFLAG_ERL) {
env->PC = env->CP0_ErrorEPC;
else
env->hflags &= ~MIPS_HFLAG_ERL;
} else {
env->PC = env->CP0_EPC;
env->hflags &= ~MIPS_HFLAG_EXL;
}
env->CP0_LLAddr = 1;
}