Home | History | Annotate | Download | only in Analysis

Lines Matching refs:Loops

661 // instructions and establishes their shared loops. Sets the variables
671 // It's used to help calculate distinct loops referenced by the destination.
672 // Here's the map from loops to levels:
675 // ... - other common loops
677 // ... - loops containing Src but not Dst
679 // ... - loops containing Dst but not Src
680 // MaxLevels - innermost loops containing Dst but not Src
700 // have 2 loops in common, so CommonLevels will equal 2 and the direction
738 // Given one of the loops containing the source, return
745 // Given one of the loops containing the destination,
767 // Finds the set of loops from the LoopNest that
771 SmallBitVector &Loops) const {
775 Loops.set(Level);
801 // Collect any loops mentioned in the set of "Loops".
804 SmallBitVector &Loops) {
812 Loops.set(mapSrcLoop(AddRec->getLoop()));
813 return checkSrcSubscript(Start, LoopNest, Loops);
819 // Collect any loops mentioned in the set of "Loops".
822 SmallBitVector &Loops) {
830 Loops.set(mapDstLoop(AddRec->getLoop()));
831 return checkDstSubscript(Start, LoopNest, Loops);
837 // Collects the associated loops in a set.
841 SmallBitVector &Loops) {
848 Loops = SrcLoops;
849 Loops |= DstLoops;
850 unsigned N = Loops.count();
1584 // the Src and Dst loops. If it isn't, then there's no need to
1695 // Src and Dst loops. If it isn't, then there's no need to record a direction.
1891 // loop bounds for the i and j loops, respectively. So, ...
2051 "both loops in SIV should be same");
2174 const SmallBitVector &Loops,
2180 banerjeeMIVtest(Src, Dst, Loops, Result);
2201 // Can sometimes disprove the equal direction for 1 or more loops,
2404 // The inequalities given on page 25 are simplified in that loops are
2413 // index, and N_k is the stride of the kth index. Since all loops are normalized
2430 const SmallBitVector &Loops,
2470 Loops, DepthExpanded, Delta);
2474 if (Loops[K]) {
2513 const SmallBitVector &Loops,
2520 if (Loops[K]) {
2545 if (Loops[Level]) {
2589 Loops, DepthExpanded, Delta);
2594 Loops, DepthExpanded, Delta);
2599 Loops, DepthExpanded, Delta);
2605 return exploreDirections(Level + 1, A, B, Bound, Loops, DepthExpanded, Delta);
2632 // Since we normalize loops, we can simplify these equations to
2673 // Since we normalize loops, we can simplify these equations to
2717 // Since we normalize loops, we can simplify these equations to
2764 // Since we normalize loops, we can simplify these equations to
2979 SmallBitVector &Loops,
2983 for (int LI = Loops.find_first(); LI >= 0; LI = Loops.find_next(LI)) {
3284 Pair[P].Loops.resize(MaxLevels + 1);
3291 Pair[P].Loops);
3292 Pair[P].GroupLoops = Pair[P].Loops;
3299 DEBUG(dumpSmallBitVector(Pair[P].Loops));
3331 // and collected all the loops mentioned by pair P in Pair[P].Loops.
3332 // In addition, we've initialized Pair[P].GroupLoops to Pair[P].Loops
3335 // Src Dst Classification Loops GroupLoops Group
3364 // ignore these, but collect loops for later
3368 Pair[SI].Loops);
3371 Pair[SI].Loops);
3385 // accumulate set of all the loops in group
3438 if (testMIV(Pair[SI].Src, Pair[SI].Dst, Pair[SI].Loops, Result))
3496 if (propagate(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops,
3503 Pair[SJ].Loops);
3543 if (testMIV(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops, Result))
3564 CompleteLoops |= Pair[SI].Loops;
3614 // to dependences). Looking for cycles in the graph shows us loops
3647 // both loops.
3702 Pair[P].Loops.resize(MaxLevels + 1);
3709 Pair[P].Loops);
3710 Pair[P].GroupLoops = Pair[P].Loops;
3720 // ignore these, but collect loops for later
3723 Pair[SI].Loops);
3726 Pair[SI].Loops);
3738 // accumulate set of all the loops in group
3816 Pair[SJ].Loops, Constraints, Result.Consistent)) {
3820 Pair[SJ].Loops);