Lines Matching refs:uCpl

785     pIemCpu->uCpl               = CPUMGetGuestCPL(pVCpu);
811 pIemCpu->fInPatchCode = pIemCpu->uCpl == 0
846 pIemCpu->uCpl = CPUMGetGuestCPL(pVCpu);
849 pIemCpu->uCpl = pIemCpu->uInjectCpl;
881 pIemCpu->fInPatchCode = pIemCpu->uCpl == 0
893 RTTraceBufAddMsgF(pVCpu->CTX_SUFF(pVM)->CTX_SUFF(hTraceBuf), "I64/%u %08llx", pIemCpu->uCpl, pCtx->rip);
896 RTTraceBufAddMsgF(pVCpu->CTX_SUFF(pVM)->CTX_SUFF(hTraceBuf), "I32/%u %04x:%08x", pIemCpu->uCpl, pCtx->cs.Sel, pCtx->eip);
899 RTTraceBufAddMsgF(pVCpu->CTX_SUFF(pVM)->CTX_SUFF(hTraceBuf), "I16/%u %04x:%04x", pIemCpu->uCpl, pCtx->cs.Sel, pCtx->eip);
973 if (!(fFlags & X86_PTE_US) && pIemCpu->uCpl == 3)
1123 if (!(fFlags & X86_PTE_US) && pIemCpu->uCpl == 3)
1906 * @param uCpl The CPL to load the stack for.
1909 static VBOXSTRICTRC iemMiscValidateNewSS(PIEMCPU pIemCpu, PCCPUMCTX pCtx, RTSEL NewSS, uint8_t uCpl, PIEMSELDESC pDesc)
1922 if ((NewSS & X86_SEL_RPL) != uCpl)
1924 Log(("iemMiscValidateNewSSandRsp: %#x - RPL and CPL (%d) differs -> #TS\n", NewSS, uCpl));
1950 if (pDesc->Legacy.Gen.u2Dpl != uCpl)
1952 Log(("iemMiscValidateNewSSandRsp: %#x - DPL (%d) and CPL (%d) differs -> #TS\n", NewSS, pDesc->Legacy.Gen.u2Dpl, uCpl));
2040 * @param uCpl The CPL to load the stack for.
2044 static VBOXSTRICTRC iemRaiseLoadStackFromTss32Or16(PIEMCPU pIemCpu, PCCPUMCTX pCtx, uint8_t uCpl,
2048 Assert(uCpl < 4);
2060 uint32_t off = uCpl * 4 + 2;
2063 Log(("LoadStackFromTss32Or16: out of bounds! uCpl=%d, u32Limit=%#x TSS16\n", uCpl, pCtx->tr.u32Limit));
2084 uint32_t off = uCpl * 8 + 4;
2087 Log(("LoadStackFromTss32Or16: out of bounds! uCpl=%d, u32Limit=%#x TSS16\n", uCpl, pCtx->tr.u32Limit));
2115 * @param uCpl The CPL to load the stack for.
2116 * @param uIst The interrupt stack table index, 0 if to use uCpl.
2119 static VBOXSTRICTRC iemRaiseLoadStackFromTss64(PIEMCPU pIemCpu, PCCPUMCTX pCtx, uint8_t uCpl, uint8_t uIst,
2122 Assert(uCpl < 4);
2132 off = uCpl * sizeof(uint64_t) + RT_OFFSETOF(X86TSS64, rsp0);
2135 Log(("iemRaiseLoadStackFromTss64: out of bounds! uCpl=%d uIst=%d, u32Limit=%#x\n", uCpl, uIst, pCtx->tr.u32Limit));
2301 pSReg->Attr.u = X86DESCATTR_UNUSABLE | X86DESCATTR_G | X86DESCATTR_D | (pIemCpu->uCpl << X86DESCATTR_DPL_SHIFT);
2324 * @remarks This expects pIemCpu->uCpl to be up to date.
2364 || (pIemCpu->uCpl > Desc.Legacy.Gen.u2Dpl))
2367 uSel, (uSel & X86_SEL_RPL), Desc.Legacy.Gen.u2Dpl, pIemCpu->uCpl));
2904 pIemCpu->uCpl = 3;
2982 pIemCpu->uCpl = uNewCpl;
3247 if (pIemCpu->uCpl > Idte.Gate.u2Dpl)
3249 Log(("RaiseXcptOrIntInProtMode %#x - CPL (%d) > DPL (%d) -> #GP\n", u8Vector, pIemCpu->uCpl, Idte.Gate.u2Dpl));
3339 if (DescCS.Legacy.Gen.u2Dpl > pIemCpu->uCpl)
3342 u8Vector, NewCS, DescCS.Legacy.Gen.u2Dpl, pIemCpu->uCpl));
3375 ? pIemCpu->uCpl : DescCS.Legacy.Gen.u2Dpl;
3386 if (uNewCpl != pIemCpu->uCpl)
3442 uStackFrame.pu32[1] = (pCtx->cs.Sel & ~X86_SEL_RPL) | pIemCpu->uCpl;
3460 uStackFrame.pu16[1] = (pCtx->cs.Sel & ~X86_SEL_RPL) | pIemCpu->uCpl;
3507 pIemCpu->uCpl = uNewCpl;
3535 uStackFrame.pu32[1] = (pCtx->cs.Sel & ~X86_SEL_RPL) | pIemCpu->uCpl;
3543 uStackFrame.pu16[1] = (pCtx->cs.Sel & ~X86_SEL_RPL) | pIemCpu->uCpl;
3654 if (pIemCpu->uCpl > Idte.Gate.u2Dpl)
3656 Log(("iemRaiseXcptOrIntInLongMode %#x - CPL (%d) > DPL (%d) -> #GP\n", u8Vector, pIemCpu->uCpl, Idte.Gate.u2Dpl));
3706 if (DescCS.Legacy.Gen.u2Dpl > pIemCpu->uCpl)
3709 u8Vector, NewCS, DescCS.Legacy.Gen.u2Dpl, pIemCpu->uCpl));
3737 ? pIemCpu->uCpl : DescCS.Legacy.Gen.u2Dpl;
3738 if ( uNewCpl != pIemCpu->uCpl
3774 uStackFrame.pu64[1] = (pCtx->cs.Sel & ~X86_SEL_RPL) | pIemCpu->uCpl; /* CPL paranoia */
3799 if (uNewCpl != pIemCpu->uCpl)
3816 pIemCpu->uCpl = uNewCpl;
3972 VBOXSTRICTRC_VAL(rcStrict), u8Vector, pCtx->cs.Sel, pCtx->rip, pCtx->ss.Sel, pCtx->esp, pIemCpu->uCpl));
4153 if (pIemCpu->uCpl == 3)
6229 && ( pIemCpu->uCpl != 0
6239 && pIemCpu->uCpl == 3
8280 if (pIemCpu->uCpl != 0) \
9683 pIemCpu->uInjectCpl = pIemCpu->uCpl;