Home
last modified time | relevance | path

Searched refs:Dtor (Results 1 – 25 of 42) sorted by relevance

12

/openbsd/src/gnu/llvm/libcxxabi/src/
Dcxa_thread_atexit.cpp22 using Dtor = void(*)(void*); typedef
30 int __cxa_thread_atexit_impl(Dtor, void*, void*);
64 Dtor dtor;
111 _LIBCXXABI_FUNC_VIS int __cxa_thread_atexit(Dtor dtor, void* obj, void* dso_symbol) throw() { in __cxa_thread_atexit()
/openbsd/src/gnu/llvm/clang/lib/CodeGen/
DCGClass.cpp1416 const CXXDestructorDecl *Dtor) { in CanSkipVTablePointerInitialization() argument
1417 const CXXRecordDecl *ClassDecl = Dtor->getParent(); in CanSkipVTablePointerInitialization()
1426 if (!Dtor->hasTrivialBody()) in CanSkipVTablePointerInitialization()
1439 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CurGD.getDecl()); in EmitDestructorBody() local
1447 if (DtorType != Dtor_Base && Dtor->getParent()->isAbstract()) { in EmitDestructorBody()
1456 Stmt *Body = Dtor->getBody(); in EmitDestructorBody()
1466 EnterDtorCleanups(Dtor, Dtor_Deleting); in EmitDestructorBody()
1468 QualType ThisTy = Dtor->getThisObjectType(); in EmitDestructorBody()
1469 EmitCXXDestructorCall(Dtor, Dtor_Complete, /*ForVirtualBase=*/false, in EmitDestructorBody()
1499 EnterDtorCleanups(Dtor, Dtor_Complete); in EmitDestructorBody()
[all …]
DCGExprCXX.cpp97 GlobalDecl Dtor, const CGCallee &Callee, llvm::Value *This, QualType ThisTy, in EmitCXXDestructorCall() argument
99 const CXXMethodDecl *DtorDecl = cast<CXXMethodDecl>(Dtor.getDecl()); in EmitCXXDestructorCall()
115 commonEmitCXXMemberOrOperatorCall(*this, Dtor, This, ImplicitParam, in EmitCXXDestructorCall()
117 return EmitCall(CGM.getTypes().arrangeCXXStructorDeclaration(Dtor), Callee, in EmitCXXDestructorCall()
326 if (const auto *Dtor = dyn_cast<CXXDestructorDecl>(CalleeDecl)) in EmitCXXMemberOrOperatorMemberCallExpr() local
328 GlobalDecl(Dtor, Dtor_Complete)); in EmitCXXMemberOrOperatorMemberCallExpr()
364 if (const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(CalleeDecl)) { in EmitCXXMemberOrOperatorMemberCallExpr() local
369 CGM.getCXXABI().EmitVirtualDestructorCall(*this, Dtor, Dtor_Complete, in EmitCXXMemberOrOperatorMemberCallExpr()
373 GlobalDecl GD(Dtor, Dtor_Complete); in EmitCXXMemberOrOperatorMemberCallExpr()
375 if (getLangOpts().AppleKext && Dtor->isVirtual() && HasQualifier) in EmitCXXMemberOrOperatorMemberCallExpr()
[all …]
DCGCXXABI.h260 const CXXDestructorDecl *Dtor) = 0;
364 virtual bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor,
368 const CXXDestructorDecl *Dtor,
372 getCXXDestructorLinkage(GVALinkage Linkage, const CXXDestructorDecl *Dtor,
490 const CXXDestructorDecl *Dtor,
620 llvm::FunctionCallee Dtor,
DCGCXXABI.cpp309 const CXXDestructorDecl *Dtor, in setCXXDestructorDLLStorage() argument
312 CGM.setDLLImportDLLExport(GV, Dtor); in setCXXDestructorDLLStorage()
316 GVALinkage Linkage, const CXXDestructorDecl *Dtor, CXXDtorType DT) const { in getCXXDestructorLinkage() argument
318 return CGM.getLLVMLinkageForDeclarator(Dtor, Linkage, in getCXXDestructorLinkage()
DItaniumCXXABI.cpp160 const CXXDestructorDecl *Dtor) override;
210 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument
276 const CXXDestructorDecl *Dtor,
1206 const CXXDestructorDecl *Dtor) { in emitVirtualObjectDelete() argument
1238 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, DE); in emitVirtualObjectDelete()
1298 llvm::Constant *Dtor = nullptr; in emitThrow() local
1303 Dtor = CGM.getAddrOfCXXStructor(GlobalDecl(DtorD, Dtor_Complete)); in emitThrow()
1304 Dtor = llvm::ConstantExpr::getBitCast(Dtor, CGM.Int8PtrTy); in emitThrow()
1307 if (!Dtor) Dtor = llvm::Constant::getNullValue(CGM.Int8PtrTy); in emitThrow()
1309 llvm::Value *args[] = { ExceptionPtr, TypeInfo, Dtor }; in emitThrow()
[all …]
DMicrosoftCXXABI.cpp122 const CXXDestructorDecl *Dtor) override;
223 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument
229 const CXXDestructorDecl *Dtor,
233 getCXXDestructorLinkage(GVALinkage Linkage, const CXXDestructorDecl *Dtor,
330 const CXXDestructorDecl *Dtor,
432 llvm::FunctionCallee Dtor,
889 const CXXDestructorDecl *Dtor) { in emitVirtualObjectDelete() argument
894 llvm::Value *MDThis = EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, DE); in emitVirtualObjectDelete()
1339 const CXXDestructorDecl *Dtor, in setCXXDestructorDLLStorage() argument
1346 const NamedDecl *ND = Dtor; in setCXXDestructorDLLStorage()
[all …]
DCGDeclCXX.cpp119 CXXDestructorDecl *Dtor = Record->getDestructor(); in EmitDeclDestroy() local
121 Func = CGM.getAddrAndTypeOfCXXStructor(GlobalDecl(Dtor, Dtor_Complete)); in EmitDeclDestroy()
272 const VarDecl &D, llvm::FunctionCallee Dtor, llvm::Constant *Addr, in createTLSAtExitStub() argument
305 llvm::CallInst *call = CGF.Builder.CreateCall(Dtor, Addr); in createTLSAtExitStub()
309 Dtor.getCallee()->stripPointerCastsAndAliases())) in createTLSAtExitStub()
DCGDecl.cpp547 const CXXDestructorDecl *Dtor, llvm::Value *NRVOFlag) in DestroyNRVOVariableCXX()
549 Dtor(Dtor) {} in DestroyNRVOVariableCXX()
551 const CXXDestructorDecl *Dtor; member
554 CGF.EmitCXXDestructorCall(Dtor, Dtor_Complete, in emitDestructorCall()
/openbsd/src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/WebKit/
DRefCntblBaseVirtualDtorChecker.cpp84 const auto *Dtor = (*RefCntblBaseRD)->getDestructor(); in visitCXXRecordDecl() local
85 if (!Dtor || !Dtor->isVirtual()) { in visitCXXRecordDecl()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Instrumentation/
DSanitizerBinaryMetadata.cpp215 Function *Dtor = in run() local
226 Dtor->setComdat(Mod.getOrInsertComdat(Dtor->getName())); in run()
228 DtorData = Dtor; in run()
231 appendToGlobalDtors(Mod, Dtor, kCtorDtorPriority, DtorData); in run()
/openbsd/src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/
DBlockInCriticalSectionChecker.cpp111 if (const auto *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in isUnlockFunction() local
112 const auto *DRecordDecl = cast<CXXRecordDecl>(Dtor->getDecl()->getParent()); in isUnlockFunction()
DIterator.cpp45 if (const auto *Dtor = dyn_cast<CXXDestructorDecl>(Method)) { in isIterator() local
46 HasDtor = !Dtor->isDeleted() && Dtor->getAccess() == AS_public; in isIterator()
DDynamicTypePropagation.cpp286 if (const CXXDestructorCall *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in checkPreCall() local
288 if (!Dtor->isBaseDestructor()) in checkPreCall()
291 const MemRegion *Target = Dtor->getCXXThisVal().getAsRegion(); in checkPreCall()
295 const Decl *D = Dtor->getDecl(); in checkPreCall()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Utils/
DLowerGlobalDtors.cpp178 for (auto *Dtor : reverse(AssociatedAndMore.second)) in runImpl() local
179 CallInst::Create(VoidVoid, Dtor, "", BB); in runImpl()
/openbsd/src/gnu/llvm/clang/lib/Index/
DIndexDecl.cpp277 } else if (const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(D)) { in VisitFunctionDecl() local
278 if (auto TypeNameInfo = Dtor->getNameInfo().getNamedTypeInfo()) { in VisitFunctionDecl()
279 IndexCtx.handleReference(Dtor->getParent(), in VisitFunctionDecl()
281 Dtor->getParent(), Dtor->getDeclContext(), in VisitFunctionDecl()
/openbsd/src/gnu/llvm/clang/lib/Analysis/
DPathDiagnostic.cpp539 const CFGAutomaticObjDtor &Dtor = Source.castAs<CFGAutomaticObjDtor>(); in getLocationForCaller() local
540 return PathDiagnosticLocation::createEnd(Dtor.getTriggerStmt(), in getLocationForCaller()
544 const CFGDeleteDtor &Dtor = Source.castAs<CFGDeleteDtor>(); in getLocationForCaller() local
545 return PathDiagnosticLocation(Dtor.getDeleteExpr(), SM, CallerCtx); in getLocationForCaller()
562 const auto &Dtor = Source.castAs<CFGTemporaryDtor>(); in getLocationForCaller() local
563 return PathDiagnosticLocation::createEnd(Dtor.getBindTemporaryExpr(), SM, in getLocationForCaller()
DLiveVariables.cpp494 if (std::optional<CFGAutomaticObjDtor> Dtor = in runOnBlock() local
496 val.liveDecls = DSetFact.add(val.liveDecls, Dtor->getVarDecl()); in runOnBlock()
DThreadSafety.cpp1900 bool Dtor = isa<CXXDestructorDecl>(D); in handleCall() local
1902 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Exclusive); in handleCall()
1904 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Shared); in handleCall()
1906 Analyzer->removeLock(FSet, M, Loc, Dtor, LK_Generic); in handleCall()
/openbsd/src/gnu/llvm/clang/lib/StaticAnalyzer/Core/
DCallEvent.cpp1432 const auto *Dtor = cast<CXXDestructorDecl>(CalleeCtx->getDecl()); in getCaller() local
1433 Loc ThisPtr = SVB.getCXXThis(Dtor, CalleeCtx); in getCaller()
1443 Trigger = Dtor->getBody(); in getCaller()
1445 return getCXXDestructorCall(Dtor, Trigger, ThisVal.getAsRegion(), in getCaller()
DExprEngineCallAndReturn.cpp999 const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(FD); in isCXXSharedPtrDtor() local
1000 if (!Dtor) in isCXXSharedPtrDtor()
1003 const CXXRecordDecl *RD = Dtor->getParent(); in isCXXSharedPtrDtor()
DExprEngine.cpp1322 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor, in ProcessAutomaticObjDtor() argument
1325 const auto *DtorDecl = Dtor.getDestructorDecl(getContext()); in ProcessAutomaticObjDtor()
1326 const VarDecl *varDecl = Dtor.getVarDecl(); in ProcessAutomaticObjDtor()
1388 VisitCXXDestructor(varType, Region, Dtor.getTriggerStmt(), in ProcessAutomaticObjDtor()
1392 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor, in ProcessDeleteDtor() argument
1397 const CXXDeleteExpr *DE = Dtor.getDeleteExpr(); in ProcessDeleteDtor()
1407 const CXXDestructorDecl *Dtor = RD->getDestructor(); in ProcessDeleteDtor() local
1409 PostImplicitCall PP(Dtor, DE->getBeginLoc(), LCtx); in ProcessDeleteDtor()
/openbsd/src/gnu/llvm/clang/lib/Sema/
DSemaAccess.cpp1608 CXXDestructorDecl *Dtor, in CheckDestructorAccess() argument
1615 AccessSpecifier Access = Dtor->getAccess(); in CheckDestructorAccess()
1619 CXXRecordDecl *NamingClass = Dtor->getParent(); in CheckDestructorAccess()
1623 DeclAccessPair::make(Dtor, Access), in CheckDestructorAccess()
DSemaDeclCXX.cpp1829 if (auto *Dtor = dyn_cast<CXXDestructorDecl>(NewFD)) { in CheckConstexprFunctionDefinition() local
1833 if (!Dtor->getParent()->defaultedDestructorIsConstexpr()) { in CheckConstexprFunctionDefinition()
1836 if (!CheckConstexprDestructorSubobjects(*this, Dtor, Kind)) in CheckConstexprFunctionDefinition()
5162 if (CXXDestructorDecl *Dtor = LookupDestructor(Constructor->getParent())) { in SetDelegatingInitializer() local
5163 MarkFunctionReferenced(Initializer->getSourceLocation(), Dtor); in SetDelegatingInitializer()
5164 DiagnoseUseOfDecl(Dtor, Initializer->getSourceLocation()); in SetDelegatingInitializer()
5687 CXXDestructorDecl *Dtor = LookupDestructor(FieldClassDecl); in MarkBaseAndMemberDestructorsReferenced() local
5689 if (!Dtor) in MarkBaseAndMemberDestructorsReferenced()
5691 CheckDestructorAccess(Field->getLocation(), Dtor, in MarkBaseAndMemberDestructorsReferenced()
5696 MarkFunctionReferenced(Location, Dtor); in MarkBaseAndMemberDestructorsReferenced()
[all …]
/openbsd/src/gnu/llvm/clang/lib/AST/
DDeclCXX.cpp562 auto *Dtor = getDestructor(); in hasConstexprDestructor() local
563 return Dtor ? Dtor->isConstexpr() : defaultedDestructorIsConstexpr(); in hasConstexprDestructor()
2077 if (const auto *Dtor = Def->getDestructor()) in isEffectivelyFinal() local
2078 if (Dtor->hasAttr<FinalAttr>()) in isEffectivelyFinal()

12