Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:Dtor

85         llvm_unreachable("emitting dtor comdat as function?");
87 llvm_unreachable("bad dtor kind");
104 llvm_unreachable("bad dtor kind");
155 const CXXDestructorDecl *Dtor) override;
218 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor,
277 const CXXDestructorDecl *Dtor,
324 llvm::Constant *dtor, llvm::Constant *addr) override;
984 // Return indirectly if we have a non-trivial copy ctor or non-trivial dtor.
1007 const CXXDestructorDecl *Dtor) {
1037 // CXXMemberCallExpr for dtor call.
1039 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, /*CE=*/nullptr);
1098 llvm::Constant *Dtor = nullptr;
1103 Dtor = CGM.getAddrOfCXXStructor(DtorD, StructorType::Complete);
1104 Dtor = llvm::ConstantExpr::getBitCast(Dtor, CGM.Int8PtrTy);
1107 if (!Dtor) Dtor = llvm::Constant::getNullValue(CGM.Int8PtrTy);
1109 llvm::Value *args[] = { ExceptionPtr, TypeInfo, Dtor };
1615 CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType,
1621 Dtor, getFromDtorType(DtorType));
1624 getVirtualFunctionPointer(CGF, GlobalDecl(Dtor, DtorType), This, Ty,
1627 CGF.EmitCXXMemberOrOperatorCall(Dtor, Callee, ReturnValueSlot(),
2083 llvm::Constant *dtor,
2113 llvm::ConstantExpr::getBitCast(dtor, dtorTy),
2123 llvm::Constant *dtor,
2127 return emitGlobalDtorWithCXAAtExit(CGF, dtor, addr, D.getTLSKind());
2136 return CGM.AddCXXDtorEntry(dtor, addr);
2139 CGF.registerGlobalDtorWithAtExit(D, dtor, addr);
3752 // 4. Enter dtor cleanup