Commit 51e11d9e6c8deea88ba2d24c8a04102c787cdd19
1 parent
90b37806
fixed eret insn (Ralf Baechle)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1474 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
5 additions
and
2 deletions
target-mips/op.c
... | ... | @@ -597,10 +597,13 @@ void debug_eret (void); |
597 | 597 | void op_eret (void) |
598 | 598 | { |
599 | 599 | CALL_FROM_TB0(debug_eret); |
600 | - if (env->hflags & MIPS_HFLAG_ERL) | |
600 | + if (env->hflags & MIPS_HFLAG_ERL) { | |
601 | 601 | env->PC = env->CP0_ErrorEPC; |
602 | - else | |
602 | + env->hflags &= ~MIPS_HFLAG_ERL; | |
603 | + } else { | |
603 | 604 | env->PC = env->CP0_EPC; |
605 | + env->hflags &= ~MIPS_HFLAG_EXL; | |
606 | + } | |
604 | 607 | env->CP0_LLAddr = 1; |
605 | 608 | } |
606 | 609 | ... | ... |