Lines Matching refs:CXXMethodDecl

67     const CXXMethodDecl *Method;
102 typedef std::pair<const CXXMethodDecl *, CharUnits> MethodBaseOffsetPairTy;
141 OverriderInfo getOverrider(const CXXMethodDecl *MD, in getOverrider()
181 const CXXMethodDecl *MD = Overrider.first; in FinalOverriders()
272 const CXXMethodDecl *DerivedMD, in ComputeReturnAdjustmentBaseOffset()
273 const CXXMethodDecl *BaseMD) { in ComputeReturnAdjustmentBaseOffset()
445 typedef std::pair<const CXXMethodDecl *, CharUnits> MethodAndOffsetPairTy;
453 static bool MethodsCanShareVCallOffset(const CXXMethodDecl *LHS,
454 const CXXMethodDecl *RHS);
460 bool AddVCallOffset(const CXXMethodDecl *MD, CharUnits OffsetOffset);
464 CharUnits getVCallOffsetOffset(const CXXMethodDecl *MD);
470 static bool HasSameVirtualSignature(const CXXMethodDecl *LHS, in HasSameVirtualSignature()
471 const CXXMethodDecl *RHS) { in HasSameVirtualSignature()
488 bool VCallOffsetMap::MethodsCanShareVCallOffset(const CXXMethodDecl *LHS, in MethodsCanShareVCallOffset()
489 const CXXMethodDecl *RHS) { in MethodsCanShareVCallOffset()
509 bool VCallOffsetMap::AddVCallOffset(const CXXMethodDecl *MD, in AddVCallOffset()
522 CharUnits VCallOffsetMap::getVCallOffsetOffset(const CXXMethodDecl *MD) { in getVCallOffsetOffset()
863 typedef llvm::DenseMap<const CXXMethodDecl *, MethodInfo> MethodInfoMapTy;
880 typedef llvm::DenseMap<const CXXMethodDecl *, ThunkInfoVectorTy> ThunksMapTy;
887 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk);
912 ComputeThisAdjustment(const CXXMethodDecl *MD,
918 void AddMethod(const CXXMethodDecl *MD, ReturnAdjustment ReturnAdjustment);
939 bool IsOverriderUsed(const CXXMethodDecl *Overrider,
1067 void ItaniumVTableBuilder::AddThunk(const CXXMethodDecl *MD, in AddThunk()
1081 typedef llvm::SmallPtrSet<const CXXMethodDecl *, 8> OverriddenMethodsSetTy;
1089 visitAllOverriddenMethods(const CXXMethodDecl *MD, VisitorTy &Visitor) { in visitAllOverriddenMethods()
1092 for (const CXXMethodDecl *OverriddenMD : MD->overridden_methods()) { in visitAllOverriddenMethods()
1102 ComputeAllOverriddenMethods(const CXXMethodDecl *MD, in ComputeAllOverriddenMethods()
1104 auto OverriddenMethodsCollector = [&](const CXXMethodDecl *MD) { in ComputeAllOverriddenMethods()
1115 const CXXMethodDecl *MD = MI.first; in ComputeThisAdjustments()
1165 const CXXMethodDecl *MD; in ComputeThisAdjustments()
1257 const CXXMethodDecl *MD, CharUnits BaseOffsetInLayoutClass, in ComputeThisAdjustment()
1305 void ItaniumVTableBuilder::AddMethod(const CXXMethodDecl *MD, in AddMethod()
1336 const CXXMethodDecl *MD, in OverridesIndirectMethodInBases()
1341 for (const CXXMethodDecl *OverriddenMD : MD->overridden_methods()) { in OverridesIndirectMethodInBases()
1351 const CXXMethodDecl *Overrider, CharUnits BaseOffsetInLayoutClass, in IsOverriderUsed()
1417 static const CXXMethodDecl *
1418 FindNearestOverriddenMethod(const CXXMethodDecl *MD, in FindNearestOverriddenMethod()
1425 for (const CXXMethodDecl *OverriddenMD : OverriddenMethods) { in FindNearestOverriddenMethod()
1486 typedef llvm::SmallVector<const CXXMethodDecl *, 8> NewVirtualFunctionsTy; in AddMethods()
1489 llvm::SmallVector<const CXXMethodDecl*, 4> NewImplicitVirtualFunctions; in AddMethods()
1504 if (const CXXMethodDecl *OverriddenMD = in AddMethods()
1562 [](const CXXMethodDecl *A, const CXXMethodDecl *B) { in AddMethods()
1579 for (const CXXMethodDecl *MD : NewVirtualFunctions) { in AddMethods()
1593 const CXXMethodDecl *OverriderMD = Overrider.Method; in AddMethods()
1684 const CXXMethodDecl *MD = I.first; in LayoutPrimaryAndSecondaryVTables()
1950 const CXXMethodDecl *MD = Component.getFunctionDecl(); in dumpLayout()
2030 const CXXMethodDecl *MD = Component.getUnusedFunctionDecl(); in dumpLayout()
2107 std::map<std::string, const CXXMethodDecl *> MethodNamesAndDecls; in dumpLayout()
2110 const CXXMethodDecl *MD = I.first; in dumpLayout()
2120 const CXXMethodDecl *MD = I.second; in dumpLayout()
2261 bool VTableContextBase::hasVtableSlot(const CXXMethodDecl *MD) { in hasVtableSlot()
2277 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent(); in getMethodVTableIndex()
2478 typedef llvm::DenseMap<const CXXMethodDecl *, MethodInfo> MethodInfoMapTy;
2491 typedef llvm::DenseMap<const CXXMethodDecl *, ThunkInfoVectorTy> ThunksMapTy;
2498 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk) { in AddThunk()
2517 void AddMethod(const CXXMethodDecl *MD, ThunkInfo TI) { in AddMethod()
2551 const CXXMethodDecl *MD = I.first; in LayoutVFTable()
2680 const CXXMethodDecl *OverriddenMD) { in ComputeThisOffset()
2904 SmallVector<const CXXMethodDecl *, 10> &VirtualMethods) { in GroupNewVirtualOverloads() argument
2911 typedef SmallVector<const CXXMethodDecl *, 1> MethodGroup; in GroupNewVirtualOverloads()
2925 if (const auto *MD = dyn_cast<CXXMethodDecl>(ND)) in GroupNewVirtualOverloads()
2979 SmallVector<const CXXMethodDecl*, 10> VirtualMethods; in AddMethods()
2991 for (const CXXMethodDecl *MD : VirtualMethods) { in AddMethods()
2994 const CXXMethodDecl *FinalOverriderMD = FinalOverrider.Method; in AddMethods()
2995 const CXXMethodDecl *OverriddenMD = in AddMethods()
3168 const CXXMethodDecl *MD = Component.getFunctionDecl(); in dumpLayout()
3223 std::map<std::string, const CXXMethodDecl *> MethodNamesAndDecls; in dumpLayout()
3226 const CXXMethodDecl *MD = I.first; in dumpLayout()
3235 const CXXMethodDecl *MD = MethodNameAndDecl.second; in dumpLayout()
3506 typedef std::set<const CXXMethodDecl *> OverriderSetTy; in selectBestPath()
3517 for (const CXXMethodDecl *MD : Info.IntroducingObject->methods()) { in selectBestPath()
3522 const CXXMethodDecl *OverridingMethod = OI.Method; in selectBestPath()
3550 const CXXMethodDecl *CovariantMD = *NewOverrides.begin(); in selectBestPath()
3551 const CXXMethodDecl *ConflictMD = *MissingOverrides.begin(); in selectBestPath()
3656 const CXXMethodDecl *MD = cast<const CXXMethodDecl>(I.first.getDecl()); in dumpMethodLocations()
3777 assert(hasVtableSlot(cast<CXXMethodDecl>(GD.getDecl())) && in getMethodVFTableLocation()
3788 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent(); in getMethodVFTableLocation()