| /NextBSD/contrib/llvm/tools/clang/lib/CodeGen/ |
| HD | CGClass.cpp | 1357 const CXXDestructorDecl *Dtor) { in CanSkipVTablePointerInitialization() argument 1358 if (!Dtor->hasTrivialBody()) in CanSkipVTablePointerInitialization() 1362 const CXXRecordDecl *ClassDecl = Dtor->getParent(); in CanSkipVTablePointerInitialization() 1373 const CXXDestructorDecl *Dtor) { in EmitDtorSanitizerCallback() argument 1375 CGF.getContext().getASTRecordLayout(Dtor->getParent()); in EmitDtorSanitizerCallback() 1391 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CurGD.getDecl()); in EmitDestructorBody() local 1394 Stmt *Body = Dtor->getBody(); in EmitDestructorBody() 1403 EnterDtorCleanups(Dtor, Dtor_Deleting); in EmitDestructorBody() 1404 EmitCXXDestructorCall(Dtor, Dtor_Complete, /*ForVirtualBase=*/false, in EmitDestructorBody() 1436 EnterDtorCleanups(Dtor, Dtor_Complete); in EmitDestructorBody() [all …]
|
| HD | CGCXXABI.h | 216 const CXXDestructorDecl *Dtor) = 0; 279 virtual bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, 374 EmitVirtualDestructorCall(CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, 500 llvm::Constant *Dtor,
|
| HD | CGExprCXX.cpp | 210 if (const auto *Dtor = dyn_cast<CXXDestructorDecl>(CalleeDecl)) in EmitCXXMemberOrOperatorMemberCallExpr() local 212 Dtor, StructorType::Complete); in EmitCXXMemberOrOperatorMemberCallExpr() 230 if (const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(MD)) { in EmitCXXMemberOrOperatorMemberCallExpr() local 236 *this, Dtor, Dtor_Complete, This, cast<CXXMemberCallExpr>(CE)); in EmitCXXMemberOrOperatorMemberCallExpr() 242 CGM.getAddrOfCXXStructor(Dtor, StructorType::Complete, FInfo, Ty); in EmitCXXMemberOrOperatorMemberCallExpr() 1457 const CXXDestructorDecl *Dtor = nullptr; in EmitObjectDelete() local 1461 Dtor = RD->getDestructor(); in EmitObjectDelete() 1463 if (Dtor->isVirtual()) { in EmitObjectDelete() 1465 Dtor); in EmitObjectDelete() 1478 if (Dtor) in EmitObjectDelete() [all …]
|
| HD | ItaniumCXXABI.cpp | 115 const CXXDestructorDecl *Dtor) override; 165 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument 211 const CXXDestructorDecl *Dtor, 879 const CXXDestructorDecl *Dtor) { in emitVirtualObjectDelete() argument 907 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, /*CE=*/nullptr); in emitVirtualObjectDelete() 965 llvm::Constant *Dtor = nullptr; in emitThrow() local 970 Dtor = CGM.getAddrOfCXXStructor(DtorD, StructorType::Complete); in emitThrow() 971 Dtor = llvm::ConstantExpr::getBitCast(Dtor, CGM.Int8PtrTy); in emitThrow() 974 if (!Dtor) Dtor = llvm::Constant::getNullValue(CGM.Int8PtrTy); in emitThrow() 976 llvm::Value *args[] = { ExceptionPtr, TypeInfo, Dtor }; in emitThrow() [all …]
|
| HD | MicrosoftCXXABI.cpp | 76 const CXXDestructorDecl *Dtor) override; 160 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument 231 const CXXDestructorDecl *Dtor, 334 llvm::Constant *Dtor, llvm::Constant *Addr) override; 828 const CXXDestructorDecl *Dtor) { in emitVirtualObjectDelete() argument 834 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, /*CE=*/nullptr); in emitVirtualObjectDelete() 1772 CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType, in EmitVirtualDestructorCall() argument 1779 GlobalDecl GD(Dtor, Dtor_Deleting); in EmitVirtualDestructorCall() 1781 Dtor, StructorType::Deleting); in EmitVirtualDestructorCall() 1792 RValue RV = CGF.EmitCXXStructorCall(Dtor, Callee, ReturnValueSlot(), This, in EmitVirtualDestructorCall() [all …]
|
| HD | CGDecl.cpp | 425 const CXXDestructorDecl *Dtor, in DestroyNRVOVariable() 427 : Dtor(Dtor), NRVOFlag(NRVOFlag), Loc(addr) {} in DestroyNRVOVariable() 429 const CXXDestructorDecl *Dtor; member 447 CGF.EmitCXXDestructorCall(Dtor, Dtor_Complete, in Emit()
|
| HD | CGOpenMPRuntime.cpp | 961 llvm::Value *CopyCtor, llvm::Value *Dtor, SourceLocation Loc) { in emitThreadPrivateVarInit() argument 971 Ctor, CopyCtor, Dtor}; in emitThreadPrivateVarInit() 988 llvm::Value *Ctor = nullptr, *CopyCtor = nullptr, *Dtor = nullptr; in emitThreadPrivateVarDefinition() local 1049 Dtor = Fn; in emitThreadPrivateVarDefinition() 1052 if (!Ctor && !Dtor) in emitThreadPrivateVarDefinition() 1068 if (Dtor == nullptr) { in emitThreadPrivateVarDefinition() 1071 Dtor = llvm::Constant::getNullValue(DtorTy); in emitThreadPrivateVarDefinition() 1083 emitThreadPrivateVarInit(InitCGF, VDAddr, Ctor, CopyCtor, Dtor, Loc); in emitThreadPrivateVarDefinition() 1087 emitThreadPrivateVarInit(*CGF, VDAddr, Ctor, CopyCtor, Dtor, Loc); in emitThreadPrivateVarDefinition()
|
| HD | CGOpenMPRuntime.h | 351 llvm::Value *Dtor, SourceLocation Loc);
|
| HD | CodeGenFunction.h | 427 void PushDestructorCleanup(const CXXDestructorDecl *Dtor, 1366 void EnterDtorCleanups(const CXXDestructorDecl *Dtor, CXXDtorType Type); 2770 llvm::Constant *createAtExitStub(const VarDecl &VD, llvm::Constant *Dtor,
|
| HD | CodeGenModule.cpp | 623 void CodeGenModule::AddGlobalDtor(llvm::Function *Dtor, int Priority) { in AddGlobalDtor() argument 625 GlobalDtors.push_back(Structor(Priority, Dtor, nullptr)); in AddGlobalDtor() 679 if (const auto *Dtor = dyn_cast_or_null<CXXDestructorDecl>(FD)) { in setFunctionDLLStorageClass() local 680 if (getCXXABI().useThunkForDtorVariant(Dtor, GD.getDtorType())) { in setFunctionDLLStorageClass()
|
| HD | CodeGenModule.h | 1198 void AddGlobalDtor(llvm::Function *Dtor, int Priority = 65535);
|
| HD | CGCall.cpp | 2856 const CXXDestructorDecl *Dtor = Ty->getAsCXXRecordDecl()->getDestructor(); in Emit() local 2857 assert(!Dtor->isTrivial()); in Emit() 2858 CGF.EmitCXXDestructorCall(Dtor, Dtor_Complete, /*for vbase*/ false, in Emit()
|
| /NextBSD/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ |
| HD | DynamicTypePropagation.cpp | 86 if (const CXXDestructorCall *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in checkPreCall() local 88 if (!Dtor->isBaseDestructor()) in checkPreCall() 91 const MemRegion *Target = Dtor->getCXXThisVal().getAsRegion(); in checkPreCall() 95 const Decl *D = Dtor->getDecl(); in checkPreCall()
|
| /NextBSD/contrib/llvm/tools/lli/ |
| HD | OrcLazyJIT.h | 83 for (auto Dtor : orc::getDestructors(*M)) in addModule() local 84 DtorNames.push_back(mangle(Dtor.Func->getName())); in addModule()
|
| /NextBSD/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ |
| HD | ExprEngineCallAndReturn.cpp | 657 const CXXDestructorCall &Dtor = cast<CXXDestructorCall>(Call); in mayInlineCallKind() local 660 const MemRegion *Target = Dtor.getCXXThisVal().getAsRegion(); in mayInlineCallKind() 726 const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(FD); in isCXXSharedPtrDtor() local 727 if (!Dtor) in isCXXSharedPtrDtor() 730 const CXXRecordDecl *RD = Dtor->getParent(); in isCXXSharedPtrDtor()
|
| HD | CallEvent.cpp | 965 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CalleeCtx->getDecl()); in getCaller() local 966 Loc ThisPtr = SVB.getCXXThis(Dtor, CalleeCtx); in getCaller() 975 Trigger = Dtor->getBody(); in getCaller() 977 return getCXXDestructorCall(Dtor, Trigger, ThisVal.getAsRegion(), in getCaller()
|
| HD | PathDiagnostic.cpp | 560 const CFGAutomaticObjDtor &Dtor = Source.castAs<CFGAutomaticObjDtor>(); in getLocationForCaller() local 561 return PathDiagnosticLocation::createEnd(Dtor.getTriggerStmt(), in getLocationForCaller() 565 const CFGDeleteDtor &Dtor = Source.castAs<CFGDeleteDtor>(); in getLocationForCaller() local 566 return PathDiagnosticLocation(Dtor.getDeleteExpr(), SM, CallerCtx); in getLocationForCaller()
|
| HD | ExprEngine.cpp | 584 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor, in ProcessAutomaticObjDtor() argument 587 const VarDecl *varDecl = Dtor.getVarDecl(); in ProcessAutomaticObjDtor() 599 VisitCXXDestructor(varType, Region, Dtor.getTriggerStmt(), /*IsBase=*/ false, in ProcessAutomaticObjDtor() 603 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor, in ProcessDeleteDtor() argument 608 const CXXDeleteExpr *DE = Dtor.getDeleteExpr(); in ProcessDeleteDtor() 618 const CXXDestructorDecl *Dtor = RD->getDestructor(); in ProcessDeleteDtor() local 620 PostImplicitCall PP(Dtor, DE->getLocStart(), LCtx); in ProcessDeleteDtor()
|
| /NextBSD/contrib/llvm/tools/clang/lib/Analysis/ |
| HD | LiveVariables.cpp | 456 if (Optional<CFGAutomaticObjDtor> Dtor = in runOnBlock() local 458 val.liveDecls = DSetFact.add(val.liveDecls, Dtor->getVarDecl()); in runOnBlock()
|
| HD | ThreadSafety.cpp | 1822 bool Dtor = isa<CXXDestructorDecl>(D); in handleCall() local 1824 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Exclusive, CapDiagKind); in handleCall() 1826 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Shared, CapDiagKind); in handleCall() 1828 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Generic, CapDiagKind); in handleCall()
|
| /NextBSD/contrib/llvm/tools/clang/lib/Sema/ |
| HD | SemaAccess.cpp | 1588 CXXDestructorDecl *Dtor, in CheckDestructorAccess() argument 1595 AccessSpecifier Access = Dtor->getAccess(); in CheckDestructorAccess() 1599 CXXRecordDecl *NamingClass = Dtor->getParent(); in CheckDestructorAccess() 1603 DeclAccessPair::make(Dtor, Access), in CheckDestructorAccess()
|
| HD | SemaDeclCXX.cpp | 3848 if (CXXDestructorDecl *Dtor = LookupDestructor(Constructor->getParent())) { in SetDelegatingInitializer() local 3849 MarkFunctionReferenced(Initializer->getSourceLocation(), Dtor); in SetDelegatingInitializer() 3850 DiagnoseUseOfDecl(Dtor, Initializer->getSourceLocation()); in SetDelegatingInitializer() 4321 CXXDestructorDecl *Dtor = LookupDestructor(FieldClassDecl); in MarkBaseAndMemberDestructorsReferenced() local 4322 assert(Dtor && "No dtor found for FieldClassDecl!"); in MarkBaseAndMemberDestructorsReferenced() 4323 CheckDestructorAccess(Field->getLocation(), Dtor, in MarkBaseAndMemberDestructorsReferenced() 4328 MarkFunctionReferenced(Location, Dtor); in MarkBaseAndMemberDestructorsReferenced() 4329 DiagnoseUseOfDecl(Dtor, Location); in MarkBaseAndMemberDestructorsReferenced() 4350 CXXDestructorDecl *Dtor = LookupDestructor(BaseClassDecl); in MarkBaseAndMemberDestructorsReferenced() local 4351 assert(Dtor && "No dtor found for BaseClassDecl!"); in MarkBaseAndMemberDestructorsReferenced() [all …]
|
| HD | SemaType.cpp | 6691 CXXDestructorDecl *Dtor = RD->getDestructor(); in RequireLiteralType() local 6692 assert(Dtor && "class has literal fields and bases but no dtor?"); in RequireLiteralType() 6693 if (!Dtor) in RequireLiteralType() 6696 Diag(Dtor->getLocation(), Dtor->isUserProvided() ? in RequireLiteralType() 6699 if (!Dtor->isUserProvided()) in RequireLiteralType() 6700 SpecialMemberIsTrivial(Dtor, CXXDestructor, /*Diagnose*/true); in RequireLiteralType()
|
| HD | SemaExprCXX.cpp | 2744 if (CXXDestructorDecl *Dtor = LookupDestructor(PointeeRD)) { in ActOnCXXDelete() local 2746 const_cast<CXXDestructorDecl*>(Dtor)); in ActOnCXXDelete() 2747 if (DiagnoseUseOfDecl(Dtor, StartLoc)) in ActOnCXXDelete() 2789 if (CXXDestructorDecl *Dtor = LookupDestructor(PointeeRD)) { in ActOnCXXDelete() local 2790 CheckDestructorAccess(Ex.get()->getExprLoc(), Dtor, in ActOnCXXDelete()
|
| /NextBSD/contrib/llvm/tools/clang/lib/AST/ |
| HD | DeclCXX.cpp | 1314 CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(R.front()); in getDestructor() local 1315 return Dtor; in getDestructor()
|