x86emul: simplify prefix handling for VMFUNC
authorJan Beulich <jbeulich@suse.com>
Thu, 19 Jan 2017 09:34:21 +0000 (10:34 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 19 Jan 2017 09:34:21 +0000 (10:34 +0100)
LOCK prefixes get dealt with elsewhere, and 66, F2, and F3 can all be
checked for in one go by looking at vex.pfx.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c

index d264d5951f2b50053143785547ffae580b95d692..880d565eb9441bd00db4780c8a82d796aebbfa34 100644 (file)
@@ -4690,8 +4690,7 @@ x86_emulate(
 #endif
 
         case 0xd4: /* vmfunc */
-            generate_exception_if(lock_prefix | rep_prefix() | (vex.pfx == vex_66),
-                                  EXC_UD);
+            generate_exception_if(vex.pfx, EXC_UD);
             fail_if(!ops->vmfunc);
             if ( (rc = ops->vmfunc(ctxt)) != X86EMUL_OKAY )
                 goto done;