Lines Matching defs:Addr

61  * @param   Addr    Address part.
64 VMMDECL(RTGCPTR) SELMToFlatBySel(PVM pVM, RTSEL Sel, RTGCPTR Addr)
80 return (RTGCPTR)(((RTGCUINTPTR)Addr + X86DESC_BASE(&Desc)) & 0xffffffff);
95 * @param Addr Address part.
97 VMMDECL(RTGCPTR) SELMToFlat(PVM pVM, DISSELREG SelReg, PCPUMCTXCORE pCtxCore, RTGCPTR Addr)
110 uint32_t uFlat = (uint32_t)Addr & 0xffff;
138 return (RTGCPTR)(pSReg->u64Base + Addr);
141 return Addr; /* base 0 */
147 return (uint32_t)pSReg->u64Base + (uint32_t)Addr;
160 * @param Addr Address part.
165 VMMDECL(int) SELMToFlatEx(PVMCPU pVCpu, DISSELREG SelReg, PCPUMCTXCORE pCtxCore, RTGCPTR Addr, uint32_t fFlags, PRTGCPTR ppvGC)
182 uint32_t uFlat = (uint32_t)Addr & 0xffff;
213 pvFlat = pSReg->u64Base + Addr;
217 pvFlat = Addr;
225 pvFlat = (uint32_t)pSReg->u64Base + (uint32_t)Addr;
250 if (fCheckLimit && Addr > pSReg->u32Limit)
266 if (fCheckLimit && Addr > pSReg->u32Limit)
284 if (!pSReg->Attr.n.u1Granularity && Addr > UINT32_C(0xffff))
286 if (Addr <= pSReg->u32Limit)
313 * @param Addr Address part.
321 VMMDECL(int) SELMToFlatBySelEx(PVMCPU pVCpu, X86EFLAGS eflags, RTSEL Sel, RTGCPTR Addr,
333 RTGCUINTPTR uFlat = (RTGCUINTPTR)Addr & 0xffff;
365 RTGCPTR pvFlat = Addr + X86DESC_BASE(&Desc);
402 if ((RTGCUINTPTR)Addr > u32Limit)
408 *pcb = u32Limit - (uint32_t)Addr + 1;
420 if ((RTGCUINTPTR)Addr > u32Limit)
426 *pcb = u32Limit - (uint32_t)Addr + 1;
438 if (!u1Granularity && (RTGCUINTPTR)Addr > (RTGCUINTPTR)0xffff)
440 if ((RTGCUINTPTR)Addr <= u32Limit)
447 *pcb = (RTGCUINTPTR)(u1Granularity ? 0xffffffff : 0xffff) - (RTGCUINTPTR)Addr + 1;
467 if ((RTGCUINTPTR)Addr > u32Limit)
605 * @param Addr Address part.
608 DECLINLINE(int) selmValidateAndConvertCSAddrRealMode(PVMCPU pVCpu, RTSEL SelCS, PCCPUMSELREGHID pSReg, RTGCPTR Addr,
612 uint32_t uFlat = Addr & 0xffff;
634 * @param Addr Address part.
638 DECLINLINE(int) selmValidateAndConvertCSAddrRawMode(PVM pVM, PVMCPU pVCpu, RTSEL SelCPL, RTSEL SelCS, RTGCPTR Addr,
679 if ((RTGCUINTPTR)Addr <= u32Limit)
681 *ppvFlat = (RTGCPTR)((RTGCUINTPTR)Addr + X86DESC_BASE(&Desc));
711 * @param Addr The address (think IP/EIP/RIP).
715 RTGCPTR Addr, PRTGCPTR ppvFlat)
733 *ppvFlat = Addr;
742 if ((uint32_t)Addr <= u32Limit)
744 *ppvFlat = (uint32_t)Addr + (uint32_t)pSRegCS->u64Base;
767 * @param Addr The address (think IP/EIP/RIP).
771 RTGCPTR Addr, PRTGCPTR ppvFlat)
775 return selmValidateAndConvertCSAddrRealMode(pVCpu, SelCS, pSRegCS, Addr, ppvFlat);
780 return selmValidateAndConvertCSAddrRawMode(pVCpu->CTX_SUFF(pVM), pVCpu, SelCPL, SelCS, Addr, ppvFlat, NULL);
796 return selmValidateAndConvertCSAddrHidden(pVCpu, SelCPL, SelCS, pSRegCS, Addr, ppvFlat);