Home | History | Annotate | Download | only in Scalar

Lines Matching defs:Edge

1471     // If any of these blocks has more than one successor (i.e. if the edge we
1525 DEBUG(dbgs() << "COULD NOT PRE LOAD BECAUSE OF INDBR CRITICAL EDGE '"
1532 << "COULD NOT PRE LOAD BECAUSE OF LANDING PAD CRITICAL EDGE '"
1988 /// isOnlyReachableViaThisEdge - There is an edge from 'Src' to 'Dst'. Return
1989 /// true if every path from the entry block to 'Dst' passes via this edge. In
1990 /// particular 'Dst' must not be reachable via another edge from 'Src'.
1993 // First off, there must not be more than one edge from Src to Dst, there
2001 // An edge from Src to Dst.
2009 // reach it either without passing through Src (and thus not via the edge)
2010 // or by passing through Src but taking a different edge out of Src. Either
2011 // way it is possible to reach Dst without passing via the edge, so fail.
2015 assert(SawEdgeFromSrc && "No edge between these basic blocks!");
2019 // Src, since all others are dominated by Dst. As there is only one edge from
2020 // Src to Dst, the path passes by this edge.
2174 // we can't do this until PRE's critical edge splitting updates memdep.
2303 // We can't do PRE safely on a critical edge, so instead we schedule
2304 // the edge to be split and perform the PRE the next time we iterate
2401 std::pair<TerminatorInst*, unsigned> Edge = toSplit.pop_back_val();
2402 SplitCriticalEdge(Edge.first, Edge.second, this);