Changeset 45727 in vbox
- Timestamp:
- Apr 25, 2013 11:15:38 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/recompiler/VBoxRecompiler.c
r45701 r45727 2771 2771 && pVM->rem.s.Env.exception_index < 256) 2772 2772 { 2773 /* This cannot be a hardware-interrupt because exception_index < EXCP_INTERRUPT. */ 2773 2774 int rc; 2774 2775 2775 2776 Log(("REMR3StateBack: Pending trap %x %d\n", pVM->rem.s.Env.exception_index, pVM->rem.s.Env.exception_is_int)); 2776 rc = TRPMAssertTrap(pVCpu, pVM->rem.s.Env.exception_index, (pVM->rem.s.Env.exception_is_int) ? TRPM_SOFTWARE_INT : TRPM_HARDWARE_INT); 2777 TRPMEVENT enmType = pVM->rem.s.Env.exception_is_int ? TRPM_SOFTWARE_INT : TRPM_TRAP; 2778 rc = TRPMAssertTrap(pVCpu, pVM->rem.s.Env.exception_index, enmType); 2777 2779 AssertRC(rc); 2778 switch (pVM->rem.s.Env.exception_index)2780 if (enmType == TRPM_TRAP) 2779 2781 { 2780 case X86_XCPT_PF: 2781 TRPMSetFaultAddress(pVCpu, pCtx->cr2); 2782 /* fallthru */ 2783 case X86_XCPT_TS: case X86_XCPT_NP: case X86_XCPT_SS: case X86_XCPT_GP: 2784 case X86_XCPT_AC: case X86_XCPT_DF: /* 0 */ 2785 TRPMSetErrorCode(pVCpu, pVM->rem.s.Env.error_code); 2786 break; 2782 switch (pVM->rem.s.Env.exception_index) 2783 { 2784 case X86_XCPT_PF: 2785 TRPMSetFaultAddress(pVCpu, pCtx->cr2); 2786 /* fallthru */ 2787 case X86_XCPT_TS: case X86_XCPT_NP: case X86_XCPT_SS: case X86_XCPT_GP: 2788 case X86_XCPT_AC: case X86_XCPT_DF: /* 0 */ 2789 TRPMSetErrorCode(pVCpu, pVM->rem.s.Env.error_code); 2790 break; 2791 } 2787 2792 } 2788 2789 2793 } 2790 2794
Note:
See TracChangeset
for help on using the changeset viewer.