removed unnecessary VME support - fixed selector GPF exception
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 10 May 2003 12:39:11 +0000 (12:39 +0000)
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 10 May 2003 12:39:11 +0000 (12:39 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@140 c046a42c-6fe2-441c-8c8c-71466251a162

op-i386.c

index 10dfd8472a4c1fd5fc5e017f10211e4f450c674c..fe1f7eb9db28243974b017eeb455fd19b46e0979 100644 (file)
--- a/op-i386.c
+++ b/op-i386.c
@@ -654,8 +654,8 @@ void OPPROTO op_sti(void)
     env->eflags |= IF_MASK;
 }
 
+#if 0
 /* vm86plus instructions */
-
 void OPPROTO op_cli_vm(void)
 {
     env->eflags &= ~VIF_MASK;
@@ -670,6 +670,7 @@ void OPPROTO op_sti_vm(void)
     }
     FORCE_RET();
 }
+#endif
 
 void OPPROTO op_boundw(void)
 {
@@ -939,7 +940,7 @@ void helper_cpuid(void)
         EAX = 0x52b;
         EBX = 0;
         ECX = 0;
-        EDX = CPUID_FP87 | CPUID_VME | CPUID_DE | CPUID_PSE |
+        EDX = CPUID_FP87 | CPUID_DE | CPUID_PSE |
             CPUID_TSC | CPUID_MSR | CPUID_MCE |
             CPUID_CX8;
     }
@@ -1091,7 +1092,6 @@ void load_seg(int seg_reg, int selector)
     uint32_t e1, e2;
     uint8_t *ptr;
 
-    env->segs[seg_reg] = selector;
     sc = &env->seg_cache[seg_reg];
     if (env->eflags & VM_MASK) {
         sc->base = (void *)(selector << 4);
@@ -1118,6 +1118,7 @@ void load_seg(int seg_reg, int selector)
                 selector, (unsigned long)sc->base, sc->limit, sc->seg_32bit);
 #endif
     }
+    env->segs[seg_reg] = selector;
 }
 
 void OPPROTO op_movl_seg_T0(void)
@@ -1317,7 +1318,8 @@ void OPPROTO op_movw_eflags_T0(void)
     env->eflags = (env->eflags & ~FL_UPDATE_MASK16) | (eflags & FL_UPDATE_MASK16);
 }
 
-/* vm86 version */
+#if 0
+/* vm86plus version */
 void OPPROTO op_movw_eflags_T0_vm(void)
 {
     int eflags;
@@ -1355,6 +1357,7 @@ void OPPROTO op_movl_eflags_T0_vm(void)
     }
     FORCE_RET();
 }
+#endif
 
 /* XXX: compute only O flag */
 void OPPROTO op_movb_eflags_T0(void)
@@ -1373,7 +1376,8 @@ void OPPROTO op_movl_T0_eflags(void)
     T0 = eflags;
 }
 
-/* vm86 version */
+/* vm86plus version */
+#if 0
 void OPPROTO op_movl_T0_eflags_vm(void)
 {
     int eflags;
@@ -1384,6 +1388,7 @@ void OPPROTO op_movl_T0_eflags_vm(void)
         eflags |= IF_MASK;
     T0 = eflags;
 }
+#endif
 
 void OPPROTO op_cld(void)
 {