Index: /trunk/src/VBox/VMM/PATM/VMMAll/PATMAll.cpp
===================================================================
--- /trunk/src/VBox/VMM/PATM/VMMAll/PATMAll.cpp	(revision 267)
+++ /trunk/src/VBox/VMM/PATM/VMMAll/PATMAll.cpp	(revision 268)
@@ -564,4 +564,14 @@
                 /* The caller will call trpmGCExitTrap, which will dispatch pending interrupts for us. */
                 return VINF_SUCCESS;
+
+            case PATM_ACTION_PENDING_IRQ_AFTER_IRET:
+                Assert(pVM->patm.s.CTXSUFF(pGCState)->Restore.uFlags == (PATM_RESTORE_EAX|PATM_RESTORE_ECX));
+                Assert(pVM->patm.s.CTXSUFF(pGCState)->fPIF == 0);
+
+                pRegFrame->eax = pVM->patm.s.CTXSUFF(pGCState)->Restore.uEAX;
+                pRegFrame->ecx = pVM->patm.s.CTXSUFF(pGCState)->Restore.uECX;
+                pVM->patm.s.CTXSUFF(pGCState)->Restore.uFlags = 0;
+                return VINF_PATM_PENDING_IRQ_AFTER_IRET;
+
 #ifdef DEBUG
             case PATM_ACTION_LOG_CLI:
