From: ths Date: Mon, 29 Oct 2007 02:57:19 +0000 (+0000) Subject: Fix logic bug which broke TLBL/TLBS handling somewhat. X-Git-Tag: release_0_9_1~419 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6276c7675803abf1752b9bf5c68dd4b81dcf8fa7;p=thirdparty%2Fqemu.git Fix logic bug which broke TLBL/TLBS handling somewhat. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3478 c046a42c-6fe2-441c-8c8c-71466251a162 --- diff --git a/target-mips/helper.c b/target-mips/helper.c index 708641c42ff..933a6ac41b0 100644 --- a/target-mips/helper.c +++ b/target-mips/helper.c @@ -472,9 +472,6 @@ void do_interrupt (CPUState *env) goto set_EPC; case EXCP_TLBS: cause = 3; - goto set_EPC; - case EXCP_THREAD: - cause = 25; if (env->error_code == 1 && !(env->CP0_Status & (1 << CP0St_EXL))) { #if defined(TARGET_MIPSN32) || defined(TARGET_MIPS64) int R = env->CP0_BadVAddr >> 62; @@ -488,6 +485,9 @@ void do_interrupt (CPUState *env) #endif offset = 0x000; } + goto set_EPC; + case EXCP_THREAD: + cause = 25; set_EPC: if (!(env->CP0_Status & (1 << CP0St_EXL))) { if (env->hflags & MIPS_HFLAG_BMASK) {