]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
fixed priviledgees for CP0 use (Ralf Baechle)
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 2 Jul 2005 15:27:11 +0000 (15:27 +0000)
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 2 Jul 2005 15:27:11 +0000 (15:27 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1476 c046a42c-6fe2-441c-8c8c-71466251a162

target-mips/translate.c

index 386bf74b3f2f44737723bdc42969c79bfa44203e..d781fccfbdb62788fbb0dbb688e7aaab649817fe 100644 (file)
@@ -971,7 +971,10 @@ static void gen_cp0 (DisasContext *ctx, uint16_t opc, int rt, int rd)
 {
     const unsigned char *opn = "unk";
 
-    if (!(ctx->CP0_Status & (1 << CP0St_CU0))) {
+    if (!(ctx->CP0_Status & (1 << CP0St_CU0)) &&
+        !(ctx->hflags & MIPS_HFLAG_UM) &&
+        !(ctx->hflags & MIPS_HFLAG_ERL) &&
+        !(ctx->hflags & MIPS_HFLAG_EXL)) {
         if (loglevel & CPU_LOG_TB_IN_ASM) {
             fprintf(logfile, "CP0 is not usable\n");
         }