Home | History | Annotate | Download | only in AST

Lines Matching refs:CXXMethodDecl

67     const CXXMethodDecl *Method;
102 typedef std::pair<const CXXMethodDecl *, CharUnits> MethodBaseOffsetPairTy;
141 OverriderInfo getOverrider(const CXXMethodDecl *MD,
181 const CXXMethodDecl *MD = Overrider.first;
272 const CXXMethodDecl *DerivedMD,
273 const CXXMethodDecl *BaseMD) {
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,
471 const CXXMethodDecl *RHS) {
488 bool VCallOffsetMap::MethodsCanShareVCallOffset(const CXXMethodDecl *LHS,
489 const CXXMethodDecl *RHS) {
509 bool VCallOffsetMap::AddVCallOffset(const CXXMethodDecl *MD,
522 CharUnits VCallOffsetMap::getVCallOffsetOffset(const CXXMethodDecl *MD) {
853 typedef llvm::DenseMap<const CXXMethodDecl *, MethodInfo> MethodInfoMapTy;
870 typedef llvm::DenseMap<const CXXMethodDecl *, ThunkInfoVectorTy> ThunksMapTy;
877 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk);
902 ComputeThisAdjustment(const CXXMethodDecl *MD,
908 void AddMethod(const CXXMethodDecl *MD, ReturnAdjustment ReturnAdjustment);
929 bool IsOverriderUsed(const CXXMethodDecl *Overrider,
1065 void ItaniumVTableBuilder::AddThunk(const CXXMethodDecl *MD,
1080 typedef llvm::SmallPtrSet<const CXXMethodDecl *, 8> OverriddenMethodsSetTy;
1088 visitAllOverriddenMethods(const CXXMethodDecl *MD, VisitorTy &Visitor) {
1091 for (CXXMethodDecl::method_iterator I = MD->begin_overridden_methods(),
1093 const CXXMethodDecl *OverriddenMD = *I;
1103 ComputeAllOverriddenMethods(const CXXMethodDecl *MD,
1105 auto OverriddenMethodsCollector = [&](const CXXMethodDecl *MD) {
1116 const CXXMethodDecl *MD = MI.first;
1166 const CXXMethodDecl *MD;
1258 const CXXMethodDecl *MD, CharUnits BaseOffsetInLayoutClass,
1306 void ItaniumVTableBuilder::AddMethod(const CXXMethodDecl *MD,
1337 const CXXMethodDecl *MD,
1342 for (CXXMethodDecl::method_iterator I = MD->begin_overridden_methods(),
1344 const CXXMethodDecl *OverriddenMD = *I;
1355 const CXXMethodDecl *Overrider, CharUnits BaseOffsetInLayoutClass,
1421 static const CXXMethodDecl *
1422 FindNearestOverriddenMethod(const CXXMethodDecl *MD,
1430 for (const CXXMethodDecl *OverriddenMD : OverriddenMethods) {
1493 typedef llvm::SmallVector<const CXXMethodDecl *, 8> NewVirtualFunctionsTy;
1509 if (const CXXMethodDecl *OverriddenMD =
1578 for (const CXXMethodDecl *MD : NewVirtualFunctions) {
1592 const CXXMethodDecl *OverriderMD = Overrider.Method;
1680 const CXXMethodDecl *MD = I.first;
1943 const CXXMethodDecl *MD = Component.getFunctionDecl();
2023 const CXXMethodDecl *MD = Component.getUnusedFunctionDecl();
2100 std::map<std::string, const CXXMethodDecl *> MethodNamesAndDecls;
2103 const CXXMethodDecl *MD = I.first;
2113 const CXXMethodDecl *MD = I.second;
2246 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent();
2450 typedef llvm::DenseMap<const CXXMethodDecl *, MethodInfo> MethodInfoMapTy;
2463 typedef llvm::DenseMap<const CXXMethodDecl *, ThunkInfoVectorTy> ThunksMapTy;
2470 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk) {
2490 void AddMethod(const CXXMethodDecl *MD, ThunkInfo TI) {
2523 const CXXMethodDecl *MD = I.first;
2657 const CXXMethodDecl *OverriddenMD) {
2881 SmallVector<const CXXMethodDecl *, 10> &VirtualMethods) {
2888 typedef SmallVector<const CXXMethodDecl *, 1> MethodGroup;
2902 if (const auto *MD = dyn_cast<CXXMethodDecl>(ND))
2956 SmallVector<const CXXMethodDecl*, 10> VirtualMethods;
2968 for (const CXXMethodDecl *MD : VirtualMethods) {
2971 const CXXMethodDecl *FinalOverriderMD = FinalOverrider.Method;
2972 const CXXMethodDecl *OverriddenMD =
3145 const CXXMethodDecl *MD = Component.getFunctionDecl();
3200 std::map<std::string, const CXXMethodDecl *> MethodNamesAndDecls;
3203 const CXXMethodDecl *MD = I.first;
3212 const CXXMethodDecl *MD = MethodNameAndDecl.second;
3488 typedef std::set<const CXXMethodDecl *> OverriderSetTy;
3499 for (const CXXMethodDecl *MD : Info->BaseWithVPtr->methods()) {
3504 const CXXMethodDecl *OverridingMethod = OI.Method;
3533 const CXXMethodDecl *CovariantMD = *NewOverrides.begin();
3534 const CXXMethodDecl *ConflictMD = *MissingOverrides.begin();
3622 const CXXMethodDecl *MD = cast<const CXXMethodDecl>(I.first.getDecl());
3742 assert(cast<CXXMethodDecl>(GD.getDecl())->isVirtual() &&
3751 const CXXRecordDecl *RD = cast<CXXMethodDecl>(GD.getDecl())->getParent();