Home
last modified time | relevance | path

Searched refs:BaseDecl (Results 1 – 17 of 17) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/clang/lib/AST/
H A DVTTBuilder.cpp67 const auto *BaseDecl = in LayoutSecondaryVTTs() local
72 Layout.getBaseClassOffset(BaseDecl); in LayoutSecondaryVTTs()
75 LayoutVTT(BaseSubobject(BaseDecl, BaseOffset), /*BaseIsVirtual=*/false); in LayoutSecondaryVTTs()
93 const auto *BaseDecl = in LayoutSecondaryVirtualPointers() local
103 if (!BaseDecl->isDynamicClass()) in LayoutSecondaryVirtualPointers()
111 if (!VBases.insert(BaseDecl).second) in LayoutSecondaryVirtualPointers()
114 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in LayoutSecondaryVirtualPointers()
120 Layout.getBaseClassOffset(BaseDecl); in LayoutSecondaryVirtualPointers()
123 Layout.getPrimaryBase() == BaseDecl) in LayoutSecondaryVirtualPointers()
133 (BaseDecl->getNumVBases() || BaseDeclIsMorallyVirtual)) { in LayoutSecondaryVirtualPointers()
[all …]
H A DCXXInheritance.cpp81 const CXXRecordDecl *BaseDecl = Base->getCanonicalDecl(); in isDerivedFrom() local
83 [BaseDecl](const CXXBaseSpecifier *Specifier, CXXBasePath &Path) { in isDerivedFrom()
84 return FindBaseClass(Specifier, Path, BaseDecl); in isDerivedFrom()
101 const CXXRecordDecl *BaseDecl = Base->getCanonicalDecl(); in isVirtuallyDerivedFrom() local
103 [BaseDecl](const CXXBaseSpecifier *Specifier, CXXBasePath &Path) { in isVirtuallyDerivedFrom()
104 return FindVirtualBaseClass(Specifier, Path, BaseDecl); in isVirtuallyDerivedFrom()
522 const CXXRecordDecl *BaseDecl = cast<CXXRecordDecl>(RT->getDecl()); in Collect() local
523 if (!BaseDecl->isPolymorphic()) in Collect()
529 Collect(BaseDecl, false, InVirtualSubobject, Overriders); in Collect()
541 CXXFinalOverriderMap *&MyVirtualOverriders = VirtualOverriders[BaseDecl]; in Collect()
[all …]
H A DRecordLayoutBuilder.cpp190 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in ComputeEmptySubobjectSizes() local
193 const ASTRecordLayout &Layout = Context.getASTRecordLayout(BaseDecl); in ComputeEmptySubobjectSizes()
194 if (BaseDecl->isEmpty()) { in ComputeEmptySubobjectSizes()
395 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in CanPlaceFieldSubobjectAtOffset() local
397 CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(BaseDecl); in CanPlaceFieldSubobjectAtOffset()
398 if (!CanPlaceFieldSubobjectAtOffset(BaseDecl, Class, BaseOffset)) in CanPlaceFieldSubobjectAtOffset()
506 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in UpdateEmptyFieldSubobjects() local
508 CharUnits BaseOffset = Offset + Layout.getBaseClassOffset(BaseDecl); in UpdateEmptyFieldSubobjects()
509 UpdateEmptyFieldSubobjects(BaseDecl, Class, BaseOffset, in UpdateEmptyFieldSubobjects()
964 const CXXRecordDecl *BaseDecl = I.getType()->getAsCXXRecordDecl(); in ComputeBaseSubobjectInfo() local
[all …]
H A DVTableBuilder.cpp347 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in ComputeBaseOffsets() local
353 if (SubobjectOffsets.count(std::make_pair(BaseDecl, 0))) in ComputeBaseOffsets()
359 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
361 LayoutClassLayout.getVBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
364 CharUnits Offset = Layout.getBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
370 ComputeBaseOffsets(BaseSubobject(BaseDecl, BaseOffset), in ComputeBaseOffsets()
383 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in dump() local
386 if (!BaseDecl->isPolymorphic()) in dump()
391 if (!VisitedVirtualBases.insert(BaseDecl).second) { in dump()
396 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in dump()
[all …]
H A DDeclCXX.cpp2025 const auto *BaseDecl = in mayBeAbstract() local
2027 if (BaseDecl->isAbstract()) in mayBeAbstract()
H A DExprConstant.cpp3069 const CXXRecordDecl *BaseDecl = Base->getType()->getAsCXXRecordDecl(); in HandleLValueBase() local
3072 return HandleLValueDirectBase(Info, E, Obj, DerivedDecl, BaseDecl); in HandleLValueBase()
3086 Obj.getLValueOffset() += Layout.getVBaseClassOffset(BaseDecl); in HandleLValueBase()
3087 Obj.addDecl(Info, E, BaseDecl, /*Virtual*/ true); in HandleLValueBase()
6854 CXXRecordDecl *BaseDecl = BS.getType()->getAsCXXRecordDecl(); in visitRecord() local
6857 Layout.getBaseClassOffset(BaseDecl) + Offset)) in visitRecord()
7055 CXXRecordDecl *BaseDecl = BS.getType()->getAsCXXRecordDecl(); in visit() local
7056 if (BaseDecl->isEmpty() || in visit()
7057 Info.Ctx.getASTRecordLayout(BaseDecl).getNonVirtualSize().isZero()) in visit()
7061 BS.getType(), Layout.getBaseClassOffset(BaseDecl) + Offset); in visit()
/netbsd-src/external/apache2/llvm/dist/clang/lib/CodeGen/
H A DCGRecordLayoutBuilder.cpp512 const CXXRecordDecl *BaseDecl = Layout.getPrimaryBase(); in accumulateBases() local
514 getStorageType(BaseDecl), BaseDecl)); in accumulateBases()
523 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in accumulateBases() local
524 if (!BaseDecl->isEmpty() && in accumulateBases()
525 !Context.getASTRecordLayout(BaseDecl).getNonVirtualSize().isZero()) in accumulateBases()
526 Members.push_back(MemberInfo(Layout.getBaseClassOffset(BaseDecl), in accumulateBases()
527 MemberInfo::Base, getStorageType(BaseDecl), BaseDecl)); in accumulateBases()
666 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in accumulateVBases() local
667 if (BaseDecl->isEmpty()) in accumulateVBases()
671 if (Context.isNearlyEmpty(BaseDecl) && !hasOwnStorage(RD, BaseDecl)) in accumulateVBases()
[all …]
H A DCGClass.cpp183 const auto *BaseDecl = in computeNonVirtualBaseClassOffset() local
187 Offset += Layout.getBaseClassOffset(BaseDecl); in computeNonVirtualBaseClassOffset()
189 RD = BaseDecl; in computeNonVirtualBaseClassOffset()
2565 auto *BaseDecl = in getVTablePointers() local
2569 if (!BaseDecl->isDynamicClass()) in getVTablePointers()
2578 if (!VBases.insert(BaseDecl).second) in getVTablePointers()
2584 BaseOffset = Layout.getVBaseClassOffset(BaseDecl); in getVTablePointers()
2590 BaseOffset = Base.getBaseOffset() + Layout.getBaseClassOffset(BaseDecl); in getVTablePointers()
2592 OffsetFromNearestVBase + Layout.getBaseClassOffset(BaseDecl); in getVTablePointers()
2593 BaseDeclIsNonVirtualPrimaryBase = Layout.getPrimaryBase() == BaseDecl; in getVTablePointers()
[all …]
H A DItaniumCXXABI.cpp3440 auto *BaseDecl = in CanUseSingleInheritance() local
3442 if (!BaseDecl->isEmpty() && in CanUseSingleInheritance()
3443 BaseDecl->isDynamicClass() != RD->isDynamicClass()) in CanUseSingleInheritance()
3939 auto *BaseDecl = in ComputeVMIClassTypeInfoFlags() local
3944 if (!Bases.VirtualBases.insert(BaseDecl).second) { in ComputeVMIClassTypeInfoFlags()
3949 if (Bases.NonVirtualBases.count(BaseDecl)) in ComputeVMIClassTypeInfoFlags()
3954 if (!Bases.NonVirtualBases.insert(BaseDecl).second) { in ComputeVMIClassTypeInfoFlags()
3959 if (Bases.VirtualBases.count(BaseDecl)) in ComputeVMIClassTypeInfoFlags()
3965 for (const auto &I : BaseDecl->bases()) in ComputeVMIClassTypeInfoFlags()
4038 auto *BaseDecl = in BuildVMIClassTypeInfo() local
[all …]
H A DMicrosoftCXXABI.cpp935 const CXXRecordDecl *BaseDecl = Base.getType()->getAsCXXRecordDecl(); in performBaseAdjustment() local
936 if (Context.getASTRecordLayout(BaseDecl).hasExtendableVFPtr()) { in performBaseAdjustment()
937 PolymorphicBase = BaseDecl; in performBaseAdjustment()
H A DCGOpenMPRuntime.cpp7446 const ValueDecl *BaseDecl = nullptr, const Expr *MapExpr = nullptr, in generateInfoForComponentList() argument
7758 : BaseDecl; in generateInfoForComponentList()
/netbsd-src/external/apache2/llvm/dist/clang/lib/StaticAnalyzer/Core/
H A DStore.cpp280 const CXXRecordDecl *BaseDecl = BaseType->getPointeeCXXRecordDecl(); in evalDerivedToBase() local
281 if (!BaseDecl) in evalDerivedToBase()
282 BaseDecl = BaseType->getAsCXXRecordDecl(); in evalDerivedToBase()
283 assert(BaseDecl && "not a C++ object?"); in evalDerivedToBase()
289 if (SR->getSymbol()->getType()->getPointeeCXXRecordDecl() == BaseDecl) in evalDerivedToBase()
296 BaseDecl, cast<SubRegion>(DerivedReg), IsVirtual); in evalDerivedToBase()
/netbsd-src/external/apache2/llvm/dist/clang/lib/Sema/
H A DSemaLookup.cpp2790 CXXRecordDecl *BaseDecl = cast<CXXRecordDecl>(BaseType->getDecl()); in addAssociatedClassesAndNamespaces() local
2791 if (Result.addClassTransitive(BaseDecl)) { in addAssociatedClassesAndNamespaces()
2793 DeclContext *BaseCtx = BaseDecl->getDeclContext(); in addAssociatedClassesAndNamespaces()
2797 if (BaseDecl->bases_begin() != BaseDecl->bases_end()) in addAssociatedClassesAndNamespaces()
2798 Bases.push_back(BaseDecl); in addAssociatedClassesAndNamespaces()
H A DSemaDeclCXX.cpp2496 if (CXXRecordDecl *BaseDecl = BaseType->getAsCXXRecordDecl()) { in CheckBaseSpecifier() local
2497 if (BaseDecl->getCanonicalDecl() == Class->getCanonicalDecl() || in CheckBaseSpecifier()
2498 ((BaseDecl = BaseDecl->getDefinition()) && in CheckBaseSpecifier()
2499 findCircularInheritance(Class, BaseDecl))) { in CheckBaseSpecifier()
2503 if (BaseDecl->getCanonicalDecl() != Class->getCanonicalDecl()) in CheckBaseSpecifier()
2504 Diag(BaseDecl->getLocation(), diag::note_previous_decl) in CheckBaseSpecifier()
2558 RecordDecl *BaseDecl = BaseType->castAs<RecordType>()->getDecl(); in CheckBaseSpecifier() local
2559 assert(BaseDecl && "Record type has no declaration"); in CheckBaseSpecifier()
2560 BaseDecl = BaseDecl->getDefinition(); in CheckBaseSpecifier()
2561 assert(BaseDecl && "Base type is not incomplete, but has no definition"); in CheckBaseSpecifier()
[all …]
H A DSemaExprCXX.cpp902 CXXRecordDecl *BaseDecl = BS.getType()->getAsCXXRecordDecl(); in collectPublicBases() local
907 NewSubobject = VBases.insert(BaseDecl).second; in collectPublicBases()
912 ++SubobjectsSeen[BaseDecl]; in collectPublicBases()
917 PublicSubobjectsSeen.insert(BaseDecl); in collectPublicBases()
920 collectPublicBases(BaseDecl, SubobjectsSeen, VBases, PublicSubobjectsSeen, in collectPublicBases()
H A DSemaInit.cpp9314 RecordDecl *BaseDecl in Diagnose() local
9317 S.Diag(BaseDecl->getLocation(), diag::note_previous_decl) in Diagnose()
9318 << S.Context.getTagDeclType(BaseDecl); in Diagnose()
H A DSemaChecking.cpp14211 const CXXRecordDecl *BaseDecl = Base->getType()->getAsCXXRecordDecl(); in getDerivedToBaseAlignmentAndOffset() local
14218 Ctx.getASTRecordLayout(BaseDecl).getNonVirtualAlignment(); in getDerivedToBaseAlignmentAndOffset()
14224 Offset += RL.getBaseClassOffset(BaseDecl); in getDerivedToBaseAlignmentAndOffset()