qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [4664] fixed exceptions for cpuid and invlpg


From: Fabrice Bellard
Subject: [Qemu-devel] [4664] fixed exceptions for cpuid and invlpg
Date: Wed, 04 Jun 2008 17:12:40 +0000

Revision: 4664
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=4664
Author:   bellard
Date:     2008-06-04 17:12:40 +0000 (Wed, 04 Jun 2008)

Log Message:
-----------
fixed exceptions for cpuid and invlpg

Modified Paths:
--------------
    trunk/target-i386/translate.c

Modified: trunk/target-i386/translate.c
===================================================================
--- trunk/target-i386/translate.c       2008-06-04 17:07:08 UTC (rev 4663)
+++ trunk/target-i386/translate.c       2008-06-04 17:12:40 UTC (rev 4664)
@@ -6407,6 +6407,9 @@
         break;
 #endif
     case 0x1a2: /* cpuid */
+        if (s->cc_op != CC_OP_DYNAMIC)
+            gen_op_set_cc_op(s->cc_op);
+        gen_jmp_im(pc_start - s->cs_base);
         tcg_gen_helper_0_0(helper_cpuid);
         break;
     case 0xf4: /* hlt */
@@ -6700,6 +6703,9 @@
                         goto illegal_op;
                     }
                 } else {
+                    if (s->cc_op != CC_OP_DYNAMIC)
+                        gen_op_set_cc_op(s->cc_op);
+                    gen_jmp_im(pc_start - s->cs_base);
                     gen_lea_modrm(s, modrm, &reg_addr, &offset_addr);
                     tcg_gen_helper_0_1(helper_invlpg, cpu_A0);
                     gen_jmp_im(s->pc - s->cs_base);






reply via email to

[Prev in Thread] Current Thread [Next in Thread]