Lines Matching refs:TerminatedPath
604 struct TerminatedPath { struct in __anon672a7b590511::ClobberWalker
618 std::optional<TerminatedPath>
622 SmallVectorImpl<TerminatedPath> &Terminated) { in getBlockingAccess()
666 TerminatedPath Term{Res.Result, PathIndex}; in getBlockingAccess()
734 TerminatedPath PrimaryClobber;
737 SmallVector<TerminatedPath, 4> OtherClobbers;
773 SmallVector<TerminatedPath, 4> TerminatedPaths; in tryOptimizePhi()
779 auto MoveDominatedPathToEnd = [&](SmallVectorImpl<TerminatedPath> &Paths) { in tryOptimizePhi()
798 assert(all_of(TerminatedPaths, [&](const TerminatedPath &P) { in tryOptimizePhi()
805 if (std::optional<TerminatedPath> Blocker = getBlockingAccess( in tryOptimizePhi()
843 TerminatedPath Result{CurNode.Last, defPathIndex(CurNode)}; in tryOptimizePhi()
852 TerminatedPath Result = TerminatedPaths.pop_back_val(); in tryOptimizePhi()
857 SmallVector<TerminatedPath, 4> Clobbers; in tryOptimizePhi()
878 for (const TerminatedPath &TP : TerminatedPaths) { in tryOptimizePhi()
890 TerminatedPath Result = Clobbers.pop_back_val(); in tryOptimizePhi()
911 assert(all_of(R.OtherClobbers, [&](const TerminatedPath &P) { in verifyOptResult()