Lines Matching refs:EHStack

265   EHCleanupScope &cleanup = cast<EHCleanupScope>(*EHStack.begin());  in initFullExprCleanup()
283 for (unsigned I = 0, E = CGF.EHStack.getNumBranchFixups(); I != E; ++I) { in ResolveAllBranchFixups()
285 BranchFixup &Fixup = CGF.EHStack.getBranchFixup(I); in ResolveAllBranchFixups()
311 CGF.EHStack.clearFixups(); in ResolveAllBranchFixups()
338 if (!EHStack.getNumBranchFixups()) return; in ResolveBranchFixups()
340 assert(EHStack.hasNormalCleanups() && in ResolveBranchFixups()
346 for (unsigned I = 0, E = EHStack.getNumBranchFixups(); I != E; ++I) { in ResolveBranchFixups()
348 BranchFixup &Fixup = EHStack.getBranchFixup(I); in ResolveBranchFixups()
371 EHStack.popNullFixups(); in ResolveBranchFixups()
378 while (EHStack.stable_begin() != Old) { in PopCleanupBlocks()
379 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.begin()); in PopCleanupBlocks()
410 EHStack.pushCopyOfCleanup(Header.getKind(), in PopCleanupBlocks()
473 if (flags.isForEHCleanup()) CGF.EHStack.pushTerminate(); in EmitCleanup()
496 if (flags.isForEHCleanup()) CGF.EHStack.popTerminate(); in EmitCleanup()
564 assert(!EHStack.empty() && "cleanup stack is empty!"); in PopCleanupBlock()
565 assert(isa<EHCleanupScope>(*EHStack.begin()) && "top not a cleanup!"); in PopCleanupBlock()
566 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.begin()); in PopCleanupBlock()
567 assert(Scope.getFixupDepth() <= EHStack.getNumBranchFixups()); in PopCleanupBlock()
587 bool HasFixups = EHStack.getNumBranchFixups() != FixupDepth; in PopCleanupBlock()
626 EHScope &enclosing = *EHStack.find(Scope.getEnclosingNormalCleanup()); in PopCleanupBlock()
648 EHStack.popCleanup(); // safe because there are no fixups in PopCleanupBlock()
649 assert(EHStack.getNumBranchFixups() == 0 || in PopCleanupBlock()
650 EHStack.hasNormalCleanups()); in PopCleanupBlock()
673 EHStack.popCleanup(); in PopCleanupBlock()
681 EHStack.popCleanup(); in PopCleanupBlock()
717 (Scope.getEnclosingNormalCleanup() != EHStack.stable_end()); in PopCleanupBlock()
729 EHScope &S = *EHStack.find(Scope.getEnclosingNormalCleanup()); in PopCleanupBlock()
792 EHStack.popCleanup(); in PopCleanupBlock()
793 assert(EHStack.hasNormalCleanups() == HasEnclosingCleanups); in PopCleanupBlock()
803 for (unsigned I = FixupDepth, E = EHStack.getNumBranchFixups(); in PopCleanupBlock()
805 BranchFixup &Fixup = EHStack.getBranchFixup(I); in PopCleanupBlock()
854 for (unsigned I = FixupDepth, E = EHStack.getNumBranchFixups(); in PopCleanupBlock()
856 EHStack.getBranchFixup(I).OptimisticBranchBlock = NewNormalEntry; in PopCleanupBlock()
860 assert(EHStack.hasNormalCleanups() || EHStack.getNumBranchFixups() == 0); in PopCleanupBlock()
890 assert(Dest.getScopeDepth().encloses(EHStack.stable_begin()) in isObviouslyBranchWithoutCleanups()
895 EHStack.getInnermostActiveNormalCleanup(); in isObviouslyBranchWithoutCleanups()
900 if (TopCleanup == EHStack.stable_end() || in isObviouslyBranchWithoutCleanups()
915 assert(Dest.getScopeDepth().encloses(EHStack.stable_begin()) in EmitBranchThroughCleanup()
926 TopCleanup = EHStack.getInnermostActiveNormalCleanup(); in EmitBranchThroughCleanup()
931 if (TopCleanup == EHStack.stable_end() || in EmitBranchThroughCleanup()
940 BranchFixup &Fixup = EHStack.addBranchFixup(); in EmitBranchThroughCleanup()
959 cast<EHCleanupScope>(*EHStack.find(TopCleanup)); in EmitBranchThroughCleanup()
968 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(I)); in EmitBranchThroughCleanup()
990 static bool IsUsedAsNormalCleanup(EHScopeStack &EHStack, in IsUsedAsNormalCleanup() argument
993 if (cast<EHCleanupScope>(*EHStack.find(C)).getNormalBlock()) in IsUsedAsNormalCleanup()
998 I = EHStack.getInnermostNormalCleanup(); in IsUsedAsNormalCleanup()
1001 EHCleanupScope &S = cast<EHCleanupScope>(*EHStack.find(I)); in IsUsedAsNormalCleanup()
1009 static bool IsUsedAsEHCleanup(EHScopeStack &EHStack, in IsUsedAsEHCleanup() argument
1012 if (EHStack.find(cleanup)->hasEHBranches()) in IsUsedAsEHCleanup()
1017 i = EHStack.getInnermostEHScope(); i != cleanup; ) { in IsUsedAsEHCleanup()
1020 EHScope &scope = *EHStack.find(i); in IsUsedAsEHCleanup()
1044 EHCleanupScope &Scope = cast<EHCleanupScope>(*CGF.EHStack.find(C)); in SetupCleanupBlockActivation()
1058 (isActivatedInConditional || IsUsedAsNormalCleanup(CGF.EHStack, C))) { in SetupCleanupBlockActivation()
1065 (isActivatedInConditional || IsUsedAsEHCleanup(CGF.EHStack, C))) { in SetupCleanupBlockActivation()
1099 assert(C != EHStack.stable_end() && "activating bottom of stack?"); in ActivateCleanupBlock()
1100 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(C)); in ActivateCleanupBlock()
1111 assert(C != EHStack.stable_end() && "deactivating bottom of stack?"); in DeactivateCleanupBlock()
1112 EHCleanupScope &Scope = cast<EHCleanupScope>(*EHStack.find(C)); in DeactivateCleanupBlock()
1116 if (C == EHStack.stable_begin()) { in DeactivateCleanupBlock()