Lines Matching refs:GD
80 bool isThisCompleteObject(GlobalDecl GD) const override { in isThisCompleteObject()
83 if (isa<CXXDestructorDecl>(GD.getDecl())) { in isThisCompleteObject()
84 switch (GD.getDtorType()) { in isThisCompleteObject()
97 if (isa<CXXConstructorDecl>(GD.getDecl())) { in isThisCompleteObject()
98 switch (GD.getCtorType()) { in isThisCompleteObject()
254 buildStructorSignature(GlobalDecl GD,
314 CGCallee getVirtualFunctionPointer(CodeGenFunction &CGF, GlobalDecl GD,
328 void setThunkLinkage(llvm::Function *Thunk, bool ForVTable, GlobalDecl GD, in setThunkLinkage() argument
334 CGM.setGVProperties(Thunk, GD); in setThunkLinkage()
389 bool NeedsVTTParameter(GlobalDecl GD) override;
425 void emitCXXStructor(GlobalDecl GD) override;
1834 ItaniumCXXABI::buildStructorSignature(GlobalDecl GD, in buildStructorSignature() argument
1842 if ((isa<CXXConstructorDecl>(GD.getDecl()) ? GD.getCtorType() == Ctor_Base in buildStructorSignature()
1843 : GD.getDtorType() == Dtor_Base) && in buildStructorSignature()
1844 cast<CXXMethodDecl>(GD.getDecl())->getParent()->getNumVBases() != 0) { in buildStructorSignature()
1939 GlobalDecl GD(DD, Type); in getCXXDestructorImplicitParam() local
1940 return CGF.GetVTTParameter(GD, ForVirtualBase, Delegating); in getCXXDestructorImplicitParam()
1948 GlobalDecl GD(DD, Type); in EmitDestructorCall() local
1958 Callee = CGCallee::forDirect(CGM.getAddrOfCXXStructor(GD), GD); in EmitDestructorCall()
1960 CGF.EmitCXXDestructorCall(GD, Callee, CGF.getAsNaturalPointerTo(This, ThisTy), in EmitDestructorCall()
2181 GlobalDecl GD, in getVirtualFunctionPointer() argument
2186 auto *MethodDecl = cast<CXXMethodDecl>(GD.getDecl()); in getVirtualFunctionPointer()
2189 uint64_t VTableIndex = CGM.getItaniumVTableContext().getMethodVTableIndex(GD); in getVirtualFunctionPointer()
2234 GD = CGM.getItaniumVTableContext().findOriginalMethod(GD.getCanonicalDecl()); in getVirtualFunctionPointer()
2235 PointerAuth = CGF.EmitPointerAuthInfo(Schema, VTableSlotPtr, GD, QualType()); in getVirtualFunctionPointer()
2237 CGCallee Callee(GD, VFunc, PointerAuth); in getVirtualFunctionPointer()
2250 GlobalDecl GD(Dtor, DtorType); in EmitVirtualDestructorCall() local
2252 &CGM.getTypes().arrangeCXXStructorDeclaration(GD); in EmitVirtualDestructorCall()
2254 CGCallee Callee = CGCallee::forVirtual(CE, GD, This, Ty); in EmitVirtualDestructorCall()
2263 CGF.EmitCXXDestructorCall(GD, Callee, This.emitRawPointer(CGF), ThisTy, in EmitVirtualDestructorCall()
3319 bool ItaniumCXXABI::NeedsVTTParameter(GlobalDecl GD) { in NeedsVTTParameter() argument
3320 const CXXMethodDecl *MD = cast<CXXMethodDecl>(GD.getDecl()); in NeedsVTTParameter()
3327 if (isa<CXXConstructorDecl>(MD) && GD.getCtorType() == Ctor_Base) in NeedsVTTParameter()
3331 if (isa<CXXDestructorDecl>(MD) && GD.getDtorType() == Dtor_Base) in NeedsVTTParameter()
4673 void ItaniumCXXABI::emitCXXStructor(GlobalDecl GD) { in emitCXXStructor() argument
4674 auto *MD = cast<CXXMethodDecl>(GD.getDecl()); in emitCXXStructor()
4680 if (CD ? GD.getCtorType() == Ctor_Complete in emitCXXStructor()
4681 : GD.getDtorType() == Dtor_Complete) { in emitCXXStructor()
4684 BaseDecl = GD.getWithCtorType(Ctor_Base); in emitCXXStructor()
4686 BaseDecl = GD.getWithDtorType(Dtor_Base); in emitCXXStructor()
4689 emitConstructorDestructorAlias(CGM, GD, BaseDecl); in emitCXXStructor()
4694 StringRef MangledName = CGM.getMangledName(GD); in emitCXXStructor()
4705 if (DD && GD.getDtorType() == Dtor_Base && in emitCXXStructor()
4722 llvm::Function *Fn = CGM.codegenCXXStructor(GD); in emitCXXStructor()