Lines Matching refs:pSReg
195 * @param pSReg Pointer to the segment register.
197 static void iemHlpAdjustSelectorForNewCpl(PIEMCPU pIemCpu, uint8_t uCpl, PCPUMSELREG pSReg)
200 if (!CPUMSELREG_ARE_HIDDEN_PARTS_VALID(IEMCPU_TO_VMCPU(pIemCpu), pSReg))
201 CPUMGuestLazyLoadHiddenSelectorReg(IEMCPU_TO_VMCPU(pIemCpu), pSReg);
203 Assert(CPUMSELREG_ARE_HIDDEN_PARTS_VALID(IEMCPU_TO_VMCPU(pIemCpu), pSReg));
206 if ( uCpl > pSReg->Attr.n.u2Dpl
207 && pSReg->Attr.n.u1DescType /* code or data, not system */
208 && (pSReg->Attr.n.u4Type & (X86_SEL_TYPE_CODE | X86_SEL_TYPE_CONF))
210 iemHlpLoadNullDataSelectorProt(pIemCpu, pSReg, 0);
2820 * @param pSReg The segment register.
2823 static void iemCImplCommonV8086LoadSeg(PCPUMSELREG pSReg, uint16_t uSeg)
2825 pSReg->Sel = uSeg;
2826 pSReg->ValidSel = uSeg;
2827 pSReg->fFlags = CPUMSELREG_FLAGS_VALID;
2828 pSReg->u64Base = (uint32_t)uSeg << 4;
2829 pSReg->u32Limit = 0xffff;
2830 pSReg->Attr.u = X86_SEL_TYPE_RW_ACC | RT_BIT(4) /*!sys*/ | RT_BIT(7) /*P*/ | (3 /*DPL*/ << 5); /* VT-x wants 0xf3 */