Home
last modified time | relevance | path

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

12

/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DCGClass.cpp1417 if (!Dtor->hasTrivialBody()) in CanSkipVTablePointerInitialization()
1447 Stmt *Body = Dtor->getBody(); in EmitDestructorBody()
1508 EnterDtorCleanups(Dtor, Dtor_Base); in EmitDestructorBody()
1731 const CXXDestructorDecl *Dtor; member in __anonbdf213460411::SanitizeDtorFieldRange
1738 : Dtor(Dtor), StartIndex(StartIndex), EndIndex(EndIndex) {} in SanitizeDtorFieldRange()
1780 const CXXDestructorDecl *Dtor; member in __anonbdf213460411::SanitizeDtorVTable
1783 SanitizeDtorVTable(const CXXDestructorDecl *Dtor) : Dtor(Dtor) {} in SanitizeDtorVTable() argument
1788 (void)Dtor; in Emit()
2448 const CXXDestructorDecl *Dtor; member
2507 const CXXDestructorDecl *Dtor; member
[all …]
H A DCGExprCXX.cpp333 GlobalDecl(Dtor, Dtor_Complete)); in EmitCXXMemberOrOperatorMemberCallExpr()
378 GlobalDecl GD(Dtor, Dtor_Complete); in EmitCXXMemberOrOperatorMemberCallExpr()
1909 if (Dtor && Dtor->isVirtual()) in EmitDestroyingObjectDelete()
1911 Dtor); in EmitDestroyingObjectDelete()
1938 const CXXDestructorDecl *Dtor = nullptr; in EmitObjectDelete() local
1942 Dtor = RD->getDestructor(); in EmitObjectDelete()
1944 if (Dtor->isVirtual()) { in EmitObjectDelete()
1949 Dtor->getDevirtualizedMethod( in EmitObjectDelete()
1957 Dtor = DevirtualizedDtor; in EmitObjectDelete()
1983 if (Dtor) in EmitObjectDelete()
[all …]
H A DCGCXXABI.h260 const CXXDestructorDecl *Dtor) = 0;
374 virtual bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor,
378 const CXXDestructorDecl *Dtor,
382 getCXXDestructorLinkage(GVALinkage Linkage, const CXXDestructorDecl *Dtor,
500 const CXXDestructorDecl *Dtor,
630 llvm::FunctionCallee Dtor,
H A DCGCXXABI.cpp306 const CXXDestructorDecl *Dtor, in setCXXDestructorDLLStorage() argument
309 CGM.setDLLImportDLLExport(GV, Dtor); in setCXXDestructorDLLStorage()
313 GVALinkage Linkage, const CXXDestructorDecl *Dtor, CXXDtorType DT) const { in getCXXDestructorLinkage() argument
315 return CGM.getLLVMLinkageForDeclarator(Dtor, Linkage); in getCXXDestructorLinkage()
H A 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()
332 llvm::FunctionCallee Dtor, in registerGlobalDtorWithLLVM() argument
335 llvm::Function *dtorStub = createAtExitStub(VD, Dtor, Addr); in registerGlobalDtorWithLLVM()
H A DItaniumCXXABI.cpp256 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument
1261 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, DE); in emitVirtualObjectDelete()
1321 llvm::Constant *Dtor = nullptr; in emitThrow() local
1329 if (!Dtor) Dtor = llvm::Constant::getNullValue(CGM.Int8PtrTy); in emitThrow()
1331 llvm::Value *args[] = { ExceptionPtr, TypeInfo, Dtor }; in emitThrow()
2069 GlobalDecl GD(Dtor, DtorType); in EmitVirtualDestructorCall()
2717 llvm::Function *Dtor = *itv; in unregisterGlobalDtorsWithUnAtExit() local
2738 CI->setCallingConv(Dtor->getCallingConv()); in unregisterGlobalDtorsWithUnAtExit()
2770 for (auto *Dtor : Dtors) { in registerGlobalDtorsWithAtExit() local
2778 CGF.registerGlobalDtorWithAtExit(Dtor); in registerGlobalDtorsWithAtExit()
[all …]
H A DMicrosoftCXXABI.cpp235 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, in useThunkForDtorVariant() argument
241 const CXXDestructorDecl *Dtor,
444 llvm::FunctionCallee Dtor,
1369 const NamedDecl *ND = Dtor; in setCXXDestructorDLLStorage()
1385 return CGM.getLLVMLinkageForDeclarator(Dtor, Linkage); in getCXXDestructorLinkage()
1390 if (Dtor->hasAttr<DLLExportAttr>()) in getCXXDestructorLinkage()
1392 if (Dtor->hasAttr<DLLImportAttr>()) in getCXXDestructorLinkage()
2003 GlobalDecl GD(Dtor, Dtor_Deleting); in EmitVirtualDestructorCall()
2370 return emitGlobalDtorWithTLRegDtor(CGF, D, Dtor, Addr); in registerGlobalDtor()
2374 return CGM.AddCXXDtorEntry(Dtor, Addr); in registerGlobalDtor()
[all …]
H A DCGCoroutine.cpp162 const auto *Dtor = TE->getTemporary()->getDestructor(); in ResumeStmtCanThrow() local
163 if (FunctionCanThrow(Dtor)) in ResumeStmtCanThrow()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DSanitizerBinaryMetadata.cpp222 Function *Dtor = in run() local
234 Dtor->setComdat(Mod.getOrInsertComdat(Dtor->getName())); in run()
236 Dtor->setLinkage(GlobalValue::ExternalLinkage); in run()
239 Dtor->setVisibility(GlobalValue::HiddenVisibility); in run()
241 DtorComdatKey = Dtor; in run()
244 appendToGlobalDtors(Mod, Dtor, kCtorDtorPriority, DtorComdatKey); in run()
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/WebKit/
H A DRefCntblBaseVirtualDtorChecker.cpp123 const auto *Dtor = C->getDestructor(); in visitCXXRecordDecl() local
124 if (!Dtor || !Dtor->isVirtual()) { in visitCXXRecordDecl()
/freebsd/contrib/llvm-project/clang/lib/Interpreter/
H A DValue.cpp65 if (Dtor && IsAlive()) { in Release()
69 (*Dtor)(getPayload() + Idx * Stride); in Release()
84 : RefCnt(1), Dtor(reinterpret_cast<DtorFunc>(DtorF)), in ValueStorage()
88 DtorFunc Dtor = nullptr; member in __anonc81f9c820111::ValueStorage
H A DInterpreter.cpp484 if (auto Dtor = Dtors.find(CXXRD); Dtor != Dtors.end()) in CompileDtorCall() local
485 return Dtor->getSecond(); in CompileDtorCall()
597 auto *Dtor = S.LookupDestructor(RD); in getCall() local
598 Dtor->addAttr(UsedAttr::CreateImplicit(Ctx)); in getCall()
600 DeclGroupRef(Dtor)); in getCall()
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/
H A DBlockInCriticalSectionChecker.cpp104 if (const auto *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in isUnlockFunction() local
105 const auto *DRecordDecl = cast<CXXRecordDecl>(Dtor->getDecl()->getParent()); in isUnlockFunction()
H A DIterator.cpp45 if (const auto *Dtor = dyn_cast<CXXDestructorDecl>(Method)) { in isIterator() local
46 HasDtor = !Dtor->isDeleted() && Dtor->getAccess() == AS_public; in isIterator()
H A DDynamicTypePropagation.cpp285 if (const CXXDestructorCall *Dtor = dyn_cast<CXXDestructorCall>(&Call)) { in checkPreCall() local
287 if (!Dtor->isBaseDestructor()) in checkPreCall()
290 const MemRegion *Target = Dtor->getCXXThisVal().getAsRegion(); in checkPreCall()
294 const Decl *D = Dtor->getDecl(); in checkPreCall()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLowerGlobalDtors.cpp189 for (auto *Dtor : reverse(AssociatedAndMore.second)) in runImpl() local
190 CallInst::Create(VoidVoid, Dtor, "", BB); in runImpl()
/freebsd/contrib/llvm-project/clang/lib/Index/
H A 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()
/freebsd/contrib/llvm-project/clang/lib/Analysis/
H A DPathDiagnostic.cpp536 const CFGAutomaticObjDtor &Dtor = Source.castAs<CFGAutomaticObjDtor>(); in getLocationForCaller() local
537 return PathDiagnosticLocation::createEnd(Dtor.getTriggerStmt(), in getLocationForCaller()
541 const CFGDeleteDtor &Dtor = Source.castAs<CFGDeleteDtor>(); in getLocationForCaller() local
542 return PathDiagnosticLocation(Dtor.getDeleteExpr(), SM, CallerCtx); in getLocationForCaller()
559 const auto &Dtor = Source.castAs<CFGTemporaryDtor>(); in getLocationForCaller() local
560 return PathDiagnosticLocation::createEnd(Dtor.getBindTemporaryExpr(), SM, in getLocationForCaller()
H A DLiveVariables.cpp494 if (std::optional<CFGAutomaticObjDtor> Dtor = in runOnBlock() local
496 val.liveDecls = DSetFact.add(val.liveDecls, Dtor->getVarDecl()); in runOnBlock()
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/
H A DCallEvent.cpp1464 const auto *Dtor = cast<CXXDestructorDecl>(CalleeCtx->getDecl()); in getCaller() local
1465 Loc ThisPtr = SVB.getCXXThis(Dtor, CalleeCtx); in getCaller()
1475 Trigger = Dtor->getBody(); in getCaller()
1477 return getCXXDestructorCall(Dtor, Trigger, ThisVal.getAsRegion(), in getCaller()
H A DExprEngineCallAndReturn.cpp997 const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(FD); in isCXXSharedPtrDtor() local
998 if (!Dtor) in isCXXSharedPtrDtor()
1001 const CXXRecordDecl *RD = Dtor->getParent(); in isCXXSharedPtrDtor()
H A DExprEngine.cpp1337 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor, in ProcessAutomaticObjDtor() argument
1340 const auto *DtorDecl = Dtor.getDestructorDecl(getContext()); in ProcessAutomaticObjDtor()
1341 const VarDecl *varDecl = Dtor.getVarDecl(); in ProcessAutomaticObjDtor()
1405 VisitCXXDestructor(varType, Region, Dtor.getTriggerStmt(), in ProcessAutomaticObjDtor()
1409 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor, in ProcessDeleteDtor() argument
1414 const CXXDeleteExpr *DE = Dtor.getDeleteExpr(); in ProcessDeleteDtor()
1424 const CXXDestructorDecl *Dtor = RD->getDestructor(); in ProcessDeleteDtor() local
1426 PostImplicitCall PP(Dtor, DE->getBeginLoc(), LCtx, getCFGElementRef()); in ProcessDeleteDtor()
/freebsd/contrib/llvm-project/clang/lib/AST/Interp/
H A DByteCodeExprGen.cpp3022 if (const CXXDestructorDecl *Dtor = ElemRecord->getDestructor(); in emitRecordDestruction() local
3023 !Dtor || Dtor->isTrivial()) in emitRecordDestruction()
3057 if (const CXXDestructorDecl *Dtor = R->getDestructor(); in emitRecordDestruction() local
3058 Dtor && !Dtor->isTrivial()) { in emitRecordDestruction()
3059 if (const Function *DtorFunc = getFunction(Dtor)) { in emitRecordDestruction()
/freebsd/contrib/llvm-project/clang/lib/Sema/
H A DSemaAccess.cpp1618 CXXDestructorDecl *Dtor, in CheckDestructorAccess() argument
1625 AccessSpecifier Access = Dtor->getAccess(); in CheckDestructorAccess()
1629 CXXRecordDecl *NamingClass = Dtor->getParent(); in CheckDestructorAccess()
1633 DeclAccessPair::make(Dtor, Access), in CheckDestructorAccess()
/freebsd/contrib/llvm-project/clang/lib/AST/
H A DDeclCXX.cpp562 auto *Dtor = getDestructor(); in hasConstexprDestructor() local
563 return Dtor ? Dtor->isConstexpr() : defaultedDestructorIsConstexpr(); in hasConstexprDestructor()
2118 if (const auto *Dtor = Def->getDestructor()) in isEffectivelyFinal() local
2119 if (Dtor->hasAttr<FinalAttr>()) in isEffectivelyFinal()

12