|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
tools/clang/lib/CodeGen/CGBlocks.cpp 857 capture.setCleanup(CGF.EHStack.stable_begin());
2402 EHScopeStack::stable_iterator cleanupDepth = CGF.EHStack.stable_begin();
2432 EHScopeStack::stable_iterator cleanupDepth = CGF.EHStack.stable_begin();
2941 EHStack.pushCleanup<CallBlockRelease>(Kind, Addr, Flags, LoadBlockVarAddr,
tools/clang/lib/CodeGen/CGCall.cpp 2434 EHStack.pushCleanup<CopyBackSwiftError>(NormalCleanup, temp, arg);
3610 args.addArgCleanupDeactivation(EHStack.getInnermostEHScope(), IsActive);
tools/clang/lib/CodeGen/CGClass.cpp 571 CGF.EHStack.pushCleanup<CallBaseDtor>(EHCleanup, BaseClassDecl,
1786 EHStack.pushCleanup<CallDtorDeleteConditional>(
1796 EHStack.pushCleanup<CallDtorDelete>(NormalAndEHCleanup);
1815 EHStack.pushCleanup<SanitizeDtorVTable>(NormalAndEHCleanup, DD);
1827 EHStack.pushCleanup<CallBaseDtor>(NormalAndEHCleanup,
1841 EHStack.pushCleanup<SanitizeDtorVTable>(NormalAndEHCleanup, DD);
1855 EHStack.pushCleanup<CallBaseDtor>(NormalAndEHCleanup,
1864 EHStack.pushCleanup<SanitizeDtorMembers>(NormalAndEHCleanup, DD);
1877 EHStack.pushCleanup<DestroyField>(cleanupKind, Field,
2408 EHStack.pushCleanup<CallDelegatingCtorDtor>(EHCleanup,
2442 EHStack.pushCleanup<CallLocalDtor>(NormalAndEHCleanup, D, Addr, T);
tools/clang/lib/CodeGen/CGCleanup.cpp 294 EHCleanupScope &cleanup = cast<EHCleanupScope>(*EHStack.begin());
325 for (unsigned I = 0, E = CGF.EHStack.getNumBranchFixups(); I != E; ++I) {
327 BranchFixup &Fixup = CGF.EHStack.getBranchFixup(I);
353 CGF.EHStack.clearFixups();
380 if (!EHStack.getNumBranchFixups()) return;
382 assert(EHStack.hasNormalCleanups() &&
388 for (unsigned I = 0, E = EHStack.getNumBranchFixups(); I != E; ++I) {
390 BranchFixup &Fixup = EHStack.getBranchFixup(I);
413 EHStack.popNullFixups();
423 while (EHStack.stable_begin() != Old) {
424 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.begin());
490 EHStack.pushCopyOfCleanup(Header.getKind(),
645 assert(!EHStack.empty() && "cleanup stack is empty!");
646 assert(isa<EHCleanupScope>(*EHStack.begin()) && "top not a cleanup!");
647 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.begin());
648 assert(Scope.getFixupDepth() <= EHStack.getNumBranchFixups());
670 bool HasFixups = EHStack.getNumBranchFixups() != FixupDepth;
709 EHScope &enclosing = *EHStack.find(Scope.getEnclosingNormalCleanup());
731 EHStack.popCleanup(); // safe because there are no fixups
732 assert(EHStack.getNumBranchFixups() == 0 ||
733 EHStack.hasNormalCleanups());
766 EHStack.popCleanup();
774 EHStack.popCleanup();
810 (Scope.getEnclosingNormalCleanup() != EHStack.stable_end());
822 EHScope &S = *EHStack.find(Scope.getEnclosingNormalCleanup());
894 EHStack.popCleanup();
895 assert(EHStack.hasNormalCleanups() == HasEnclosingCleanups);
905 for (unsigned I = FixupDepth, E = EHStack.getNumBranchFixups();
907 BranchFixup &Fixup = EHStack.getBranchFixup(I);
956 for (unsigned I = FixupDepth, E = EHStack.getNumBranchFixups();
958 EHStack.getBranchFixup(I).OptimisticBranchBlock = NewNormalEntry;
962 assert(EHStack.hasNormalCleanups() || EHStack.getNumBranchFixups() == 0);
962 assert(EHStack.hasNormalCleanups() || EHStack.getNumBranchFixups() == 0);
990 EHStack.pushTerminate();
1008 EHStack.popTerminate();
1020 assert(Dest.getScopeDepth().encloses(EHStack.stable_begin())
1025 EHStack.getInnermostActiveNormalCleanup();
1030 if (TopCleanup == EHStack.stable_end() ||
1045 assert(Dest.getScopeDepth().encloses(EHStack.stable_begin())
1056 TopCleanup = EHStack.getInnermostActiveNormalCleanup();
1061 if (TopCleanup == EHStack.stable_end() ||
1070 BranchFixup &Fixup = EHStack.addBranchFixup();
1089 cast<EHCleanupScope>(*EHStack.find(TopCleanup));
1098 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(I));
1174 EHCleanupScope &Scope = cast<EHCleanupScope>(*CGF.EHStack.find(C));
1188 (isActivatedInConditional || IsUsedAsNormalCleanup(CGF.EHStack, C))) {
1195 (isActivatedInConditional || IsUsedAsEHCleanup(CGF.EHStack, C))) {
1230 assert(C != EHStack.stable_end() && "activating bottom of stack?");
1231 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(C));
1242 assert(C != EHStack.stable_end() && "deactivating bottom of stack?");
1243 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(C));
1248 if (C == EHStack.stable_begin() &&
tools/clang/lib/CodeGen/CGCoroutine.cpp 504 auto old_top = CGF.EHStack.stable_begin();
506 auto top = CGF.EHStack.stable_begin();
509 for (auto b = CGF.EHStack.find(top), e = CGF.EHStack.find(old_top);
509 for (auto b = CGF.EHStack.find(top), e = CGF.EHStack.find(old_top);
605 EHStack.pushCleanup<CallCoroDelete>(NormalAndEHCleanup, S.getDeallocate());
630 EHStack.pushCleanup<CallCoroEnd>(EHCleanup);
tools/clang/lib/CodeGen/CGDecl.cpp 1576 EHStack.pushCleanup<CallLifetimeEnd>(NormalEHLifetimeMarker,
1936 EHStack.pushCleanup<DestroyNRVOVariableCXX>(cleanupKind, addr, type, dtor,
1961 EHStack.pushCleanup<DestroyNRVOVariableC>(cleanupKind, addr,
1974 EHStack.pushCleanup<DestroyObject>(cleanupKind, addr, type, destroyer,
1997 EHStack.pushCleanup<ExtendGCLifetime>(NormalCleanup, &D);
2008 EHStack.pushCleanup<CallCleanupFunction>(NormalAndEHCleanup, F, &Info, &D);
2070 EHStack.pushCleanup<CallStackRestore>(Kind, SPMem);
2080 EHStack.pushCleanup<DestroyObject>(
2408 EHStack.stable_begin();
2473 EHStack.pushCleanup<ConsumeARCParameter>(getARCCleanupKind(), ArgVal,
tools/clang/lib/CodeGen/CGException.cpp 381 EHScopeStack::stable_iterator cleanup = EHStack.stable_begin();
453 EHStack.pushTerminate();
464 EHStack.pushTerminate();
471 EHFilterScope *Filter = EHStack.pushFilter(NumExceptions);
530 EHStack.popTerminate();
540 EHStack.popTerminate();
546 EHFilterScope &filterScope = cast<EHFilterScope>(*EHStack.begin());
548 EHStack.popFilter();
560 EHCatchScope *CatchScope = EHStack.pushCatch(NumHandlers);
598 if (si == EHStack.stable_end())
602 EHScope &scope = *EHStack.find(si);
645 if (SI == EHStack.stable_end())
649 EHScope &EHS = *EHStack.find(SI);
702 assert(EHStack.requiresLandingPad());
703 assert(!EHStack.empty());
723 llvm::BasicBlock *LP = EHStack.begin()->getCachedLandingPad();
733 LP = getEHDispatchBlock(EHStack.getInnermostEHScope());
743 for (EHScopeStack::iterator ir = EHStack.begin(); true; ++ir) {
752 assert(EHStack.requiresLandingPad());
754 EHScope &innermostEHScope = *EHStack.find(EHStack.getInnermostEHScope());
754 EHScope &innermostEHScope = *EHStack.find(EHStack.getInnermostEHScope());
796 for (EHScopeStack::iterator I = EHStack.begin(), E = EHStack.end(); I != E;
796 for (EHScopeStack::iterator I = EHStack.begin(), E = EHStack.end(); I != E;
806 assert(I.next() == EHStack.end() && "EH filter is not end of EH stack");
888 Builder.CreateBr(getEHDispatchBlock(EHStack.getInnermostEHScope()));
1128 EHCatchScope &catchScope = cast<EHCatchScope>(*EHStack.begin());
1131 EHStack.popCatch();
1136 EHCatchScope &CatchScope = cast<EHCatchScope>(*EHStack.begin());
1143 EHStack.popCatch();
1155 EHStack.popCatch();
1306 CGF.EHStack.pushCleanup<CallEndCatchForFinally>(NormalAndEHCleanup,
1406 CGF.EHStack.pushCleanup<PerformFinally>(NormalCleanup, body,
1412 EHCatchScope *catchScope = CGF.EHStack.pushCatch(1);
1418 EHCatchScope &catchScope = cast<EHCatchScope>(*CGF.EHStack.begin());
1987 EHStack.pushCleanup<PerformSEHFinally>(Kind, FinallyFunc);
1998 EHStack.pushCleanup<PerformSEHFinally>(NormalAndEHCleanup, FinallyFunc);
2005 EHCatchScope *CatchScope = EHStack.pushCatch(1);
2040 EHCatchScope &CatchScope = cast<EHCatchScope>(*EHStack.begin());
2047 EHStack.popCatch();
2064 EHStack.popCatch();
tools/clang/lib/CodeGen/CGExprAgg.cpp 284 LifetimeEndBlock = CGF.EHStack.stable_begin();
531 cleanup = CGF.EHStack.stable_begin();
1325 Cleanups.push_back(CGF.EHStack.stable_begin());
1532 addCleanup(CGF.EHStack.stable_begin());
1611 addCleanup(CGF.EHStack.stable_begin());
1685 cleanup = CGF.EHStack.stable_begin();
tools/clang/lib/CodeGen/CGExprCXX.cpp 1075 Cleanup = EHStack.stable_begin();
1242 Cleanup = EHStack.stable_begin();
1486 DirectCleanup *Cleanup = CGF.EHStack
1517 ConditionalCleanup *Cleanup = CGF.EHStack
1678 operatorDeleteCleanup = EHStack.stable_begin();
1837 EHStack.pushCleanup<CallObjectDelete>(NormalAndEHCleanup, CompletePtr,
1916 CGF.EHStack.pushCleanup<CallObjectDelete>(NormalAndEHCleanup,
1984 CGF.EHStack.pushCleanup<CallArrayDelete>(NormalAndEHCleanup,
tools/clang/lib/CodeGen/CGObjC.cpp 706 EHStack.pushCleanup<FinishARCDealloc>(getARCCleanupKind());
1563 CGF.EHStack.pushCleanup<DestroyIvar>(cleanupKind, self, ivar, destroyer,
2682 EHStack.pushCleanup<CallObjCAutoreleasePoolObject>(NormalCleanup, Ptr);
2684 EHStack.pushCleanup<CallObjCMRRAutoreleasePoolObject>(NormalCleanup, Ptr);
3451 EHStack.pushCleanup<CallObjCAutoreleasePoolObject>(NormalCleanup, token);
3454 EHStack.pushCleanup<CallObjCMRRAutoreleasePoolObject>(NormalCleanup, token);
tools/clang/lib/CodeGen/CGObjCMac.cpp 4501 CGF.EHStack.pushCleanup<PerformFragileFinally>(NormalAndEHCleanup, &S,
tools/clang/lib/CodeGen/CGObjCRuntime.cpp 188 EHCatchScope *Catch = CGF.EHStack.pushCatch(Handlers.size());
250 CGF.EHStack.pushCleanup<CallObjCEndCatch>(NormalAndEHCleanup,
264 CGF.EHStack.pushCleanup<CatchRetScope>(NormalCleanup, CPI);
346 CGF.EHStack.pushCleanup<CallSyncExit>(NormalAndEHCleanup, syncExitFn, lock);
tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp 781 CGF.EHStack.pushCleanup<CleanupTy>(NormalAndEHCleanup, PrePostAction);
1218 CGF.EHStack.pushTerminate();
1220 CGF.EHStack.popTerminate();
1706 if (!CGF.EHStack.requiresLandingPad() || !CGF.getLangOpts().Exceptions ||
10873 CGF.EHStack.pushCleanup<DoacrossCleanupTy>(NormalAndEHCleanup, FiniRTLFn,
11012 CGF.EHStack.pushCleanup<OMPAllocateCleanupTy>(NormalAndEHCleanup, FiniRTLFn,
tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp 4730 CGF.EHStack.pushCleanup<GlobalizationScope>(NormalAndEHCleanup);
tools/clang/lib/CodeGen/CGStmt.cpp 449 if (!EHStack.empty())
535 if (EHStack.hasNormalCleanups() && CurLexicalScope)
549 Dest.setScopeDepth(EHStack.stable_begin());
572 = CGF.EHStack.getInnermostNormalCleanup();
tools/clang/lib/CodeGen/CodeGenFunction.cpp 325 bool HasCleanups = EHStack.stable_begin() != PrologueCleanupDepth;
327 HasCleanups && EHStack.containsOnlyLifetimeMarkers(PrologueCleanupDepth);
360 assert(EHStack.empty() &&
940 PrologueCleanupDepth = EHStack.stable_begin();
tools/clang/lib/CodeGen/CodeGenFunction.h 611 return EHStack.pushCleanup<T>(kind, A...);
618 EHStack.pushCleanupTuple<CleanupType>(kind, Saved);
727 CleanupStackDepth = CGF.EHStack.stable_begin();
744 return CGF.EHStack.stable_begin() != CleanupStackDepth;
971 EHStack.getInnermostNormalCleanup(),
1653 if (!EHStack.requiresLandingPad()) return nullptr;
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp 2333 CGF.EHStack.pushCleanup<CallGuardAbort>(EHCleanup, guard);
4081 CGF.EHStack.pushCleanup<CallEndCatch>(NormalAndEHCleanup, EndMightThrow);
4247 CGF.EHStack.pushTerminate();
4258 CGF.EHStack.popTerminate();
4378 CGF.EHStack.pushCleanup<CatchRetScope>(
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp 878 CGF.EHStack.pushCleanup<CatchRetScope>(NormalCleanup, CPI);
884 CGF.EHStack.pushCleanup<CatchRetScope>(NormalCleanup, CPI);
2537 CGF.EHStack.pushCleanup<ResetGuardBit>(EHCleanup, GuardAddr, GuardNum);
2583 CGF.EHStack.pushCleanup<CallInitThreadAbort>(EHCleanup, GuardAddr);