reference, declarationdefinition
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);