Index: /trunk/include/VBox/vmm/hm_vmx.h
===================================================================
--- /trunk/include/VBox/vmm/hm_vmx.h	(revision 55256)
+++ /trunk/include/VBox/vmm/hm_vmx.h	(revision 55257)
@@ -982,8 +982,4 @@
 /** 59 VMFUNC. Guest software attempted to execute VMFUNC. */
 #define VMX_EXIT_VMFUNC                                         59
-#if 1
-/** The maximum exit value (inclusive). */
-#define VMX_EXIT_MAX                                            (VMX_EXIT_VMFUNC)
-#else
 /** 60 ??? */
 #define VMX_EXIT_RESERVED_60                                    60
@@ -1001,5 +997,4 @@
 /** The maximum exit value (inclusive). */
 #define VMX_EXIT_MAX                                            (VMX_EXIT_XRSTORS)
-#endif
 /** @} */
 
Index: /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 55256)
+++ /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 55257)
@@ -493,5 +493,10 @@
  /* 57  VMX_EXIT_RDRAND                  */  hmR0VmxExitRdrand,
  /* 58  VMX_EXIT_INVPCID                 */  hmR0VmxExitInvpcid,
- /* 59  VMX_EXIT_VMFUNC                  */  hmR0VmxExitSetPendingXcptUD
+ /* 59  VMX_EXIT_VMFUNC                  */  hmR0VmxExitSetPendingXcptUD,
+ /* 60  VMX_EXIT_RESERVED_60             */  hmR0VmxExitErrUndefined,
+ /* 61  VMX_EXIT_RDSEED                  */  hmR0VmxExitErrUndefined, /* only spurious exits, so undefined */
+ /* 62  VMX_EXIT_RESERVED_62             */  hmR0VmxExitErrUndefined,
+ /* 63  VMX_EXIT_XSAVES                  */  hmR0VmxExitSetPendingXcptUD,
+ /* 64  VMX_EXIT_XRSTORS                 */  hmR0VmxExitSetPendingXcptUD,
 };
 #endif /* HMVMX_USE_FUNCTION_TABLE */
@@ -9159,6 +9164,11 @@
         case VMX_EXIT_INVVPID:
         case VMX_EXIT_VMFUNC:
+        case VMX_EXIT_XSAVES:
+        case VMX_EXIT_XRSTORS:
             rc = hmR0VmxExitSetPendingXcptUD(pVCpu, pMixedCtx, pVmxTransient);
             break;
+        case VMX_EXIT_RESERVED_60:
+        case VMX_EXIT_RDSEED: /* only spurious exits, so undefined */
+        case VMX_EXIT_RESERVED_62:
         default:
             rc = hmR0VmxExitErrUndefined(pVCpu, pMixedCtx, pVmxTransient);
@@ -10583,5 +10593,5 @@
     HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
 
-    /* We expose XSETBV to the guest, fallback to the recompiler for emulation. */
+    /* We expose XSETBV to the guest, fallback to the interpreter for emulation. */
     /** @todo check if XSETBV is supported by the recompiler. */
     return VERR_EM_INTERPRETER;
@@ -10596,5 +10606,5 @@
     HMVMX_VALIDATE_EXIT_HANDLER_PARAMS();
 
-    /* The guest should not invalidate the host CPU's TLBs, fallback to recompiler. */
+    /* The guest should not invalidate the host CPU's TLBs, fallback to interpreter. */
     /** @todo implement EMInterpretInvpcid() */
     return VERR_EM_INTERPRETER;
@@ -10943,5 +10953,5 @@
  * @retval VINF_PGM_SYNC_CR3 CR3 sync is required, back to ring-3.
  * @retval VERR_EM_INTERPRETER when something unexpected happened, fallback to
- *         recompiler.
+ *         interpreter.
  */
 HMVMX_EXIT_DECL hmR0VmxExitMovCRx(PVMCPU pVCpu, PCPUMCTX pMixedCtx, PVMXTRANSIENT pVmxTransient)
Index: /trunk/src/VBox/VMM/VMMR3/HM.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR3/HM.cpp	(revision 55256)
+++ /trunk/src/VBox/VMM/VMMR3/HM.cpp	(revision 55257)
@@ -120,5 +120,10 @@
     EXIT_REASON(VMX_EXIT_RDRAND             , 57, "RDRAND instruction."),
     EXIT_REASON(VMX_EXIT_INVPCID            , 58, "INVPCID instruction."),
-    EXIT_REASON(VMX_EXIT_VMFUNC             , 59, "VMFUNC instruction.")
+    EXIT_REASON(VMX_EXIT_VMFUNC             , 59, "VMFUNC instruction."),
+    EXIT_REASON_NIL(),
+    EXIT_REASON(VMX_EXIT_RDSEED             , 61, "RDSEED instruction."),
+    EXIT_REASON_NIL(),
+    EXIT_REASON(VMX_EXIT_XSAVES             , 61, "XSAVES instruction."),
+    EXIT_REASON(VMX_EXIT_XRSTORS            , 62, "XRSTORS instruction.")
 };
 /** Exit reason descriptions for AMD-V, used to describe statistics. */
