• Home
  • Raw
  • Download

Lines Matching refs:CXXRecordDecl

37   const CXXRecordDecl *DerivedClass;
42 const CXXRecordDecl *VirtualBase;
52 BaseOffset(const CXXRecordDecl *DerivedClass, in BaseOffset()
53 const CXXRecordDecl *VirtualBase, CharUnits NonVirtualOffset) in BaseOffset()
71 const CXXRecordDecl *VirtualBase;
83 const CXXRecordDecl *MostDerivedClass;
93 const CXXRecordDecl *LayoutClass;
114 typedef llvm::DenseMap<std::pair<const CXXRecordDecl *, unsigned>,
117 typedef llvm::DenseMap<const CXXRecordDecl *, unsigned> SubobjectCountMapTy;
127 typedef llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedVirtualBasesSetTy;
135 FinalOverriders(const CXXRecordDecl *MostDerivedClass,
137 const CXXRecordDecl *LayoutClass);
158 FinalOverriders::FinalOverriders(const CXXRecordDecl *MostDerivedClass, in FinalOverriders()
160 const CXXRecordDecl *LayoutClass) in FinalOverriders()
196 const CXXRecordDecl *OverriderRD = Method.Method->getParent(); in FinalOverriders()
220 const CXXRecordDecl *DerivedRD, in ComputeBaseOffset()
225 const CXXRecordDecl *VirtualBase = nullptr; in ComputeBaseOffset()
246 const CXXRecordDecl *Base = Element.Base->getType()->getAsCXXRecordDecl(); in ComputeBaseOffset()
259 const CXXRecordDecl *BaseRD, in ComputeBaseOffset()
260 const CXXRecordDecl *DerivedRD) { in ComputeBaseOffset()
315 const CXXRecordDecl *DerivedRD = in ComputeReturnAdjustmentBaseOffset()
316 cast<CXXRecordDecl>(cast<RecordType>(CanDerivedReturnType)->getDecl()); in ComputeReturnAdjustmentBaseOffset()
318 const CXXRecordDecl *BaseRD = in ComputeReturnAdjustmentBaseOffset()
319 cast<CXXRecordDecl>(cast<RecordType>(CanBaseReturnType)->getDecl()); in ComputeReturnAdjustmentBaseOffset()
330 const CXXRecordDecl *RD = Base.getBase(); in ComputeBaseOffsets()
348 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in ComputeBaseOffsets()
380 const CXXRecordDecl *RD = Base.getBase(); in dump()
384 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in dump()
535 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits>
541 const CXXRecordDecl *MostDerivedClass;
546 const CXXRecordDecl *LayoutClass;
556 llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedVirtualBases;
579 void AddVBaseOffsets(const CXXRecordDecl *Base,
587 VCallAndVBaseOffsetBuilder(const CXXRecordDecl *MostDerivedClass, in VCallAndVBaseOffsetBuilder()
588 const CXXRecordDecl *LayoutClass, in VCallAndVBaseOffsetBuilder()
625 if (const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase()) { in AddVCallAndVBaseOffsets()
674 const CXXRecordDecl *RD = Base.getBase(); in AddVCallOffsets()
677 const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase(); in AddVCallOffsets()
725 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in AddVCallOffsets()
739 VCallAndVBaseOffsetBuilder::AddVBaseOffsets(const CXXRecordDecl *RD, in AddVBaseOffsets()
746 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in AddVBaseOffsets()
775 typedef llvm::SmallSetVector<const CXXRecordDecl *, 8>
778 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits>
792 const CXXRecordDecl *MostDerivedClass;
805 const CXXRecordDecl *LayoutClass;
815 llvm::DenseMap<const CXXRecordDecl *, VCallOffsetMap> VCallOffsetsForVBases;
883 typedef llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedVirtualBasesSetTy;
931 const CXXRecordDecl *FirstBaseInPrimaryBaseChain,
938 const CXXRecordDecl *FirstBaseInPrimaryBaseChain,
969 void DeterminePrimaryVirtualBases(const CXXRecordDecl *RD,
975 void LayoutVTablesForVirtualBases(const CXXRecordDecl *RD,
986 const CXXRecordDecl *MostDerivedClass, in ItaniumVTableBuilder()
989 const CXXRecordDecl *LayoutClass) in ItaniumVTableBuilder()
1213 const CXXRecordDecl *BaseRD = Base.getBase(); in ComputeThisAdjustmentBaseOffset()
1214 const CXXRecordDecl *DerivedRD = Derived.getBase(); in ComputeThisAdjustmentBaseOffset()
1356 const CXXRecordDecl *FirstBaseInPrimaryBaseChain, in IsOverriderUsed()
1374 const CXXRecordDecl *RD = FirstBaseInPrimaryBaseChain; in IsOverriderUsed()
1381 const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase(); in IsOverriderUsed()
1416 typedef llvm::SmallSetVector<const CXXRecordDecl *, 8> BasesSetVectorTy;
1427 for (const CXXRecordDecl *PrimaryBase : in FindNearestOverriddenMethod()
1442 const CXXRecordDecl *FirstBaseInPrimaryBaseChain, in AddMethods()
1454 const CXXRecordDecl *RD = Base.getBase(); in AddMethods()
1457 if (const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase()) { in AddMethods()
1676 const CXXRecordDecl *RD = Base.getBase(); in LayoutPrimaryAndSecondaryVTables()
1703 const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase(); in LayoutPrimaryAndSecondaryVTables()
1737 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVTables()
1739 const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase(); in LayoutSecondaryVTables()
1746 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in LayoutSecondaryVTables()
1787 const CXXRecordDecl *RD, CharUnits OffsetInLayoutClass, in DeterminePrimaryVirtualBases()
1792 if (const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase()) { in DeterminePrimaryVirtualBases()
1820 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in DeterminePrimaryVirtualBases()
1843 const CXXRecordDecl *RD, VisitedVirtualBasesSetTy &VBases) { in LayoutVTablesForVirtualBases()
1849 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in LayoutVTablesForVirtualBases()
2058 const CXXRecordDecl *RD = I.second.getBase(); in dumpLayout()
2246 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent(); in getMethodVTableIndex()
2256 ItaniumVTableContext::getVirtualBaseOffsetOffset(const CXXRecordDecl *RD, in getVirtualBaseOffsetOffset()
2257 const CXXRecordDecl *VBase) { in getVirtualBaseOffsetOffset()
2296 ItaniumVTableContext::computeVTableRelatedInformation(const CXXRecordDecl *RD) { in computeVTableRelatedInformation()
2319 const CXXRecordDecl *VBase = in computeVTableRelatedInformation()
2334 const CXXRecordDecl *MostDerivedClass, CharUnits MostDerivedClassOffset, in createConstructionVTableLayout()
2335 bool MostDerivedClassIsVirtual, const CXXRecordDecl *LayoutClass) { in createConstructionVTableLayout()
2404 const CXXRecordDecl *MostDerivedClass;
2507 const CXXRecordDecl *LastVBase,
2541 const CXXRecordDecl *MostDerivedClass, const VPtrInfo *Which) in VFTableBuilder()
2698 const CXXRecordDecl *PrevRD = Element.Class, in ComputeThisOffset()
2881 const CXXRecordDecl *RD, in GroupNewVirtualOverloads()
2912 static bool isDirectVBase(const CXXRecordDecl *Base, const CXXRecordDecl *RD) { in isDirectVBase()
2921 const CXXRecordDecl *LastVBase, in AddMethods()
2923 const CXXRecordDecl *RD = Base.getBase(); in AddMethods()
2932 const CXXRecordDecl *NextBase = nullptr, *NextLastVBase = LastVBase; in AddMethods()
2943 } else if (const CXXRecordDecl *PrimaryBase = Layout.getPrimaryBase()) { in AddMethods()
3078 for (const CXXRecordDecl *Elem : in PrintBasePath()
3241 static bool setsIntersect(const llvm::SmallPtrSet<const CXXRecordDecl *, 4> &A, in setsIntersect() argument
3242 ArrayRef<const CXXRecordDecl *> B) { in setsIntersect()
3243 for (const CXXRecordDecl *Decl : B) { in setsIntersect()
3274 const CXXRecordDecl *RD, in computeVTablePaths()
3285 llvm::SmallPtrSet<const CXXRecordDecl*, 4> VBasesSeen; in computeVTablePaths()
3287 const CXXRecordDecl *Base = B.getType()->getAsCXXRecordDecl(); in computeVTablePaths()
3328 if (const CXXRecordDecl *VB = P->getVBaseWithVPtr()) in computeVTablePaths()
3407 const CXXRecordDecl *RD, CharUnits Offset, in findPathsToSubobject()
3419 const CXXRecordDecl *Base = BS.getType()->getAsCXXRecordDecl(); in findPathsToSubobject()
3448 const CXXRecordDecl *RD, in getOffsetOfFullPath()
3454 const CXXRecordDecl *Base = BSO.getBase(); in getOffsetOfFullPath()
3480 const CXXRecordDecl *RD, VPtrInfo *Info, in selectBestPath()
3494 const CXXRecordDecl *TopLevelRD = SpecificPath.begin()->getBase(); in selectBestPath()
3513 const CXXRecordDecl *OverridingParent = OverridingMethod->getParent(); in selectBestPath()
3550 const CXXRecordDecl *RD, in computeFullPathsForVFTables()
3572 const CXXRecordDecl *RD) { in computeVTableRelatedInformation()
3615 const CXXRecordDecl *RD, const MethodVFTableLocationsTy &NewMethods, in dumpMethodLocations()
3674 const CXXRecordDecl *RD) { in computeVBTableRelatedInformation()
3690 if (const CXXRecordDecl *VBPtrBase = Layout.getBaseSharingVBPtr()) { in computeVBTableRelatedInformation()
3703 const CXXRecordDecl *CurVBase = VB.getType()->getAsCXXRecordDecl(); in computeVBTableRelatedInformation()
3711 unsigned MicrosoftVTableContext::getVBTableIndex(const CXXRecordDecl *Derived, in getVBTableIndex()
3712 const CXXRecordDecl *VBase) { in getVBTableIndex()
3719 MicrosoftVTableContext::enumerateVBTables(const CXXRecordDecl *RD) { in enumerateVBTables()
3724 MicrosoftVTableContext::getVFPtrOffsets(const CXXRecordDecl *RD) { in getVFPtrOffsets()
3732 MicrosoftVTableContext::getVFTableLayout(const CXXRecordDecl *RD, in getVFTableLayout()
3752 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent(); in getMethodVFTableLocation()