Searched refs:VBase (Results 1 - 15 of 15) sorted by relevance

/freebsd-11-stable/contrib/llvm-project/clang/include/clang/AST/
H A DVTableBuilder.h400 const CXXRecordDecl *VBase);
480 const CXXRecordDecl *VBase; member in struct:clang::MethodVFTableLocation
490 : VBTableIndex(0), VBase(nullptr), VFPtrOffset(CharUnits::Zero()),
493 MethodVFTableLocation(uint64_t VBTableIndex, const CXXRecordDecl *VBase, argument
495 : VBTableIndex(VBTableIndex), VBase(VBase), VFPtrOffset(VFPtrOffset),
500 assert(VBase != other.VBase);
565 /// Returns the index of VBase in the vbtable of Derived.
566 /// VBase mus
[all...]
H A DRecordLayout.h240 CharUnits getVBaseClassOffset(const CXXRecordDecl *VBase) const {
242 assert(CXXInfo->VBaseOffsets.count(VBase) && "Did not find base!");
244 return CXXInfo->VBaseOffsets[VBase].VBaseOffset;
/freebsd-11-stable/contrib/llvm-project/clang/lib/AST/
H A DCXXInheritance.cpp368 CXXRecordDecl *VBase = nullptr;
370 VBase = cast<CXXRecordDecl>(Record->getDecl());
371 if (!VBase)
386 if (HidingClass->isVirtuallyDerivedFrom(VBase))
H A DRecordLayoutBuilder.cpp2857 for (const CXXBaseSpecifier &VBase : RD->vbases()) {
2858 const CXXRecordDecl *BaseDecl = VBase.getType()->getAsCXXRecordDecl();
2869 for (const CXXBaseSpecifier &VBase : RD->vbases()) {
2870 const CXXRecordDecl *BaseDecl = VBase.getType()->getAsCXXRecordDecl();
3393 const CXXRecordDecl *VBase = Base.getType()->getAsCXXRecordDecl(); local
3395 CharUnits VBaseOffset = Offset + Layout.getVBaseClassOffset(VBase);
3397 if (VtorDisps.find(VBase)->second.hasVtorDisp()) {
3399 OS << "(vtordisp for vbase " << *VBase << ")\n"; local
3402 DumpRecordLayout(OS, VBase, C, VBaseOffset, IndentLevel,
3403 VBase
[all...]
H A DVTableBuilder.cpp2240 const CXXRecordDecl *VBase) {
2241 ClassPairTy ClassPair(RD, VBase);
2300 const CXXRecordDecl *VBase = local
2303 if (VirtualBaseClassOffsetOffsets.count(std::make_pair(RD, VBase)))
3547 if (LHS.VBase)
3548 L += Layout.getVBaseClassOffset(LHS.VBase);
3549 if (RHS.VBase)
3550 R += Layout.getVBaseClassOffset(RHS.VBase);
3701 const CXXRecordDecl *VBase) {
3703 assert(VBInfo.VBTableIndices.count(VBase));
2239 getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, const CXXRecordDecl *VBase) argument
3700 getVBTableIndex(const CXXRecordDecl *Derived, const CXXRecordDecl *VBase) argument
[all...]
H A DDeclCXX.cpp284 for (const auto &VBase : BaseClassDecl->vbases()) {
286 if (SeenVBaseTypes.insert(C.getCanonicalType(VBase.getType())).second) {
287 VBases.push_back(&VBase);
294 if (CXXRecordDecl *VBaseDecl = VBase.getType()->getAsCXXRecordDecl())
H A DMicrosoftMangle.cpp671 if (ML.VBase) {
/freebsd-11-stable/contrib/llvm-project/clang/lib/CodeGen/
H A DCGRecordLayoutBuilder.cpp70 /// or at the beginning of the structure. Determining if a VBase actually
79 enum InfoKind { VFPtr, VBPtr, Field, Base, VBase, Scissor } Kind; enumerator in enum:__anon508::CGRecordLowering::MemberInfo::InfoKind
543 Members.push_back(MemberInfo(Offset, MemberInfo::VBase, nullptr,
551 Members.push_back(MemberInfo(Offset, MemberInfo::VBase,
576 Member->Kind == MemberInfo::VBase) {
688 else if (Member->Kind == MemberInfo::VBase)
H A DMicrosoftCXXABI.cpp240 if (ML.VBase || !ML.VFPtrOffset.isZero())
337 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); local
338 if (!DstRD->isVirtuallyDerivedFrom(VBase))
341 unsigned SrcVBIndex = VTContext.getVBTableIndex(SrcRD, VBase);
342 unsigned DstVBIndex = VTContext.getVBTableIndex(DstRD, VBase);
1183 const CXXRecordDecl *VBase = S.getType()->getAsCXXRecordDecl(); local
1184 auto I = VBaseMap.find(VBase);
1190 GetVirtualBaseClassOffset(CGF, getThisAddress(CGF), RD, VBase);
1382 if (ML.VBase) {
1385 Adjustment += DerivedLayout.getVBaseClassOffset(ML.VBase);
1435 const CXXRecordDecl *VBase = ML.VBase; local
2110 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); local
[all...]
H A DCGClass.cpp277 const CXXRecordDecl *VBase = nullptr; local
284 VBase = cast<CXXRecordDecl>(
293 VBase ? VBase : Derived, Start, PathEnd);
298 if (VBase && Derived->hasAttr<FinalAttr>()) {
300 CharUnits vBaseOffset = layout.getVBaseClassOffset(VBase);
302 VBase = nullptr; // we no longer have a virtual step
315 if (NonVirtualOffset.isZero() && !VBase) {
343 EmitTypeCheck(VBase ? TCK_UpcastToVirtualBase : TCK_Upcast, Loc,
349 if (VBase) {
[all...]
H A DCodeGenModule.h874 const CXXRecordDecl *VBase);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopRerollPass.cpp1027 DenseSet<Instruction*> VBase; local
1028 collectInLoopUserSet(DRS.BaseInst, Exclude, PossibleRedSet, VBase);
1029 for (auto *I : VBase) {
1039 if (V.size() != VBase.size()) {
/freebsd-11-stable/contrib/llvm-project/clang/lib/Sema/
H A DSemaDeclCXX.cpp5032 for (auto &VBase : ClassDecl->vbases()) {
5034 = Info.AllBaseFields.lookup(VBase.getType()->getAs<RecordType>())) {
5043 << VBase.getType() << ClassDecl;
5053 bool IsInheritedVirtualBase = !DirectVBases.count(&VBase);
5056 &VBase, IsInheritedVirtualBase,
5198 for (const auto &VBase : ClassDecl->vbases())
5199 IdealInitKeys.push_back(GetKeyForBase(SemaRef.Context, VBase.getType()));
5484 for (const auto &VBase : ClassDecl->vbases()) {
5486 const RecordType *RT = VBase.getType()->castAs<RecordType>();
5504 << Context.getTypeDeclType(ClassDecl) << VBase
[all...]
H A DSemaCast.cpp1594 if (const RecordType *VBase = Paths.getDetectedVirtual()) {
1596 << SrcClass << DestClass << QualType(VBase, 0) << OpRange;
H A DSemaOverload.cpp3142 if (const RecordType *VBase = Paths.getDetectedVirtual()) {
3144 << FromClass << ToClass << QualType(VBase, 0)

Completed in 410 milliseconds