Lines Matching refs:CXXRecordDecl
56 RecordArgABI getRecordArgABI(const CXXRecordDecl *RD) const override;
93 std::vector<CharUnits> getVBPtrOffsets(const CXXRecordDecl *RD) override { in getVBPtrOffsets()
124 llvm::GlobalVariable *getMSCompleteObjectLocator(const CXXRecordDecl *RD,
155 bool canSpeculativelyEmitVTable(const CXXRecordDecl *RD) const override { in canSpeculativelyEmitVTable()
161 const CXXRecordDecl *ClassDecl,
162 const CXXRecordDecl *BaseClassDecl) override;
166 const CXXRecordDecl *RD) override;
169 const CXXRecordDecl *RD) override;
216 const CXXRecordDecl *
257 void emitVTableBitSetEntries(VPtrInfo *Info, const CXXRecordDecl *RD,
261 const CXXRecordDecl *RD) override;
268 bool doStructorsInitializeVPtrs(const CXXRecordDecl *VTableClass) override { in doStructorsInitializeVPtrs()
274 const CXXRecordDecl *VTableClass) override;
277 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass,
278 BaseSubobject Base, const CXXRecordDecl *NearestVBase) override;
282 const CXXRecordDecl *VTableClass) override;
284 llvm::GlobalVariable *getAddrOfVTable(const CXXRecordDecl *RD,
305 void emitVirtualInheritanceTables(const CXXRecordDecl *RD) override;
308 getAddrOfVBTable(const VPtrInfo &VBT, const CXXRecordDecl *RD,
312 getAddrOfVirtualDisplacementMap(const CXXRecordDecl *SrcRD, in getAddrOfVirtualDisplacementMap()
313 const CXXRecordDecl *DstRD) { in getAddrOfVirtualDisplacementMap()
329 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); in getAddrOfVirtualDisplacementMap()
354 void emitVBTableDefinition(const VPtrInfo &VBT, const CXXRecordDecl *RD,
587 const CXXRecordDecl *RD, Address Base,
595 const CXXRecordDecl *RD,
603 void EmitVBPtrStores(CodeGenFunction &CGF, const CXXRecordDecl *RD);
606 const VBTableGlobals &enumerateVBTables(const CXXRecordDecl *RD);
619 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in isMemberPointerConvertible()
748 typedef std::pair<const CXXRecordDecl *, CharUnits> VFTableIdTy;
756 llvm::SmallPtrSet<const CXXRecordDecl *, 4> DeferredVFTables;
760 llvm::DenseMap<const CXXRecordDecl *, VBTableGlobals> VBTablesMap;
791 MicrosoftCXXABI::getRecordArgABI(const CXXRecordDecl *RD) const { in getRecordArgABI()
921 const CXXRecordDecl *SrcDecl = SrcRecordTy->getAsCXXRecordDecl(); in performBaseAdjustment()
932 const CXXRecordDecl *PolymorphicBase = nullptr; in performBaseAdjustment()
934 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in performBaseAdjustment()
953 const CXXRecordDecl *SrcDecl = SrcRecordTy->getAsCXXRecordDecl(); in shouldTypeidBeNullChecked()
987 const CXXRecordDecl *SrcDecl = SrcRecordTy->getAsCXXRecordDecl(); in shouldDynamicCastCallBeNullChecked()
1046 CodeGenFunction &CGF, Address This, const CXXRecordDecl *ClassDecl, in GetVirtualBaseClassOffset()
1047 const CXXRecordDecl *BaseClassDecl) { in GetVirtualBaseClassOffset()
1080 const CXXRecordDecl *RD = FI.getReturnType()->getAsCXXRecordDecl(); in classifyReturnType()
1103 const CXXRecordDecl *RD) { in EmitCtorCompleteObjectHandler()
1126 CodeGenFunction &CGF, const CXXRecordDecl *RD) { in initializeHiddenVirtualInheritanceMembers()
1206 const CXXRecordDecl *RD) { in EmitVBPtrStores()
1246 const CXXRecordDecl *Class = CD->getParent(); in buildStructorSignature()
1343 const CXXRecordDecl *Derived = MD->getParent(); in adjustThisArgumentForVirtualFunctionCall()
1344 const CXXRecordDecl *VBase = ML.VBase; in adjustThisArgumentForVirtualFunctionCall()
1504 const CXXRecordDecl *RD, in emitVTableBitSetEntries()
1538 const CXXRecordDecl *DerivedRD = Info->PathToBaseWithVPtr[I - 1]; in emitVTableBitSetEntries()
1539 const CXXRecordDecl *BaseRD = Info->PathToBaseWithVPtr[I]; in emitVTableBitSetEntries()
1561 const CXXRecordDecl *RD) { in emitVTableDefinitions()
1593 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base, in getVTableAddressPointInStructor()
1594 const CXXRecordDecl *NearestVBase) { in getVTableAddressPointInStructor()
1604 const CXXRecordDecl *RD, const VPtrInfo *VFPtr, in mangleVFTableName()
1612 const CXXRecordDecl *VTableClass) { in getVTableAddressPoint()
1619 BaseSubobject Base, const CXXRecordDecl *VTableClass) { in getVTableAddressPointForConstExpr()
1625 llvm::GlobalVariable *MicrosoftCXXABI::getAddrOfVTable(const CXXRecordDecl *RD, in getAddrOfVTable()
1758 static const CXXRecordDecl *getClassAtVTableLocation(ASTContext &Ctx, in getClassAtVTableLocation()
1759 const CXXRecordDecl *RD, in getClassAtVTableLocation()
1765 const CXXRecordDecl *MaxBase = nullptr; in getClassAtVTableLocation()
1768 const CXXRecordDecl *Base = B.getType()->getAsCXXRecordDecl(); in getClassAtVTableLocation()
1776 const CXXRecordDecl *Base = B.getType()->getAsCXXRecordDecl(); in getClassAtVTableLocation()
1789 static const CXXRecordDecl *
1792 const CXXRecordDecl *RD = ML.VBase; in getClassAtVTableLocation()
1854 MicrosoftCXXABI::enumerateVBTables(const CXXRecordDecl *RD) { in enumerateVBTables()
1857 llvm::DenseMap<const CXXRecordDecl*, VBTableGlobals>::iterator Entry; in enumerateVBTables()
1951 void MicrosoftCXXABI::emitVirtualInheritanceTables(const CXXRecordDecl *RD) { in emitVirtualInheritanceTables()
1962 MicrosoftCXXABI::getAddrOfVBTable(const VPtrInfo &VBT, const CXXRecordDecl *RD, in getAddrOfVBTable()
1990 const CXXRecordDecl *RD, in emitVBTableDefinition()
1992 const CXXRecordDecl *ReusingBase = VBT.ReusingBase; in emitVBTableDefinition()
2010 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); in emitVBTableDefinition()
2495 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in isZeroInitializable()
2503 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in ConvertMemberPointerType()
2528 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in GetNullMemberPointerFields()
2563 const CXXRecordDecl *RD, in EmitFullMemberPointer()
2597 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in EmitMemberDataPointer()
2615 ArrayRef<const CXXRecordDecl *> MemberPointerPath = MP.getMemberPointerPath(); in EmitMemberPointer()
2626 const CXXRecordDecl *SrcRD = cast<CXXRecordDecl>(MPD->getDeclContext()); in EmitMemberPointer()
2634 const CXXRecordDecl *PrevRD = SrcRD; in EmitMemberPointer()
2635 for (const CXXRecordDecl *PathElem : MemberPointerPath) { in EmitMemberPointer()
2636 const CXXRecordDecl *Base = nullptr; in EmitMemberPointer()
2637 const CXXRecordDecl *Derived = nullptr; in EmitMemberPointer()
2667 const CXXRecordDecl *RD = MD->getParent()->getMostRecentDecl(); in EmitMemberFunctionPointer()
2733 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in EmitMemberPointerComparison()
2872 CodeGenFunction &CGF, const Expr *E, const CXXRecordDecl *RD, in AdjustVirtualBase()
2935 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in EmitMemberDataPointerAddress()
2996 CXXRecordDecl *SrcRD = SrcTy->getMostRecentCXXRecordDecl(); in EmitMemberPointerConversion()
2997 CXXRecordDecl *DstRD = DstTy->getMostRecentCXXRecordDecl(); in EmitMemberPointerConversion()
3042 const CXXRecordDecl *SrcRD = SrcTy->getMostRecentCXXRecordDecl(); in EmitNonNullMemberPointerConversion()
3043 const CXXRecordDecl *DstRD = DstTy->getMostRecentCXXRecordDecl(); in EmitNonNullMemberPointerConversion()
3068 const CXXRecordDecl *DerivedClass = DerivedTy->getMostRecentCXXRecordDecl(); in EmitNonNullMemberPointerConversion()
3224 const CXXRecordDecl *RD = MPT->getMostRecentCXXRecordDecl(); in EmitLoadOfMemberFunctionPointer()
3327 MSRTTIClass(const CXXRecordDecl *RD) : RD(RD) {} in MSRTTIClass()
3336 const CXXRecordDecl *RD, *VirtualRoot;
3395 MSRTTIBuilder(MicrosoftCXXABI &ABI, const CXXRecordDecl *RD) in MSRTTIBuilder()
3411 const CXXRecordDecl *RD;
3421 const CXXRecordDecl *RD) { in serializeClassHierarchy()
3430 llvm::SmallPtrSet<const CXXRecordDecl *, 8> VirtualBases; in detectAmbiguousBases()
3431 llvm::SmallPtrSet<const CXXRecordDecl *, 8> UniqueBases; in detectAmbiguousBases()
3432 llvm::SmallPtrSet<const CXXRecordDecl *, 8> AmbiguousBases; in detectAmbiguousBases()
3602 if (const CXXRecordDecl *VBase = Info->getVBaseWithVPtr()) in getCompleteObjectLocator()
3728 MicrosoftCXXABI::getMSCompleteObjectLocator(const CXXRecordDecl *RD, in getMSCompleteObjectLocator()
3795 const CXXRecordDecl *RD = CD->getParent(); in getAddrOfCXXCtorClosure()
3892 CXXRecordDecl *RD = T->getAsCXXRecordDecl(); in getCatchableType()
3935 if (const CXXRecordDecl *RD = PointeeType->getAsCXXRecordDecl()) { in getCatchableType()
3992 const CXXRecordDecl *MostDerivedClass = nullptr; in getCatchableTypeArray()
4128 if (const CXXRecordDecl *RD = T->getAsCXXRecordDecl()) in getThrowInfo()