Lines Matching refs:Vptr
2297 void CodeGenFunction::EmitVTableAssumptionLoad(const VPtr &Vptr, Address This) { in EmitVTableAssumptionLoad() argument
2299 CGM.getCXXABI().getVTableAddressPoint(Vptr.Base, Vptr.VTableClass); in EmitVTableAssumptionLoad()
2304 CharUnits NonVirtualOffset = Vptr.Base.getBaseOffset(); in EmitVTableAssumptionLoad()
2309 Vptr.VTableClass, Vptr.NearestVBase); in EmitVTableAssumptionLoad()
2312 GetVTablePtr(This, VTableGlobal->getType(), Vptr.VTableClass); in EmitVTableAssumptionLoad()
2321 for (const VPtr &Vptr : getVTablePointers(ClassDecl)) in EmitVTableAssumptionLoads() local
2322 EmitVTableAssumptionLoad(Vptr, This); in EmitVTableAssumptionLoads()
2480 void CodeGenFunction::InitializeVTablePointer(const VPtr &Vptr) { in InitializeVTablePointer() argument
2484 *this, Vptr.VTableClass, Vptr.Base, Vptr.NearestVBase); in InitializeVTablePointer()
2493 if (CGM.getCXXABI().isVirtualOffsetNeededForVTableField(*this, Vptr)) { in InitializeVTablePointer()
2498 *this, LoadCXXThisAddress(), Vptr.VTableClass, Vptr.NearestVBase); in InitializeVTablePointer()
2499 NonVirtualOffset = Vptr.OffsetFromNearestVBase; in InitializeVTablePointer()
2502 NonVirtualOffset = Vptr.Base.getBaseOffset(); in InitializeVTablePointer()
2510 *this, VTableField, NonVirtualOffset, VirtualOffset, Vptr.VTableClass, in InitializeVTablePointer()
2511 Vptr.NearestVBase); in InitializeVTablePointer()
2531 CGM.DecorateInstructionWithInvariantGroup(Store, Vptr.VTableClass); in InitializeVTablePointer()
2557 VPtr Vptr = {Base, NearestVBase, OffsetFromNearestVBase, VTableClass}; in getVTablePointers() local
2558 Vptrs.push_back(Vptr); in getVTablePointers()
2610 for (const VPtr &Vptr : getVTablePointers(RD)) in InitializeVTablePointers() local
2611 InitializeVTablePointer(Vptr); in InitializeVTablePointers()