Lines Matching refs:Dependence

195 bool Dependence::isInput() const {  in isInput()
201 bool Dependence::isOutput() const { in isOutput()
207 bool Dependence::isFlow() const { in isFlow()
213 bool Dependence::isAnti() const { in isAnti()
222 bool Dependence::isScalar(unsigned level) const { in isScalar()
233 : Dependence(Source, Destination), Levels(CommonLevels), in FullDependence()
574 void Dependence::dump(raw_ostream &OS) const { in dump()
1134 Result.DV[Level].Direction &= Dependence::DVEntry::LT; in strongSIVtest()
1136 Result.DV[Level].Direction &= Dependence::DVEntry::GT; in strongSIVtest()
1138 Result.DV[Level].Direction &= Dependence::DVEntry::EQ; in strongSIVtest()
1145 Result.DV[Level].Direction &= Dependence::DVEntry::EQ; in strongSIVtest()
1170 unsigned NewDirection = Dependence::DVEntry::NONE; in strongSIVtest()
1173 NewDirection = Dependence::DVEntry::LT; in strongSIVtest()
1175 NewDirection |= Dependence::DVEntry::EQ; in strongSIVtest()
1178 NewDirection |= Dependence::DVEntry::GT; in strongSIVtest()
1235 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::LT); in weakCrossingSIVtest()
1236 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::GT); in weakCrossingSIVtest()
1297 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::LT); in weakCrossingSIVtest()
1298 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::GT); in weakCrossingSIVtest()
1331 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::EQ); in weakCrossingSIVtest()
1536 unsigned NewDirection = Dependence::DVEntry::NONE; in exactSIVtest()
1552 NewDirection |= Dependence::DVEntry::LT; in exactSIVtest()
1578 NewDirection |= Dependence::DVEntry::EQ; in exactSIVtest()
1595 NewDirection |= Dependence::DVEntry::GT; in exactSIVtest()
1601 if (Result.DV[Level].Direction == Dependence::DVEntry::NONE) in exactSIVtest()
1603 return Result.DV[Level].Direction == Dependence::DVEntry::NONE; in exactSIVtest()
1673 Result.DV[Level].Direction &= Dependence::DVEntry::LE; in weakZeroSrcSIVtest()
1701 Result.DV[Level].Direction &= Dependence::DVEntry::GE; in weakZeroSrcSIVtest()
1783 Result.DV[Level].Direction &= Dependence::DVEntry::LE; in weakZeroDstSIVtest()
1811 Result.DV[Level].Direction &= Dependence::DVEntry::GE; in weakZeroDstSIVtest()
2456 Result.DV[Level - 1].Direction &= unsigned(~Dependence::DVEntry::EQ); in gcdMIVtest()
2521 Bound[K].Direction = Dependence::DVEntry::ALL; in banerjeeMIVtest()
2522 Bound[K].DirSet = Dependence::DVEntry::NONE; in banerjeeMIVtest()
2526 if (Bound[K].Lower[Dependence::DVEntry::ALL]) in banerjeeMIVtest()
2527 DEBUG(dbgs() << *Bound[K].Lower[Dependence::DVEntry::ALL] << '\t'); in banerjeeMIVtest()
2530 if (Bound[K].Upper[Dependence::DVEntry::ALL]) in banerjeeMIVtest()
2531 DEBUG(dbgs() << *Bound[K].Upper[Dependence::DVEntry::ALL] << '\n'); in banerjeeMIVtest()
2539 if (testBounds(Dependence::DVEntry::ALL, 0, Bound, Delta)) { in banerjeeMIVtest()
2597 case Dependence::DVEntry::LT: in exploreDirections()
2600 case Dependence::DVEntry::EQ: in exploreDirections()
2603 case Dependence::DVEntry::GT: in exploreDirections()
2606 case Dependence::DVEntry::ALL: in exploreDirections()
2628 if (Bound[Level].Lower[Dependence::DVEntry::LT]) in exploreDirections()
2629 DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::LT] << '\t'); in exploreDirections()
2632 if (Bound[Level].Upper[Dependence::DVEntry::LT]) in exploreDirections()
2633 DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::LT] << '\n'); in exploreDirections()
2637 if (Bound[Level].Lower[Dependence::DVEntry::EQ]) in exploreDirections()
2638 DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::EQ] << '\t'); in exploreDirections()
2641 if (Bound[Level].Upper[Dependence::DVEntry::EQ]) in exploreDirections()
2642 DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::EQ] << '\n'); in exploreDirections()
2646 if (Bound[Level].Lower[Dependence::DVEntry::GT]) in exploreDirections()
2647 DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::GT] << '\t'); in exploreDirections()
2650 if (Bound[Level].Upper[Dependence::DVEntry::GT]) in exploreDirections()
2651 DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::GT] << '\n'); in exploreDirections()
2660 if (testBounds(Dependence::DVEntry::LT, Level, Bound, Delta)) in exploreDirections()
2665 if (testBounds(Dependence::DVEntry::EQ, Level, Bound, Delta)) in exploreDirections()
2670 if (testBounds(Dependence::DVEntry::GT, Level, Bound, Delta)) in exploreDirections()
2674 Bound[Level].Direction = Dependence::DVEntry::ALL; in exploreDirections()
2717 Bound[K].Lower[Dependence::DVEntry::ALL] = nullptr; // Default value = -infinity. in findBoundsALL()
2718 Bound[K].Upper[Dependence::DVEntry::ALL] = nullptr; // Default value = +infinity. in findBoundsALL()
2720 Bound[K].Lower[Dependence::DVEntry::ALL] = in findBoundsALL()
2723 Bound[K].Upper[Dependence::DVEntry::ALL] = in findBoundsALL()
2730 Bound[K].Lower[Dependence::DVEntry::ALL] = in findBoundsALL()
2733 Bound[K].Upper[Dependence::DVEntry::ALL] = in findBoundsALL()
2758 Bound[K].Lower[Dependence::DVEntry::EQ] = nullptr; // Default value = -infinity. in findBoundsEQ()
2759 Bound[K].Upper[Dependence::DVEntry::EQ] = nullptr; // Default value = +infinity. in findBoundsEQ()
2763 Bound[K].Lower[Dependence::DVEntry::EQ] = in findBoundsEQ()
2766 Bound[K].Upper[Dependence::DVEntry::EQ] = in findBoundsEQ()
2775 Bound[K].Lower[Dependence::DVEntry::EQ] = NegativePart; // Zero in findBoundsEQ()
2778 Bound[K].Upper[Dependence::DVEntry::EQ] = PositivePart; // Zero in findBoundsEQ()
2800 Bound[K].Lower[Dependence::DVEntry::LT] = nullptr; // Default value = -infinity. in findBoundsLT()
2801 Bound[K].Upper[Dependence::DVEntry::LT] = nullptr; // Default value = +infinity. in findBoundsLT()
2808 Bound[K].Lower[Dependence::DVEntry::LT] = in findBoundsLT()
2812 Bound[K].Upper[Dependence::DVEntry::LT] = in findBoundsLT()
2821 Bound[K].Lower[Dependence::DVEntry::LT] = SE->getNegativeSCEV(B[K].Coeff); in findBoundsLT()
2825 Bound[K].Upper[Dependence::DVEntry::LT] = SE->getNegativeSCEV(B[K].Coeff); in findBoundsLT()
2847 Bound[K].Lower[Dependence::DVEntry::GT] = nullptr; // Default value = -infinity. in findBoundsGT()
2848 Bound[K].Upper[Dependence::DVEntry::GT] = nullptr; // Default value = +infinity. in findBoundsGT()
2855 Bound[K].Lower[Dependence::DVEntry::GT] = in findBoundsGT()
2859 Bound[K].Upper[Dependence::DVEntry::GT] = in findBoundsGT()
2867 Bound[K].Lower[Dependence::DVEntry::GT] = A[K].Coeff; in findBoundsGT()
2870 Bound[K].Upper[Dependence::DVEntry::GT] = A[K].Coeff; in findBoundsGT()
3193 void DependenceAnalysis::updateDirection(Dependence::DVEntry &Level, in updateDirection()
3204 unsigned NewDirection = Dependence::DVEntry::NONE; in updateDirection()
3206 NewDirection = Dependence::DVEntry::EQ; in updateDirection()
3208 NewDirection |= Dependence::DVEntry::LT; in updateDirection()
3210 NewDirection |= Dependence::DVEntry::GT; in updateDirection()
3221 unsigned NewDirection = Dependence::DVEntry::NONE; in updateDirection()
3226 NewDirection |= Dependence::DVEntry::EQ; in updateDirection()
3231 NewDirection |= Dependence::DVEntry::LT; in updateDirection()
3236 NewDirection |= Dependence::DVEntry::GT; in updateDirection()
3345 std::unique_ptr<Dependence>
3359 return make_unique<Dependence>(Src, Dst); in depends()
3371 return make_unique<Dependence>(Src, Dst); in depends()
3710 if (Result.DV[SJ - 1].Direction == Dependence::DVEntry::NONE) in depends()
3729 if (!(Result.getDirection(II) & Dependence::DVEntry::EQ)) { in depends()
3740 if (Result.getDirection(II) != Dependence::DVEntry::EQ) { in depends()
3803 const SCEV *DependenceAnalysis::getSplitIteration(const Dependence &Dep, in getSplitIteration()