reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Analysis/DependenceAnalysis.cpp
 3456   Pair[0].Src = SrcSCEV;
 3457   Pair[0].Dst = DstSCEV;
 3460     if (tryDelinearize(Src, Dst, Pair)) {
 3462       Pairs = Pair.size();
 3467     Pair[P].Loops.resize(MaxLevels + 1);
 3468     Pair[P].GroupLoops.resize(MaxLevels + 1);
 3469     Pair[P].Group.resize(Pairs);
 3470     removeMatchingExtensions(&Pair[P]);
 3471     Pair[P].Classification =
 3472       classifyPair(Pair[P].Src, LI->getLoopFor(Src->getParent()),
 3473                    Pair[P].Dst, LI->getLoopFor(Dst->getParent()),
 3474                    Pair[P].Loops);
 3475     Pair[P].GroupLoops = Pair[P].Loops;
 3475     Pair[P].GroupLoops = Pair[P].Loops;
 3476     Pair[P].Group.set(P);
 3478     LLVM_DEBUG(dbgs() << "\tsrc = " << *Pair[P].Src << "\n");
 3479     LLVM_DEBUG(dbgs() << "\tdst = " << *Pair[P].Dst << "\n");
 3480     LLVM_DEBUG(dbgs() << "\tclass = " << Pair[P].Classification << "\n");
 3482     LLVM_DEBUG(dumpSmallBitVector(Pair[P].Loops));
 3546     if (Pair[SI].Classification == Subscript::NonLinear) {
 3549       collectCommonLoops(Pair[SI].Src,
 3551                          Pair[SI].Loops);
 3552       collectCommonLoops(Pair[SI].Dst,
 3554                          Pair[SI].Loops);
 3556     } else if (Pair[SI].Classification == Subscript::ZIV) {
 3564         SmallBitVector Intersection = Pair[SI].GroupLoops;
 3565         Intersection &= Pair[SJ].GroupLoops;
 3568           Pair[SJ].GroupLoops |= Pair[SI].GroupLoops;
 3568           Pair[SJ].GroupLoops |= Pair[SI].GroupLoops;
 3570           Pair[SJ].Group |= Pair[SI].Group;
 3570           Pair[SJ].Group |= Pair[SI].Group;
 3575         if (Pair[SI].Group.count() == 1) {
 3598     switch (Pair[SI].Classification) {
 3601       if (testZIV(Pair[SI].Src, Pair[SI].Dst, Result))
 3601       if (testZIV(Pair[SI].Src, Pair[SI].Dst, Result))
 3608       if (testSIV(Pair[SI].Src, Pair[SI].Dst, Level, Result, NewConstraint,
 3608       if (testSIV(Pair[SI].Src, Pair[SI].Dst, Level, Result, NewConstraint,
 3615       if (testRDIV(Pair[SI].Src, Pair[SI].Dst, Result))
 3615       if (testRDIV(Pair[SI].Src, Pair[SI].Dst, Result))
 3620       if (testMIV(Pair[SI].Src, Pair[SI].Dst, Pair[SI].Loops, Result))
 3620       if (testMIV(Pair[SI].Src, Pair[SI].Dst, Pair[SI].Loops, Result))
 3620       if (testMIV(Pair[SI].Src, Pair[SI].Dst, Pair[SI].Loops, Result))
 3637       SmallBitVector Group(Pair[SI].Group);
 3644         if (Pair[SJ].Classification == Subscript::SIV)
 3648         PairsInGroup.push_back(&Pair[SJ]);
 3660           if (testSIV(Pair[SJ].Src, Pair[SJ].Dst, Level, Result, NewConstraint,
 3660           if (testSIV(Pair[SJ].Src, Pair[SJ].Dst, Level, Result, NewConstraint,
 3681             if (propagate(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops,
 3681             if (propagate(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops,
 3681             if (propagate(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops,
 3685               Pair[SJ].Classification =
 3686                 classifyPair(Pair[SJ].Src, LI->getLoopFor(Src->getParent()),
 3687                              Pair[SJ].Dst, LI->getLoopFor(Dst->getParent()),
 3688                              Pair[SJ].Loops);
 3689               switch (Pair[SJ].Classification) {
 3692                 if (testZIV(Pair[SJ].Src, Pair[SJ].Dst, Result))
 3692                 if (testZIV(Pair[SJ].Src, Pair[SJ].Dst, Result))
 3713         if (Pair[SJ].Classification == Subscript::RDIV) {
 3715           if (testRDIV(Pair[SJ].Src, Pair[SJ].Dst, Result))
 3715           if (testRDIV(Pair[SJ].Src, Pair[SJ].Dst, Result))
 3726         if (Pair[SJ].Classification == Subscript::MIV) {
 3728           if (testMIV(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops, Result))
 3728           if (testMIV(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops, Result))
 3728           if (testMIV(Pair[SJ].Src, Pair[SJ].Dst, Pair[SJ].Loops, Result))
 3750     CompleteLoops |= Pair[SI].Loops;