Lines Matching refs:Dependence
223 bool Dependence::isInput() const { in isInput()
229 bool Dependence::isOutput() const { in isOutput()
235 bool Dependence::isFlow() const { in isFlow()
241 bool Dependence::isAnti() const { in isAnti()
250 bool Dependence::isScalar(unsigned level) const { in isScalar()
261 : Dependence(Source, Destination), Levels(CommonLevels), in FullDependence()
593 void Dependence::dump(raw_ostream &OS) const { in dump()
1222 Result.DV[Level].Direction &= Dependence::DVEntry::LT; in strongSIVtest()
1224 Result.DV[Level].Direction &= Dependence::DVEntry::GT; in strongSIVtest()
1226 Result.DV[Level].Direction &= Dependence::DVEntry::EQ; in strongSIVtest()
1233 Result.DV[Level].Direction &= Dependence::DVEntry::EQ; in strongSIVtest()
1258 unsigned NewDirection = Dependence::DVEntry::NONE; in strongSIVtest()
1261 NewDirection = Dependence::DVEntry::LT; in strongSIVtest()
1263 NewDirection |= Dependence::DVEntry::EQ; in strongSIVtest()
1266 NewDirection |= Dependence::DVEntry::GT; in strongSIVtest()
1319 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::LT); in weakCrossingSIVtest()
1320 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::GT); in weakCrossingSIVtest()
1379 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::LT); in weakCrossingSIVtest()
1380 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::GT); in weakCrossingSIVtest()
1413 Result.DV[Level].Direction &= unsigned(~Dependence::DVEntry::EQ); in weakCrossingSIVtest()
1618 unsigned NewDirection = Dependence::DVEntry::NONE; in exactSIVtest()
1633 NewDirection |= Dependence::DVEntry::EQ; in exactSIVtest()
1637 NewDirection |= Dependence::DVEntry::GT; in exactSIVtest()
1641 NewDirection |= Dependence::DVEntry::LT; in exactSIVtest()
1647 if (Result.DV[Level].Direction == Dependence::DVEntry::NONE) in exactSIVtest()
1651 return Result.DV[Level].Direction == Dependence::DVEntry::NONE; in exactSIVtest()
1719 Result.DV[Level].Direction &= Dependence::DVEntry::GE; in weakZeroSrcSIVtest()
1747 Result.DV[Level].Direction &= Dependence::DVEntry::LE; in weakZeroSrcSIVtest()
1828 Result.DV[Level].Direction &= Dependence::DVEntry::LE; in weakZeroDstSIVtest()
1856 Result.DV[Level].Direction &= Dependence::DVEntry::GE; in weakZeroDstSIVtest()
2497 Result.DV[Level - 1].Direction &= unsigned(~Dependence::DVEntry::EQ); in gcdMIVtest()
2561 Bound[K].Direction = Dependence::DVEntry::ALL; in banerjeeMIVtest()
2562 Bound[K].DirSet = Dependence::DVEntry::NONE; in banerjeeMIVtest()
2566 if (Bound[K].Lower[Dependence::DVEntry::ALL]) in banerjeeMIVtest()
2567 LLVM_DEBUG(dbgs() << *Bound[K].Lower[Dependence::DVEntry::ALL] << '\t'); in banerjeeMIVtest()
2570 if (Bound[K].Upper[Dependence::DVEntry::ALL]) in banerjeeMIVtest()
2571 LLVM_DEBUG(dbgs() << *Bound[K].Upper[Dependence::DVEntry::ALL] << '\n'); in banerjeeMIVtest()
2579 if (testBounds(Dependence::DVEntry::ALL, 0, Bound, Delta)) { in banerjeeMIVtest()
2636 Bound[K].DirSet = Dependence::DVEntry::ALL; in exploreDirections()
2648 case Dependence::DVEntry::LT: in exploreDirections()
2651 case Dependence::DVEntry::EQ: in exploreDirections()
2654 case Dependence::DVEntry::GT: in exploreDirections()
2657 case Dependence::DVEntry::ALL: in exploreDirections()
2679 if (Bound[Level].Lower[Dependence::DVEntry::LT]) in exploreDirections()
2680 LLVM_DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::LT] in exploreDirections()
2684 if (Bound[Level].Upper[Dependence::DVEntry::LT]) in exploreDirections()
2685 LLVM_DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::LT] in exploreDirections()
2690 if (Bound[Level].Lower[Dependence::DVEntry::EQ]) in exploreDirections()
2691 LLVM_DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::EQ] in exploreDirections()
2695 if (Bound[Level].Upper[Dependence::DVEntry::EQ]) in exploreDirections()
2696 LLVM_DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::EQ] in exploreDirections()
2701 if (Bound[Level].Lower[Dependence::DVEntry::GT]) in exploreDirections()
2702 LLVM_DEBUG(dbgs() << *Bound[Level].Lower[Dependence::DVEntry::GT] in exploreDirections()
2706 if (Bound[Level].Upper[Dependence::DVEntry::GT]) in exploreDirections()
2707 LLVM_DEBUG(dbgs() << *Bound[Level].Upper[Dependence::DVEntry::GT] in exploreDirections()
2717 if (testBounds(Dependence::DVEntry::LT, Level, Bound, Delta)) in exploreDirections()
2722 if (testBounds(Dependence::DVEntry::EQ, Level, Bound, Delta)) in exploreDirections()
2727 if (testBounds(Dependence::DVEntry::GT, Level, Bound, Delta)) in exploreDirections()
2731 Bound[Level].Direction = Dependence::DVEntry::ALL; in exploreDirections()
2770 Bound[K].Lower[Dependence::DVEntry::ALL] = nullptr; // Default value = -infinity. in findBoundsALL()
2771 Bound[K].Upper[Dependence::DVEntry::ALL] = nullptr; // Default value = +infinity. in findBoundsALL()
2773 Bound[K].Lower[Dependence::DVEntry::ALL] = in findBoundsALL()
2776 Bound[K].Upper[Dependence::DVEntry::ALL] = in findBoundsALL()
2783 Bound[K].Lower[Dependence::DVEntry::ALL] = in findBoundsALL()
2786 Bound[K].Upper[Dependence::DVEntry::ALL] = in findBoundsALL()
2809 Bound[K].Lower[Dependence::DVEntry::EQ] = nullptr; // Default value = -infinity. in findBoundsEQ()
2810 Bound[K].Upper[Dependence::DVEntry::EQ] = nullptr; // Default value = +infinity. in findBoundsEQ()
2814 Bound[K].Lower[Dependence::DVEntry::EQ] = in findBoundsEQ()
2817 Bound[K].Upper[Dependence::DVEntry::EQ] = in findBoundsEQ()
2826 Bound[K].Lower[Dependence::DVEntry::EQ] = NegativePart; // Zero in findBoundsEQ()
2829 Bound[K].Upper[Dependence::DVEntry::EQ] = PositivePart; // Zero in findBoundsEQ()
2849 Bound[K].Lower[Dependence::DVEntry::LT] = nullptr; // Default value = -infinity. in findBoundsLT()
2850 Bound[K].Upper[Dependence::DVEntry::LT] = nullptr; // Default value = +infinity. in findBoundsLT()
2856 Bound[K].Lower[Dependence::DVEntry::LT] = in findBoundsLT()
2860 Bound[K].Upper[Dependence::DVEntry::LT] = in findBoundsLT()
2869 Bound[K].Lower[Dependence::DVEntry::LT] = SE->getNegativeSCEV(B[K].Coeff); in findBoundsLT()
2873 Bound[K].Upper[Dependence::DVEntry::LT] = SE->getNegativeSCEV(B[K].Coeff); in findBoundsLT()
2893 Bound[K].Lower[Dependence::DVEntry::GT] = nullptr; // Default value = -infinity. in findBoundsGT()
2894 Bound[K].Upper[Dependence::DVEntry::GT] = nullptr; // Default value = +infinity. in findBoundsGT()
2900 Bound[K].Lower[Dependence::DVEntry::GT] = in findBoundsGT()
2904 Bound[K].Upper[Dependence::DVEntry::GT] = in findBoundsGT()
2912 Bound[K].Lower[Dependence::DVEntry::GT] = A[K].Coeff; in findBoundsGT()
2915 Bound[K].Upper[Dependence::DVEntry::GT] = A[K].Coeff; in findBoundsGT()
3234 void DependenceInfo::updateDirection(Dependence::DVEntry &Level, in updateDirection()
3244 unsigned NewDirection = Dependence::DVEntry::NONE; in updateDirection()
3246 NewDirection = Dependence::DVEntry::EQ; in updateDirection()
3248 NewDirection |= Dependence::DVEntry::LT; in updateDirection()
3250 NewDirection |= Dependence::DVEntry::GT; in updateDirection()
3261 unsigned NewDirection = Dependence::DVEntry::NONE; in updateDirection()
3266 NewDirection |= Dependence::DVEntry::EQ; in updateDirection()
3271 NewDirection |= Dependence::DVEntry::LT; in updateDirection()
3276 NewDirection |= Dependence::DVEntry::GT; in updateDirection()
3526 std::unique_ptr<Dependence>
3539 return std::make_unique<Dependence>(Src, Dst); in depends()
3554 return std::make_unique<Dependence>(Src, Dst); in depends()
3585 return std::make_unique<Dependence>(Src, Dst); in depends()
3872 if (Result.DV[SJ - 1].Direction == Dependence::DVEntry::NONE) in depends()
3891 if (!(Result.getDirection(II) & Dependence::DVEntry::EQ)) { in depends()
3902 if (Result.getDirection(II) != Dependence::DVEntry::EQ) { in depends()
3961 const SCEV *DependenceInfo::getSplitIteration(const Dependence &Dep, in getSplitIteration()