Lines Matching refs:Vptr
2118 void CodeGenFunction::EmitVTableAssumptionLoad(const VPtr &Vptr, Address This) { in EmitVTableAssumptionLoad() argument
2120 CGM.getCXXABI().getVTableAddressPoint(Vptr.Base, Vptr.VTableClass); in EmitVTableAssumptionLoad()
2125 CharUnits NonVirtualOffset = Vptr.Base.getBaseOffset(); in EmitVTableAssumptionLoad()
2130 Vptr.VTableClass, Vptr.NearestVBase); in EmitVTableAssumptionLoad()
2133 GetVTablePtr(This, VTableGlobal->getType(), Vptr.VTableClass); in EmitVTableAssumptionLoad()
2142 for (const VPtr &Vptr : getVTablePointers(ClassDecl)) in EmitVTableAssumptionLoads() local
2143 EmitVTableAssumptionLoad(Vptr, This); in EmitVTableAssumptionLoads()
2309 void CodeGenFunction::InitializeVTablePointer(const VPtr &Vptr) { in InitializeVTablePointer() argument
2313 *this, Vptr.VTableClass, Vptr.Base, Vptr.NearestVBase); in InitializeVTablePointer()
2322 if (CGM.getCXXABI().isVirtualOffsetNeededForVTableField(*this, Vptr)) { in InitializeVTablePointer()
2327 *this, LoadCXXThisAddress(), Vptr.VTableClass, Vptr.NearestVBase); in InitializeVTablePointer()
2328 NonVirtualOffset = Vptr.OffsetFromNearestVBase; in InitializeVTablePointer()
2331 NonVirtualOffset = Vptr.Base.getBaseOffset(); in InitializeVTablePointer()
2339 *this, VTableField, NonVirtualOffset, VirtualOffset, Vptr.VTableClass, in InitializeVTablePointer()
2340 Vptr.NearestVBase); in InitializeVTablePointer()
2355 CGM.DecorateInstructionWithInvariantGroup(Store, Vptr.VTableClass); in InitializeVTablePointer()
2381 VPtr Vptr = {Base, NearestVBase, OffsetFromNearestVBase, VTableClass}; in getVTablePointers() local
2382 Vptrs.push_back(Vptr); in getVTablePointers()
2434 for (const VPtr &Vptr : getVTablePointers(RD)) in InitializeVTablePointers() local
2435 InitializeVTablePointer(Vptr); in InitializeVTablePointers()