Commit 0d8aca8c670b3203fa478443969c6a65166aadcc
1 parent
85498508
TLB reload exception vector (Ralf Baechle)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1481 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
3 additions
and
0 deletions
target-mips/helper.c
@@ -417,6 +417,9 @@ void do_interrupt (CPUState *env) | @@ -417,6 +417,9 @@ void do_interrupt (CPUState *env) | ||
417 | goto set_EPC; | 417 | goto set_EPC; |
418 | case EXCP_TLBS: | 418 | case EXCP_TLBS: |
419 | cause = 3; | 419 | cause = 3; |
420 | + if (env->error_code == 1 && !(env->hflags & MIPS_HFLAG_EXL)) | ||
421 | + offset = 0x000; | ||
422 | + goto set_EPC; | ||
420 | set_EPC: | 423 | set_EPC: |
421 | if (env->CP0_Status & (1 << CP0St_BEV)) { | 424 | if (env->CP0_Status & (1 << CP0St_BEV)) { |
422 | pc = 0xBFC00200; | 425 | pc = 0xBFC00200; |