Commit 9d05095e5fc0609bfb1f46379791abb664680e4b
1 parent
ea4e754f
mips cleanup (Thiemo Seufer)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1934 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
2 changed files
with
2 additions
and
2 deletions
cpu-exec.c
... | ... | @@ -561,6 +561,8 @@ int cpu_exec(CPUState *env1) |
561 | 561 | #elif defined(TARGET_SH4) |
562 | 562 | /* XXXXX */ |
563 | 563 | #endif |
564 | + /* Don't use the cached interupt_request value, | |
565 | + do_interrupt may have updated the EXITTB flag. */ | |
564 | 566 | if (env->interrupt_request & CPU_INTERRUPT_EXITTB) { |
565 | 567 | env->interrupt_request &= ~CPU_INTERRUPT_EXITTB; |
566 | 568 | /* ensure that no TB jump will be modified as | ... | ... |
target-mips/helper.c
... | ... | @@ -219,7 +219,6 @@ int cpu_mips_handle_mmu_fault (CPUState *env, target_ulong address, int rw, |
219 | 219 | exception = EXCP_TLBS; |
220 | 220 | else |
221 | 221 | exception = EXCP_TLBL; |
222 | - error_code = 0; | |
223 | 222 | break; |
224 | 223 | case -4: |
225 | 224 | /* TLB match but 'D' bit is cleared */ |
... | ... | @@ -350,7 +349,6 @@ void do_interrupt (CPUState *env) |
350 | 349 | cause = 4; |
351 | 350 | goto set_EPC; |
352 | 351 | case EXCP_TLBL: |
353 | - case EXCP_TLBF: | |
354 | 352 | cause = 2; |
355 | 353 | if (env->error_code == 1 && !(env->hflags & MIPS_HFLAG_EXL)) |
356 | 354 | offset = 0x000; | ... | ... |