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

/freebsd-13-stable/contrib/llvm-project/clang/include/clang/AST/
H A DVTableBuilder.h425 const CXXRecordDecl *VBase);
515 const CXXRecordDecl *VBase; member in struct:clang::MethodVFTableLocation
525 : VBTableIndex(0), VBase(nullptr), VFPtrOffset(CharUnits::Zero()),
528 MethodVFTableLocation(uint64_t VBTableIndex, const CXXRecordDecl *VBase, argument
530 : VBTableIndex(VBTableIndex), VBase(VBase), VFPtrOffset(VFPtrOffset),
535 assert(VBase != other.VBase);
600 /// Returns the index of VBase in the vbtable of Derived.
601 /// 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-13-stable/contrib/llvm-project/clang/lib/AST/
H A DCXXInheritance.cpp358 CXXRecordDecl *VBase = nullptr;
360 VBase = cast<CXXRecordDecl>(Record->getDecl());
361 if (!VBase)
376 if (HidingClass->isVirtuallyDerivedFrom(VBase))
H A DRecordLayoutBuilder.cpp2871 for (const CXXBaseSpecifier &VBase : RD->vbases()) {
2872 const CXXRecordDecl *BaseDecl = VBase.getType()->getAsCXXRecordDecl();
2883 for (const CXXBaseSpecifier &VBase : RD->vbases()) {
2884 const CXXRecordDecl *BaseDecl = VBase.getType()->getAsCXXRecordDecl();
3409 const CXXRecordDecl *VBase = Base.getType()->getAsCXXRecordDecl(); local
3411 CharUnits VBaseOffset = Offset + Layout.getVBaseClassOffset(VBase);
3413 if (VtorDisps.find(VBase)->second.hasVtorDisp()) {
3415 OS << "(vtordisp for vbase " << *VBase << ")\n"; local
3418 DumpRecordLayout(OS, VBase, C, VBaseOffset, IndentLevel,
3419 VBase
[all...]
H A DVTableBuilder.cpp2287 const CXXRecordDecl *VBase) {
2288 ClassPairTy ClassPair(RD, VBase);
2347 const CXXRecordDecl *VBase = local
2350 if (VirtualBaseClassOffsetOffsets.count(std::make_pair(RD, VBase)))
3595 if (LHS.VBase)
3596 L += Layout.getVBaseClassOffset(LHS.VBase);
3597 if (RHS.VBase)
3598 R += Layout.getVBaseClassOffset(RHS.VBase);
3749 const CXXRecordDecl *VBase) {
3751 assert(VBInfo.VBTableIndices.count(VBase));
2286 getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, const CXXRecordDecl *VBase) argument
3748 getVBTableIndex(const CXXRecordDecl *Derived, const CXXRecordDecl *VBase) argument
[all...]
H A DDeclCXX.cpp287 for (const auto &VBase : BaseClassDecl->vbases()) {
289 if (SeenVBaseTypes.insert(C.getCanonicalType(VBase.getType())).second) {
290 VBases.push_back(&VBase);
297 if (CXXRecordDecl *VBaseDecl = VBase.getType()->getAsCXXRecordDecl())
H A DMicrosoftMangle.cpp673 if (ML.VBase) {
/freebsd-13-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:__anon1788::CGRecordLowering::MemberInfo::InfoKind
546 Members.push_back(MemberInfo(Offset, MemberInfo::VBase, nullptr,
554 Members.push_back(MemberInfo(Offset, MemberInfo::VBase,
579 Member->Kind == MemberInfo::VBase) {
691 else if (Member->Kind == MemberInfo::VBase)
H A DMicrosoftCXXABI.cpp240 if (ML.VBase || !ML.VFPtrOffset.isZero())
344 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); local
345 if (!DstRD->isVirtuallyDerivedFrom(VBase))
348 unsigned SrcVBIndex = VTContext.getVBTableIndex(SrcRD, VBase);
349 unsigned DstVBIndex = VTContext.getVBTableIndex(DstRD, VBase);
1190 const CXXRecordDecl *VBase = S.getType()->getAsCXXRecordDecl(); local
1191 auto I = VBaseMap.find(VBase);
1197 GetVirtualBaseClassOffset(CGF, getThisAddress(CGF), RD, VBase);
1389 if (ML.VBase) {
1392 Adjustment += DerivedLayout.getVBaseClassOffset(ML.VBase);
1442 const CXXRecordDecl *VBase = ML.VBase; local
2133 const CXXRecordDecl *VBase = I.getType()->getAsCXXRecordDecl(); local
[all...]
H A DCGClass.cpp299 const CXXRecordDecl *VBase = nullptr; local
306 VBase = cast<CXXRecordDecl>(
315 VBase ? VBase : Derived, Start, PathEnd);
320 if (VBase && Derived->hasAttr<FinalAttr>()) {
322 CharUnits vBaseOffset = layout.getVBaseClassOffset(VBase);
324 VBase = nullptr; // we no longer have a virtual step
337 if (NonVirtualOffset.isZero() && !VBase) {
365 EmitTypeCheck(VBase ? TCK_UpcastToVirtualBase : TCK_Upcast, Loc,
371 if (VBase) {
[all...]
H A DCodeGenModule.h891 const CXXRecordDecl *VBase);
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopRerollPass.cpp1033 DenseSet<Instruction*> VBase; local
1034 collectInLoopUserSet(DRS.BaseInst, Exclude, PossibleRedSet, VBase);
1035 for (auto *I : VBase) {
1045 if (V.size() != VBase.size()) {
/freebsd-13-stable/contrib/llvm-project/clang/lib/Sema/
H A DSemaDeclCXX.cpp5054 for (auto &VBase : ClassDecl->vbases()) {
5056 = Info.AllBaseFields.lookup(VBase.getType()->getAs<RecordType>())) {
5065 << VBase.getType() << ClassDecl;
5075 bool IsInheritedVirtualBase = !DirectVBases.count(&VBase);
5078 &VBase, IsInheritedVirtualBase,
5220 for (const auto &VBase : ClassDecl->vbases())
5221 IdealInitKeys.push_back(GetKeyForBase(SemaRef.Context, VBase.getType()));
5520 for (const auto &VBase : ClassDecl->vbases()) {
5522 const RecordType *RT = VBase.getType()->castAs<RecordType>();
5540 << Context.getTypeDeclType(ClassDecl) << VBase
[all...]
H A DSemaCast.cpp1651 if (const RecordType *VBase = Paths.getDetectedVirtual()) {
1653 << SrcClass << DestClass << QualType(VBase, 0) << OpRange;
H A DSemaOverload.cpp3153 if (const RecordType *VBase = Paths.getDetectedVirtual()) {
3155 << FromClass << ToClass << QualType(VBase, 0)

Completed in 169 milliseconds