/freebsd/contrib/llvm-project/clang/lib/AST/ |
H A D | CXXInheritance.cpp | 67 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base) const { in isDerivedFrom() 73 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base, in isDerivedFrom() 89 bool CXXRecordDecl::isVirtuallyDerivedFrom(const CXXRecordDecl *Base) const { in isVirtuallyDerivedFrom() 109 bool CXXRecordDecl::isProvablyNotDerivedFrom(const CXXRecordDecl *Base) const { in isProvablyNotDerivedFrom() 130 const CXXRecordDecl *Record = this; in forallBases() 137 CXXRecordDecl *Base = in forallBases() 247 CXXRecordDecl *BaseRecord; in lookupInBases() 335 CXXRecordDecl *VBase = nullptr; in lookupInBases() 522 const CXXRecordDecl *BaseDecl = cast<CXXRecordDecl>(RT->getDecl()); in Collect() 691 const CXXRecordDecl *BaseDecl = in AddIndirectPrimaryBases() [all …]
|
H A D | VTableBuilder.cpp | 37 const CXXRecordDecl *DerivedClass; 42 const CXXRecordDecl *VirtualBase; 71 const CXXRecordDecl *VirtualBase; 93 const CXXRecordDecl *LayoutClass; 315 const CXXRecordDecl *DerivedRD = in ComputeReturnAdjustmentBaseOffset() 318 const CXXRecordDecl *BaseRD = in ComputeReturnAdjustmentBaseOffset() 2351 const CXXRecordDecl *VBase = in computeVTableRelatedInformation() 2906 const CXXRecordDecl *RD, in GroupNewVirtualOverloads() 2937 static bool isDirectVBase(const CXXRecordDecl *Base, const CXXRecordDecl *RD) { in isDirectVBase() 3603 const CXXRecordDecl *RD) { in computeVTableRelatedInformation() [all …]
|
H A D | DeclCXX.cpp | 75 CXXRecordDecl::DefinitionData::DefinitionData(CXXRecordDecl *D) in DefinitionData() 123 CXXRecordDecl::CXXRecordDecl(Kind K, TagKind TK, const ASTContext &C, in CXXRecordDecl() function in CXXRecordDecl 131 CXXRecordDecl *CXXRecordDecl::Create(const ASTContext &C, TagKind TK, in Create() 146 CXXRecordDecl * 163 CXXRecordDecl * 509 void CXXRecordDecl::addedClassSubobject(CXXRecordDecl *Subobj) { in addedClassSubobject() 1549 bool CXXRecordDecl::isCLike() const { in isCLike() 1873 CXXRecordDecl *CXXRecordDecl::getInstantiatedFromMemberClass() const { in getInstantiatedFromMemberClass() 1885 CXXRecordDecl::setInstantiationOfMemberClass(CXXRecordDecl *RD, in setInstantiationOfMemberClass() 1927 const CXXRecordDecl *CXXRecordDecl::getTemplateInstantiationPattern() const { in getTemplateInstantiationPattern() [all …]
|
H A D | RecordLayoutBuilder.cpp | 41 const CXXRecordDecl *Class; 110 const CXXRecordDecl *Class; 482 const CXXRecordDecl *RD, const CXXRecordDecl *Class, CharUnits Offset, in UpdateEmptyFieldSubobjects() 985 const CXXRecordDecl *RD) { in ComputeBaseSubobjectInfo() 1026 const CXXRecordDecl *RD) { in LayoutNonVirtualBases() 1145 const CXXRecordDecl *RD, const CXXRecordDecl *MostDerivedClass) { in LayoutVirtualBases() 2142 if (const CXXRecordDecl *RD = dyn_cast<CXXRecordDecl>(D)) { in FinishLayout() 2922 const CXXRecordDecl *RD, const CXXRecordDecl *BaseDecl, in layoutNonVirtualBase() 2990 const CXXRecordDecl *ParentClass = cast<CXXRecordDecl>(FD->getParent()); in layoutField() 3643 Bases, [&](const CXXRecordDecl *L, const CXXRecordDecl *R) { in DumpRecordLayout() [all …]
|
H A D | VTTBuilder.cpp | 32 const CXXRecordDecl *MostDerivedClass, in VTTBuilder() 43 const CXXRecordDecl *VTableClass) { in AddVTablePointer() 60 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVTTs() 68 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutSecondaryVTTs() 83 const CXXRecordDecl *VTableClass, in LayoutSecondaryVirtualPointers() 85 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVirtualPointers() 94 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutSecondaryVirtualPointers() 154 void VTTBuilder::LayoutVirtualVTTs(const CXXRecordDecl *RD, in LayoutVirtualVTTs() 158 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutVirtualVTTs() 180 const CXXRecordDecl *RD = Base.getBase(); in LayoutVTT()
|
H A D | MicrosoftCXXABI.cpp | 109 llvm::SmallDenseMap<CXXRecordDecl *, CXXConstructorDecl *> RecordToCopyCtor; 145 bool isNearlyEmpty(const CXXRecordDecl *RD) const override { in isNearlyEmpty() 150 getCopyConstructorForExceptionObject(CXXRecordDecl *RD) override { in getCopyConstructorForExceptionObject() 155 addCopyConstructorForExceptionObject(CXXRecordDecl *RD, in addCopyConstructorForExceptionObject() 208 static bool usesMultipleInheritanceModel(const CXXRecordDecl *RD) { in usesMultipleInheritanceModel() 213 const CXXRecordDecl *Base = in usesMultipleInheritanceModel() 222 MSInheritanceModel CXXRecordDecl::calculateInheritanceModel() const { in calculateInheritanceModel() 232 MSInheritanceModel CXXRecordDecl::getMSInheritanceModel() const { in getMSInheritanceModel() 238 bool CXXRecordDecl::nullFieldOffsetIsZero() const { in nullFieldOffsetIsZero() 244 MSVtorDispMode CXXRecordDecl::getMSVtorDispMode() const { in getMSVtorDispMode() [all …]
|
/freebsd/contrib/llvm-project/clang/include/clang/AST/ |
H A D | VTableBuilder.h | 27 class CXXRecordDecl; variable 119 const CXXRecordDecl *getRTTIDecl() const { in getRTTIDecl() 371 typedef llvm::DenseMap<const CXXRecordDecl *, 376 typedef std::pair<const CXXRecordDecl *, 449 VPtrInfo(const CXXRecordDecl *RD) in VPtrInfo() 455 const CXXRecordDecl *ObjectWithVPtr; 459 const CXXRecordDecl *IntroducingObject; 473 const CXXRecordDecl *NextBaseToMangle; 490 const CXXRecordDecl *getVBaseWithVPtr() const { in getVBaseWithVPtr() 516 const CXXRecordDecl *VBase; [all …]
|
H A D | VTTBuilder.h | 30 class CXXRecordDecl; variable 33 llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> BaseAndIsVirtual; 38 VTTVTable(const CXXRecordDecl *Base, CharUnits BaseOffset, bool BaseIsVirtual) in VTTVTable() 44 const CXXRecordDecl *getBase() const { in getBase() 75 const CXXRecordDecl *MostDerivedClass; 90 using VisitedVirtualBasesSetTy = llvm::SmallPtrSet<const CXXRecordDecl *, 4>; 106 const CXXRecordDecl *VTableClass); 119 const CXXRecordDecl *VTableClass, 129 void LayoutVirtualVTTs(const CXXRecordDecl *RD, 137 VTTBuilder(ASTContext &Ctx, const CXXRecordDecl *MostDerivedClass,
|
H A D | RecordLayout.h | 29 class CXXRecordDecl; variable 59 using VBaseOffsetsMapTy = llvm::DenseMap<const CXXRecordDecl *, VBaseInfo>; 132 llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> PrimaryBase; 135 const CXXRecordDecl *BaseSharingVBPtr; 138 using BaseOffsetsMapTy = llvm::DenseMap<const CXXRecordDecl *, CharUnits>; 167 const CXXRecordDecl *PrimaryBase, bool IsPrimaryBaseVirtual, 168 const CXXRecordDecl *BaseSharingVBPtr, 234 const CXXRecordDecl *getPrimaryBase() const { in getPrimaryBase() 249 CharUnits getBaseClassOffset(const CXXRecordDecl *Base) const { in getBaseClassOffset() 259 CharUnits getVBaseClassOffset(const CXXRecordDecl *VBase) const { in getVBaseClassOffset() [all …]
|
H A D | CXXInheritance.h | 50 const CXXRecordDecl *Class; 117 friend class CXXRecordDecl; variable 120 const CXXRecordDecl *Origin = nullptr; 142 llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedDependentRecords; 166 bool lookupInBases(ASTContext &Context, const CXXRecordDecl *Record, 167 CXXRecordDecl::BaseMatchesCallback BaseMatches, 217 const CXXRecordDecl *getOrigin() const { return Origin; } in getOrigin() 218 void setOrigin(const CXXRecordDecl *Rec) { Origin = Rec; } in setOrigin() 241 const CXXRecordDecl *InVirtualSubobject = nullptr; 246 const CXXRecordDecl *InVirtualSubobject) in UniqueVirtualMethod() [all …]
|
H A D | BaseSubobject.h | 25 class CXXRecordDecl; variable 32 const CXXRecordDecl *Base; 39 BaseSubobject(const CXXRecordDecl *Base, CharUnits BaseOffset) in BaseSubobject() 43 const CXXRecordDecl *getBase() const { return Base; } in getBase() 60 DenseMapInfo<const clang::CXXRecordDecl *>::getEmptyKey(), 66 DenseMapInfo<const clang::CXXRecordDecl *>::getTombstoneKey(), 71 using PairTy = std::pair<const clang::CXXRecordDecl *, clang::CharUnits>;
|
H A D | Mangle.h | 115 virtual std::string getLambdaString(const CXXRecordDecl *Lambda) = 0; 196 virtual void mangleCXXVTT(const CXXRecordDecl *RD, raw_ostream &) = 0; 198 const CXXRecordDecl *Type, 240 virtual void mangleCXXVFTable(const CXXRecordDecl *Derived, 241 ArrayRef<const CXXRecordDecl *> BasePath, 247 virtual void mangleCXXVBTable(const CXXRecordDecl *Derived, 248 ArrayRef<const CXXRecordDecl *> BasePath, 259 virtual void mangleCXXVirtualDisplacementMap(const CXXRecordDecl *SrcRD, 279 virtual void mangleCXXRTTIBaseClassArray(const CXXRecordDecl *Derived, 282 mangleCXXRTTIClassHierarchyDescriptor(const CXXRecordDecl *Derived, [all …]
|
H A D | DeclFriend.h | 61 friend class CXXRecordDecl; 62 friend class CXXRecordDecl::friend_iterator; 186 class CXXRecordDecl::friend_iterator { 187 friend class CXXRecordDecl; variable 238 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_begin() const { in friend_begin() 242 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_end() const { in friend_end() 246 inline CXXRecordDecl::friend_range CXXRecordDecl::friends() const { in friends() 250 inline void CXXRecordDecl::pushFriendDecl(FriendDecl *FD) { in pushFriendDecl()
|
H A D | DeclCXX.h | 258 class CXXRecordDecl : public RecordDecl { 343 CXXRecordDecl *Definition; 351 DefinitionData(CXXRecordDecl *D); 531 CXXRecordDecl *getPreviousDecl() { in getPreviousDecl() 532 return cast_or_null<CXXRecordDecl>( in getPreviousDecl() 540 CXXRecordDecl *getMostRecentDecl() { in getMostRecentDecl() 541 return cast<CXXRecordDecl>( in getMostRecentDecl() 550 CXXRecordDecl *Recent = in getMostRecentNonInjectedDecl() 1534 return const_cast<CXXRecordDecl *>(const_cast<const CXXRecordDecl *>(this) in getTemplateInstantiationPattern() 2185 CXXRecordDecl *getParent() { in getParent() [all …]
|
/freebsd/contrib/llvm-project/clang/lib/Sema/ |
H A D | SemaAccess.cpp | 73 CXXRecordDecl *DeclaringClass = cast<CXXRecordDecl>(DC); in FindDeclaringClass() 120 if (isa<CXXRecordDecl>(DC)) { in EffectiveContext() 121 CXXRecordDecl *Record = cast<CXXRecordDecl>(DC); in EffectiveContext() 322 const CXXRecordDecl *RD; in IsDerivedFromInclusive() 470 CXXRecordDecl *Record = *I; in MatchesFriend() 585 if (isa<CXXRecordDecl>(Friend)) in MatchesFriend() 623 const CXXRecordDecl *NamingClass; 675 const CXXRecordDecl *RD; in findFriendship() 1531 CXXRecordDecl *NamingClass = cast<CXXRecordDecl>(NamingD); in HandleDependentAccessCheck() 1703 CXXRecordDecl *ObjectClass; in CheckConstructorAccess() [all …]
|
/freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
H A D | CGVTables.h | 25 class CXXRecordDecl; variable 40 typedef std::pair<const CXXRecordDecl *, BaseSubobject> BaseSubobjectPairTy; 105 uint64_t getSubVTTIndex(const CXXRecordDecl *RD, BaseSubobject Base); 109 uint64_t getSecondaryVirtualPointerIndex(const CXXRecordDecl *RD, 115 GenerateConstructionVTable(const CXXRecordDecl *RD, const BaseSubobject &Base, 122 llvm::GlobalVariable *GetAddrOfVTT(const CXXRecordDecl *RD); 127 const CXXRecordDecl *RD); 136 void GenerateClassData(const CXXRecordDecl *RD); 138 bool isVTableExternal(const CXXRecordDecl *RD);
|
H A D | CGCXXABI.h | 33 class CXXRecordDecl; variable 169 virtual RecordArgABI getRecordArgABI(const CXXRecordDecl *RD) const = 0; 178 isPermittedToBeHomogeneousAggregate(const CXXRecordDecl *RD) const { in isPermittedToBeHomogeneousAggregate() 325 const CXXRecordDecl *RD) {} in initializeHiddenVirtualInheritanceMembers() 456 const CXXRecordDecl *RD) = 0; 469 const CXXRecordDecl *VTableClass) = 0; 476 const CXXRecordDecl *NearestVBase) = 0; 486 virtual llvm::GlobalVariable *getAddrOfVTable(const CXXRecordDecl *RD, 512 virtual void emitVirtualInheritanceTables(const CXXRecordDecl *RD) = 0; 667 virtual std::pair<llvm::Value *, const CXXRecordDecl *> [all …]
|
H A D | CGClass.cpp | 177 const CXXRecordDecl *RD = DerivedClass; in computeNonVirtualBaseClassOffset() 299 const CXXRecordDecl *VBase = nullptr; in GetAddressOfBaseClass() 306 VBase = cast<CXXRecordDecl>( in GetAddressOfBaseClass() 502 const CXXRecordDecl *BaseClass; 771 const CXXRecordDecl *ClassDecl = in EmitAsanPrologueOrEpilogue() 990 const CXXRecordDecl *ClassDecl; 1395 CXXRecordDecl *FieldClassDecl = cast<CXXRecordDecl>(RT->getDecl()); in FieldHasTrivialDestructorBody() 1700 const CXXRecordDecl *BaseClass; 2104 const CXXRecordDecl *record = cast<CXXRecordDecl>(rtype->getDecl()); in destroyCXXObject() 2692 static const CXXRecordDecl * [all …]
|
H A D | MicrosoftCXXABI.cpp | 1078 const CXXRecordDecl *BaseClassDecl) { in GetVirtualBaseClassOffset() 1498 const CXXRecordDecl *VBase = ML.VBase; in adjustThisArgumentForVirtualFunctionCall() 1776 const CXXRecordDecl *NearestVBase) { in getVTableAddressPointInStructor() 2915 const CXXRecordDecl *RD = cast<CXXRecordDecl>(FD->getParent()); in EmitMemberPointer() 2921 const CXXRecordDecl *SrcRD = cast<CXXRecordDecl>(MPD->getDeclContext()); in EmitMemberPointer() 2929 const CXXRecordDecl *PrevRD = SrcRD; in EmitMemberPointer() 2931 const CXXRecordDecl *Base = nullptr; in EmitMemberPointer() 3615 const CXXRecordDecl *RD, *VirtualRoot; 3694 const CXXRecordDecl *RD; 4072 const CXXRecordDecl *RD = CD->getParent(); in getAddrOfCXXCtorClosure() [all …]
|
H A D | CGRecordLayout.h | 146 llvm::DenseMap<const CXXRecordDecl *, unsigned> NonVirtualBases; 149 llvm::DenseMap<const CXXRecordDecl *, unsigned> CompleteObjectVirtualBases; 205 bool hasNonVirtualBaseLLVMField(const CXXRecordDecl *RD) const { in hasNonVirtualBaseLLVMField() 209 unsigned getNonVirtualBaseLLVMFieldNo(const CXXRecordDecl *RD) const { in getNonVirtualBaseLLVMFieldNo() 216 unsigned getVirtualBaseIndex(const CXXRecordDecl *base) const { in getVirtualBaseIndex()
|
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/WebKit/ |
H A D | PtrTypesSemantics.h | 18 class CXXRecordDecl; variable 31 std::optional<const clang::CXXRecordDecl *> 36 std::optional<bool> isRefCountable(const clang::CXXRecordDecl* Class); 39 bool isRefCounted(const clang::CXXRecordDecl *Class); 43 std::optional<bool> isUncounted(const clang::CXXRecordDecl* Class);
|
H A D | PtrTypesSemantics.cpp | 21 bool hasPublicMethodInBaseClass(const CXXRecordDecl *R, in hasPublicMethodInBaseClass() 38 std::optional<const clang::CXXRecordDecl *> 46 const CXXRecordDecl *R = T->getAsCXXRecordDecl(); in hasPublicMethodInBase() 55 std::optional<bool> isRefCountable(const CXXRecordDecl* R) in isRefCountable() 69 Paths.setOrigin(const_cast<CXXRecordDecl *>(R)); in isRefCountable() 121 std::optional<bool> isUncounted(const CXXRecordDecl* Class) in isUncounted() 151 const CXXRecordDecl *calleeMethodsClass = M->getParent(); in isGetterOfRefCounted() 177 bool isRefCounted(const CXXRecordDecl *R) { in isRefCounted()
|
H A D | RefCntblBaseVirtualDtorChecker.cpp | 52 bool VisitCXXRecordDecl(const CXXRecordDecl *RD) { in checkASTDecl() 62 void visitCXXRecordDecl(const CXXRecordDecl *RD) const { in visitCXXRecordDecl() 70 const CXXRecordDecl *ProblematicBaseClass = nullptr; in visitCXXRecordDecl() 90 const CXXRecordDecl *C = T->getAsCXXRecordDecl(); in visitCXXRecordDecl() 139 bool shouldSkipDecl(const CXXRecordDecl *RD) const { in shouldSkipDecl() 167 void reportBug(const CXXRecordDecl *DerivedClass, in reportBug() 169 const CXXRecordDecl *ProblematicBaseClass) const { in reportBug()
|
/freebsd/contrib/llvm-project/clang/include/clang/Sema/ |
H A D | HLSLExternalSemaSource.h | 26 CXXRecordDecl *ResourceDecl = nullptr; 28 using CompletionFunction = std::function<void(CXXRecordDecl *)>; 29 llvm::DenseMap<CXXRecordDecl *, CompletionFunction> Completions; 35 void onCompletion(CXXRecordDecl *Record, CompletionFunction Fn);
|
H A D | DelayedDiagnostic.h | 61 MemberNonce _, CXXRecordDecl *NamingClass, in AccessedEntity() 68 BaseNonce _, CXXRecordDecl *BaseClass, in AccessedEntity() 69 CXXRecordDecl *DerivedClass, AccessSpecifier Access) in AccessedEntity() 81 CXXRecordDecl *getNamingClass() const { return NamingClass; } in getNamingClass() 84 CXXRecordDecl *getBaseClass() const { in getBaseClass() 85 assert(!IsMember); return cast<CXXRecordDecl>(Target); in getBaseClass() 87 CXXRecordDecl *getDerivedClass() const { return NamingClass; } in getDerivedClass() 117 CXXRecordDecl *NamingClass;
|