Lines Matching refs:GD
77 bool isThisCompleteObject(GlobalDecl GD) const override { in isThisCompleteObject()
80 if (isa<CXXDestructorDecl>(GD.getDecl())) { in isThisCompleteObject()
81 switch (GD.getDtorType()) { in isThisCompleteObject()
94 if (isa<CXXConstructorDecl>(GD.getDecl())) { in isThisCompleteObject()
95 switch (GD.getCtorType()) { in isThisCompleteObject()
207 buildStructorSignature(GlobalDecl GD,
271 CGCallee getVirtualFunctionPointer(CodeGenFunction &CGF, GlobalDecl GD,
285 void setThunkLinkage(llvm::Function *Thunk, bool ForVTable, GlobalDecl GD, in setThunkLinkage() argument
291 CGM.setGVProperties(Thunk, GD); in setThunkLinkage()
344 bool NeedsVTTParameter(GlobalDecl GD) override;
377 void emitCXXStructor(GlobalDecl GD) override;
436 bool HasThisReturn(GlobalDecl GD) const override { in HasThisReturn()
437 return (isa<CXXConstructorDecl>(GD.getDecl()) || ( in HasThisReturn()
438 isa<CXXDestructorDecl>(GD.getDecl()) && in HasThisReturn()
439 GD.getDtorType() != Dtor_Deleting)); in HasThisReturn()
471 bool HasThisReturn(GlobalDecl GD) const override { in HasThisReturn()
472 return isa<CXXConstructorDecl>(GD.getDecl()) || in HasThisReturn()
473 (isa<CXXDestructorDecl>(GD.getDecl()) && in HasThisReturn()
474 GD.getDtorType() != Dtor_Deleting); in HasThisReturn()
489 bool HasThisReturn(GlobalDecl GD) const override { in HasThisReturn()
490 return isa<CXXConstructorDecl>(GD.getDecl()) || in HasThisReturn()
491 (isa<CXXDestructorDecl>(GD.getDecl()) && in HasThisReturn()
492 GD.getDtorType() != Dtor_Deleting); in HasThisReturn()
1594 ItaniumCXXABI::buildStructorSignature(GlobalDecl GD, in buildStructorSignature() argument
1602 if ((isa<CXXConstructorDecl>(GD.getDecl()) ? GD.getCtorType() == Ctor_Base in buildStructorSignature()
1603 : GD.getDtorType() == Dtor_Base) && in buildStructorSignature()
1604 cast<CXXMethodDecl>(GD.getDecl())->getParent()->getNumVBases() != 0) { in buildStructorSignature()
1691 GlobalDecl GD(DD, Type); in getCXXDestructorImplicitParam() local
1692 return CGF.GetVTTParameter(GD, ForVirtualBase, Delegating); in getCXXDestructorImplicitParam()
1700 GlobalDecl GD(DD, Type); in EmitDestructorCall() local
1710 Callee = CGCallee::forDirect(CGM.getAddrOfCXXStructor(GD), GD); in EmitDestructorCall()
1712 CGF.EmitCXXDestructorCall(GD, Callee, This.getPointer(), ThisTy, VTT, VTTTy, in EmitDestructorCall()
1921 GlobalDecl GD, in getVirtualFunctionPointer() argument
1926 auto *MethodDecl = cast<CXXMethodDecl>(GD.getDecl()); in getVirtualFunctionPointer()
1930 uint64_t VTableIndex = CGM.getItaniumVTableContext().getMethodVTableIndex(GD); in getVirtualFunctionPointer()
1974 CGCallee Callee(GD, VFunc); in getVirtualFunctionPointer()
1987 GlobalDecl GD(Dtor, DtorType); in EmitVirtualDestructorCall() local
1989 &CGM.getTypes().arrangeCXXStructorDeclaration(GD); in EmitVirtualDestructorCall()
1991 CGCallee Callee = CGCallee::forVirtual(CE, GD, This, Ty); in EmitVirtualDestructorCall()
2000 CGF.EmitCXXDestructorCall(GD, Callee, This.getPointer(), ThisTy, nullptr, in EmitVirtualDestructorCall()
3024 bool ItaniumCXXABI::NeedsVTTParameter(GlobalDecl GD) { in NeedsVTTParameter() argument
3025 const CXXMethodDecl *MD = cast<CXXMethodDecl>(GD.getDecl()); in NeedsVTTParameter()
3032 if (isa<CXXConstructorDecl>(MD) && GD.getCtorType() == Ctor_Base) in NeedsVTTParameter()
3036 if (isa<CXXDestructorDecl>(MD) && GD.getDtorType() == Dtor_Base) in NeedsVTTParameter()
4296 void ItaniumCXXABI::emitCXXStructor(GlobalDecl GD) { in emitCXXStructor() argument
4297 auto *MD = cast<CXXMethodDecl>(GD.getDecl()); in emitCXXStructor()
4303 if (CD ? GD.getCtorType() == Ctor_Complete in emitCXXStructor()
4304 : GD.getDtorType() == Dtor_Complete) { in emitCXXStructor()
4307 BaseDecl = GD.getWithCtorType(Ctor_Base); in emitCXXStructor()
4309 BaseDecl = GD.getWithDtorType(Dtor_Base); in emitCXXStructor()
4312 emitConstructorDestructorAlias(CGM, GD, BaseDecl); in emitCXXStructor()
4317 StringRef MangledName = CGM.getMangledName(GD); in emitCXXStructor()
4328 if (DD && GD.getDtorType() == Dtor_Base && in emitCXXStructor()
4345 llvm::Function *Fn = CGM.codegenCXXStructor(GD); in emitCXXStructor()