Home
last modified time | relevance | path

Searched refs:CXXRecordDecl (Results 1 – 25 of 129) sorted by relevance

123456

/external/clang/lib/CodeGen/
DCGVTables.h24 class CXXRecordDecl; variable
34 const CXXRecordDecl *Base;
40 BaseSubobject(const CXXRecordDecl *Base, CharUnits BaseOffset) in BaseSubobject()
44 const CXXRecordDecl *getBase() const { return Base; } in getBase()
62 DenseMapInfo<const clang::CXXRecordDecl *>::getEmptyKey(),
68 DenseMapInfo<const clang::CXXRecordDecl *>::getTombstoneKey(),
74 DenseMapInfo<const clang::CXXRecordDecl *>::getHashValue(Base.getBase()) ^
102 typedef std::pair<const CXXRecordDecl *,
103 const CXXRecordDecl *> ClassPairTy;
113 llvm::DenseMap<const CXXRecordDecl *, llvm::GlobalVariable *> VTables;
[all …]
DCGVTT.cpp31 const CXXRecordDecl *MostDerivedClass;
41 typedef llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedVirtualBasesSetTy;
74 const CXXRecordDecl *VTableClass,
92 const CXXRecordDecl *VTableClass,
107 void LayoutVirtualVTTs(const CXXRecordDecl *RD,
115 VTTBuilder(CodeGenModule &CGM, const CXXRecordDecl *MostDerivedClass,
140 const CXXRecordDecl *MostDerivedClass, in VTTBuilder()
176 const CXXRecordDecl *VTableClass, in AddVTablePointer()
220 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVTTs()
222 for (CXXRecordDecl::base_class_const_iterator I = RD->bases_begin(), in LayoutSecondaryVTTs()
[all …]
DCGVTables.cpp37 const CXXRecordDecl *DerivedClass;
41 const CXXRecordDecl *VirtualBase;
51 BaseOffset(const CXXRecordDecl *DerivedClass, in BaseOffset()
52 const CXXRecordDecl *VirtualBase, CharUnits NonVirtualOffset) in BaseOffset()
77 const CXXRecordDecl *MostDerivedClass;
87 const CXXRecordDecl *LayoutClass;
108 typedef llvm::DenseMap<std::pair<const CXXRecordDecl *, unsigned>,
111 typedef llvm::DenseMap<const CXXRecordDecl *, unsigned> SubobjectCountMapTy;
121 typedef llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedVirtualBasesSetTy;
129 FinalOverriders(const CXXRecordDecl *MostDerivedClass,
[all …]
DCGClass.cpp27 const CXXRecordDecl *DerivedClass, in ComputeNonVirtualBaseClassOffset()
32 const CXXRecordDecl *RD = DerivedClass; in ComputeNonVirtualBaseClassOffset()
41 const CXXRecordDecl *BaseDecl = in ComputeNonVirtualBaseClassOffset()
42 cast<CXXRecordDecl>(Base->getType()->getAs<RecordType>()->getDecl()); in ComputeNonVirtualBaseClassOffset()
54 CodeGenModule::GetNonVirtualBaseClassOffset(const CXXRecordDecl *ClassDecl, in GetNonVirtualBaseClassOffset()
78 const CXXRecordDecl *Derived, in GetAddressOfDirectBaseInCompleteClass()
79 const CXXRecordDecl *Base, in GetAddressOfDirectBaseInCompleteClass()
137 const CXXRecordDecl *Derived, in GetAddressOfBaseClass()
144 const CXXRecordDecl *VBase = 0; in GetAddressOfBaseClass()
149 cast<CXXRecordDecl>((*Start)->getType()->getAs<RecordType>()->getDecl()); in GetAddressOfBaseClass()
[all …]
DCGRTTI.cpp47 void BuildSIClassTypeInfo(const CXXRecordDecl *RD);
52 void BuildVMIClassTypeInfo(const CXXRecordDecl *RD);
255 const CXXRecordDecl *RD = cast<CXXRecordDecl>(RecordTy->getDecl()); in ShouldUseExternalRTTIDescriptor()
336 const CXXRecordDecl *RD = cast<CXXRecordDecl>(Record->getDecl()); in getTypeInfoLinkage()
350 static bool CanUseSingleInheritance(const CXXRecordDecl *RD) { in CanUseSingleInheritance()
356 CXXRecordDecl::base_class_const_iterator Base = RD->bases_begin(); in CanUseSingleInheritance()
367 const CXXRecordDecl *BaseDecl = in CanUseSingleInheritance()
368 cast<CXXRecordDecl>(Base->getType()->getAs<RecordType>()->getDecl()); in CanUseSingleInheritance()
432 const CXXRecordDecl *RD = in BuildVTablePointer()
433 cast<CXXRecordDecl>(cast<RecordType>(Ty)->getDecl()); in BuildVTablePointer()
[all …]
DCGRecordLayoutBuilder.cpp63 llvm::DenseMap<const CXXRecordDecl *, unsigned> NonVirtualBases;
64 llvm::DenseMap<const CXXRecordDecl *, unsigned> VirtualBases;
72 llvm::SmallPtrSet<const CXXRecordDecl *, 4> LaidOutVirtualBases;
123 void LayoutBase(const CXXRecordDecl *base,
128 void LayoutVirtualBase(const CXXRecordDecl *base,
132 void LayoutVirtualBases(const CXXRecordDecl *RD,
136 void LayoutNonVirtualBase(const CXXRecordDecl *base,
140 void LayoutNonVirtualBases(const CXXRecordDecl *RD,
144 bool ComputeNonVirtualBaseType(const CXXRecordDecl *RD);
581 void CGRecordLayoutBuilder::LayoutBase(const CXXRecordDecl *base, in LayoutBase()
[all …]
DCGCXX.cpp42 const CXXRecordDecl *Class = D->getParent(); in TryEmitBaseDestructorAsAlias()
54 for (CXXRecordDecl::field_iterator I = Class->field_begin(), in TryEmitBaseDestructorAsAlias()
60 const CXXRecordDecl *UniqueBase = 0; in TryEmitBaseDestructorAsAlias()
61 for (CXXRecordDecl::base_class_const_iterator I = Class->bases_begin(), in TryEmitBaseDestructorAsAlias()
68 const CXXRecordDecl *Base in TryEmitBaseDestructorAsAlias()
69 = cast<CXXRecordDecl>(I->getType()->getAs<RecordType>()->getDecl()); in TryEmitBaseDestructorAsAlias()
332 const CXXRecordDecl *RD = cast<CXXRecordDecl>(RT->getDecl()); in BuildAppleKextVirtualCall()
357 const CXXRecordDecl *RD) { in BuildAppleKextVirtualDestructorCall()
DCGRecordLayout.h195 llvm::DenseMap<const CXXRecordDecl *, unsigned> NonVirtualBases;
198 llvm::DenseMap<const CXXRecordDecl *, unsigned> CompleteObjectVirtualBases;
252 unsigned getNonVirtualBaseLLVMFieldNo(const CXXRecordDecl *RD) const { in getNonVirtualBaseLLVMFieldNo()
259 unsigned getVirtualBaseIndex(const CXXRecordDecl *base) const { in getVirtualBaseIndex()
/external/clang/lib/AST/
DCXXInheritance.cpp79 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base) const { in isDerivedFrom()
85 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base, in isDerivedFrom()
90 Paths.setOrigin(const_cast<CXXRecordDecl*>(this)); in isDerivedFrom()
92 const_cast<CXXRecordDecl*>(Base->getCanonicalDecl()), in isDerivedFrom()
96 bool CXXRecordDecl::isVirtuallyDerivedFrom(CXXRecordDecl *Base) const { in isVirtuallyDerivedFrom()
106 Paths.setOrigin(const_cast<CXXRecordDecl*>(this)); in isVirtuallyDerivedFrom()
110 static bool BaseIsNot(const CXXRecordDecl *Base, void *OpaqueTarget) { in BaseIsNot()
112 return Base->getCanonicalDecl() != (const CXXRecordDecl*) OpaqueTarget; in BaseIsNot()
115 bool CXXRecordDecl::isProvablyNotDerivedFrom(const CXXRecordDecl *Base) const { in isProvablyNotDerivedFrom()
119 bool CXXRecordDecl::forallBases(ForallBasesCallback *BaseMatches, in forallBases()
[all …]
DRecordLayoutBuilder.cpp41 const CXXRecordDecl *Class;
64 const CXXRecordDecl *Class;
67 typedef llvm::SmallVector<const CXXRecordDecl *, 1> ClassVectorTy;
79 void AddSubobjectAtOffset(const CXXRecordDecl *RD, CharUnits Offset);
84 void UpdateEmptyFieldSubobjects(const CXXRecordDecl *RD,
85 const CXXRecordDecl *Class,
105 bool CanPlaceSubobjectAtOffset(const CXXRecordDecl *RD,
111 bool CanPlaceFieldSubobjectAtOffset(const CXXRecordDecl *RD,
112 const CXXRecordDecl *Class,
123 EmptySubobjectMap(const ASTContext &Context, const CXXRecordDecl *Class) in EmptySubobjectMap()
[all …]
DDeclCXX.cpp30 CXXRecordDecl::DefinitionData::DefinitionData(CXXRecordDecl *D) in DefinitionData()
49 CXXRecordDecl::CXXRecordDecl(Kind K, TagKind TK, DeclContext *DC, in CXXRecordDecl() function in CXXRecordDecl
51 IdentifierInfo *Id, CXXRecordDecl *PrevDecl) in CXXRecordDecl()
56 CXXRecordDecl *CXXRecordDecl::Create(const ASTContext &C, TagKind TK, in Create()
59 CXXRecordDecl* PrevDecl, in Create()
61 CXXRecordDecl* R = new (C) CXXRecordDecl(CXXRecord, TK, DC, StartLoc, IdLoc, in Create()
70 CXXRecordDecl *CXXRecordDecl::Create(const ASTContext &C, EmptyShell Empty) { in Create()
71 return new (C) CXXRecordDecl(CXXRecord, TTK_Struct, 0, SourceLocation(), in Create()
76 CXXRecordDecl::setBases(CXXBaseSpecifier const * const *Bases, in setBases()
104 CXXRecordDecl *BaseClassDecl in setBases()
[all …]
DInheritViz.cpp92 const CXXRecordDecl *Decl in WriteNode()
93 = static_cast<const CXXRecordDecl *>(Type->getAs<RecordType>()->getDecl()); in WriteNode()
94 for (CXXRecordDecl::base_class_const_iterator Base = Decl->bases_begin(); in WriteNode()
136 void CXXRecordDecl::viewInheritance(ASTContext& Context) const { in viewInheritance()
137 QualType Self = Context.getTypeDeclType(const_cast<CXXRecordDecl *>(this)); in viewInheritance()
DDeclFriend.cpp27 isa<CXXRecordDecl>(D) || in Create()
34 (cast<CXXRecordDecl>(DC)->getTemplateSpecializationKind())); in Create()
39 cast<CXXRecordDecl>(DC)->pushFriendDecl(FD); in Create()
/external/clang/lib/Sema/
DSemaAccess.cpp64 static CXXRecordDecl *FindDeclaringClass(NamedDecl *D) { in FindDeclaringClass()
72 CXXRecordDecl *DeclaringClass = cast<CXXRecordDecl>(DC); in FindDeclaringClass()
74 DeclaringClass = cast<CXXRecordDecl>(DeclaringClass->getDeclContext()); in FindDeclaringClass()
99 if (isa<CXXRecordDecl>(DC)) { in EffectiveContext()
100 CXXRecordDecl *Record = cast<CXXRecordDecl>(DC)->getCanonicalDecl(); in EffectiveContext()
117 bool includesClass(const CXXRecordDecl *R) const { in includesClass()
129 typedef llvm::SmallVectorImpl<CXXRecordDecl*>::const_iterator record_iterator;
133 llvm::SmallVector<CXXRecordDecl*, 4> Records;
147 CXXRecordDecl *NamingClass, in AccessTarget()
158 CXXRecordDecl *BaseClass, in AccessTarget()
[all …]
DSemaDeclCXX.cpp478 if (CXXRecordDecl *Record in MergeCXXFunctionDecl()
479 = dyn_cast<CXXRecordDecl>(New->getDeclContext())) { in MergeCXXFunctionDecl()
613 CXXRecordDecl *CurDecl; in isCurrentClassName()
616 CurDecl = dyn_cast_or_null<CXXRecordDecl>(DC); in isCurrentClassName()
618 CurDecl = dyn_cast_or_null<CXXRecordDecl>(CurContext); in isCurrentClassName()
631 Sema::CheckBaseSpecifier(CXXRecordDecl *Class, in CheckBaseSpecifier()
688 CXXRecordDecl * CXXBaseDecl = cast<CXXRecordDecl>(BaseDecl); in CheckBaseSpecifier()
725 CXXRecordDecl *Class = dyn_cast<CXXRecordDecl>(classdecl); in ActOnBaseSpecifier()
747 bool Sema::AttachBaseSpecifiers(CXXRecordDecl *Class, CXXBaseSpecifier **Bases, in AttachBaseSpecifiers()
806 AttachBaseSpecifiers(cast<CXXRecordDecl>(ClassDecl), in ActOnBaseSpecifiers()
[all …]
DSemaLookup.cpp520 const CXXRecordDecl *Class) { in CanDeclareSpecialMemberFunction()
537 void Sema::ForceDeclarationOfImplicitMembers(CXXRecordDecl *Class) { in ForceDeclarationOfImplicitMembers()
586 if (const CXXRecordDecl *Record = dyn_cast<CXXRecordDecl>(DC)) in DeclareImplicitMemberFunctionsWithName()
591 const_cast<CXXRecordDecl *>(Record)); in DeclareImplicitMemberFunctionsWithName()
593 S.DeclareImplicitCopyConstructor(const_cast<CXXRecordDecl *>(Record)); in DeclareImplicitMemberFunctionsWithName()
598 if (const CXXRecordDecl *Record = dyn_cast<CXXRecordDecl>(DC)) in DeclareImplicitMemberFunctionsWithName()
601 S.DeclareImplicitDestructor(const_cast<CXXRecordDecl *>(Record)); in DeclareImplicitMemberFunctionsWithName()
608 if (const CXXRecordDecl *Record = dyn_cast<CXXRecordDecl>(DC)) in DeclareImplicitMemberFunctionsWithName()
611 S.DeclareImplicitCopyAssignment(const_cast<CXXRecordDecl *>(Record)); in DeclareImplicitMemberFunctionsWithName()
644 !isa<CXXRecordDecl>(DC)) in LookupDirect()
[all …]
/external/clang/include/clang/AST/
DCXXInheritance.h33 class CXXRecordDecl; variable
50 const CXXRecordDecl *Class;
119 CXXRecordDecl *Origin;
162 friend class CXXRecordDecl; variable
167 const CXXRecordDecl *Record,
168 CXXRecordDecl::BaseMatchesCallback *BaseMatches,
222 CXXRecordDecl *getOrigin() const { return Origin; } in getOrigin()
223 void setOrigin(CXXRecordDecl *Rec) { Origin = Rec; } in setOrigin()
239 const CXXRecordDecl *InVirtualSubobject) in UniqueVirtualMethod()
253 const CXXRecordDecl *InVirtualSubobject;
[all …]
DRecordLayout.h26 class CXXRecordDecl; variable
67 llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> PrimaryBase;
70 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits> BaseOffsetsMapTy;
96 const CXXRecordDecl *PrimaryBase,
148 const CXXRecordDecl *getPrimaryBase() const { in getPrimaryBase()
163 CharUnits getBaseClassOffset(const CXXRecordDecl *Base) const { in getBaseClassOffset()
171 CharUnits getVBaseClassOffset(const CXXRecordDecl *VBase) const { in getVBaseClassOffset()
180 uint64_t getBaseClassOffsetInBits(const CXXRecordDecl *Base) const { in getBaseClassOffsetInBits()
190 uint64_t getVBaseClassOffsetInBits(const CXXRecordDecl *VBase) const { in getVBaseClassOffsetInBits()
DDeclFriend.h56 friend class CXXRecordDecl::friend_iterator;
57 friend class CXXRecordDecl; variable
130 class CXXRecordDecl::friend_iterator {
133 friend class CXXRecordDecl; variable
180 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_begin() const { in friend_begin()
184 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_end() const { in friend_end()
188 inline void CXXRecordDecl::pushFriendDecl(FriendDecl *FD) { in pushFriendDecl()
DDeclCXX.h34 class CXXRecordDecl; variable
265 class CXXRecordDecl : public RecordDecl {
270 DefinitionData(CXXRecordDecl *D);
498 CXXRecordDecl *Definition;
551 CXXRecordDecl(Kind K, TagKind TK, DeclContext *DC,
553 IdentifierInfo *Id, CXXRecordDecl *PrevDecl);
574 virtual CXXRecordDecl *getCanonicalDecl() {
575 return cast<CXXRecordDecl>(RecordDecl::getCanonicalDecl());
577 virtual const CXXRecordDecl *getCanonicalDecl() const {
578 return cast<CXXRecordDecl>(RecordDecl::getCanonicalDecl());
[all …]
DMangle.h107 virtual void mangleCXXVTable(const CXXRecordDecl *RD,
109 virtual void mangleCXXVTT(const CXXRecordDecl *RD,
111 virtual void mangleCXXCtorVTable(const CXXRecordDecl *RD, int64_t Offset,
112 const CXXRecordDecl *Type,
DASTMutationListener.h20 class CXXRecordDecl; variable
40 virtual void AddedCXXImplicitMember(const CXXRecordDecl *RD, const Decl *D) {} in AddedCXXImplicitMember()
/external/clang/include/clang/Sema/
DDelayedDiagnostic.h45 CXXRecordDecl *NamingClass, in AccessedEntity()
55 CXXRecordDecl *BaseClass, in AccessedEntity()
56 CXXRecordDecl *DerivedClass, in AccessedEntity()
70 CXXRecordDecl *getNamingClass() const { return NamingClass; } in getNamingClass()
73 CXXRecordDecl *getBaseClass() const { in getBaseClass()
74 assert(!IsMember); return cast<CXXRecordDecl>(Target); in getBaseClass()
76 CXXRecordDecl *getDerivedClass() const { return NamingClass; } in getDerivedClass()
106 CXXRecordDecl *NamingClass;
/external/clang/test/PCH/
Dcxx-chain-function-template.cpp6 struct CXXRecordDecl { CXXRecordDecl(int); }; struct
22 cast<CXXRecordDecl>(1.0f); in test2()
28 cast<CXXRecordDecl>(1.0f); in test3()
/external/clang/lib/StaticAnalyzer/Checkers/
DLLVMConventionsChecker.cpp193 static bool IsPartOfAST(const CXXRecordDecl *R) { in IsPartOfAST()
197 for (CXXRecordDecl::base_class_const_iterator I = R->bases_begin(), in IsPartOfAST()
202 CXXRecordDecl *baseD = cast<CXXRecordDecl>(baseT->getDecl()); in IsPartOfAST()
214 const CXXRecordDecl *Root;
217 ASTFieldVisitor(const CXXRecordDecl *root, BugReporter &br) in ASTFieldVisitor()
225 static void CheckASTMemory(const CXXRecordDecl *R, BugReporter &BR) { in CheckASTMemory()
292 check::ASTDecl<CXXRecordDecl>,
295 void checkASTDecl(const CXXRecordDecl *R, AnalysisManager& mgr, in checkASTDecl()

123456