Home
last modified time | relevance | path

Searched refs:IntegerPolyhedron (Results 1 – 22 of 22) sorted by relevance

/llvm-project-15.0.7/mlir/unittests/Analysis/Presburger/
H A DIntegerPolyhedronTest.cpp28 static IntegerPolyhedron
32 IntegerPolyhedron set( in makeSetFromConstraints()
131 IntegerPolyhedron set = in TEST()
150 IntegerPolyhedron set = in TEST()
482 IntegerPolyhedron poly = in TEST()
490 IntegerPolyhedron poly2 = in TEST()
500 IntegerPolyhedron poly3 = in TEST()
508 IntegerPolyhedron poly4 = in TEST()
609 IntegerPolyhedron &poly, in checkDivisionRepresentation()
771 IntegerPolyhedron poly = in TEST()
[all …]
H A DIntegerRelationTest.cpp31 IntegerPolyhedron domainSet = rel.getDomainSet(); in TEST()
33 IntegerPolyhedron expectedDomainSet = in TEST()
38 IntegerPolyhedron rangeSet = rel.getRangeSet(); in TEST()
40 IntegerPolyhedron expectedRangeSet = in TEST()
69 IntegerPolyhedron poly = parsePoly("(x)[N, M] : (x >= 0, M - x - 1 >= 0)"); in TEST()
82 IntegerPolyhedron poly = in TEST()
H A DPresburgerSetTest.cpp91 ArrayRef<IntegerPolyhedron> polys) { in makeSetFromPoly()
94 for (const IntegerPolyhedron &poly : polys) in makeSetFromPoly()
434 void expectEqual(const IntegerPolyhedron &s, const IntegerPolyhedron &t) { in expectEqual()
473 inline IntegerPolyhedron parsePolyAndMakeLocals(StringRef str, in parsePolyAndMakeLocals()
475 IntegerPolyhedron poly = parsePoly(str); in parsePolyAndMakeLocals()
518 IntegerPolyhedron tetrahedron = in TEST()
527 IntegerPolyhedron triangle = parsePoly("(x,y) : (y >= 0, " in TEST()
535 IntegerPolyhedron line = parsePoly("(x) : (x - 1000 == 0)"); in TEST()
555 IntegerPolyhedron setA(PresburgerSpace::getSetSpace(1)); in TEST()
838 void testComputeReprAtPoints(IntegerPolyhedron poly, in testComputeReprAtPoints()
[all …]
H A DUtils.h32 inline IntegerPolyhedron parsePoly(StringRef str) { in parsePoly()
34 FailureOr<IntegerPolyhedron> poly = parseIntegerSetToFAC(str, &context); in parsePoly()
80 IntegerPolyhedron domain = parsePoly(pair.first);
H A DSimplexTest.cpp506 IntegerPolyhedron univ = parsePoly("(x) : ()"); in TEST()
507 IntegerPolyhedron empty = parsePoly("(x) : (x + 0 >= 0, -x - 1 >= 0)"); in TEST()
508 IntegerPolyhedron s1 = parsePoly("(x) : ( x >= 0, -x + 4 >= 0)"); in TEST()
509 IntegerPolyhedron s2 = parsePoly("(x) : (x - 1 >= 0, -x + 3 >= 0)"); in TEST()
/llvm-project-15.0.7/mlir/include/mlir/Analysis/Presburger/
H A DIntegerRelation.h28 class IntegerPolyhedron; variable
59 IntegerPolyhedron, enumerator
526 IntegerPolyhedron getDomainSet() const;
529 IntegerPolyhedron getRangeSet() const;
541 void intersectRange(const IntegerPolyhedron &poly);
735 class IntegerPolyhedron : public IntegerRelation {
739 IntegerPolyhedron(unsigned numReservedInequalities, in IntegerPolyhedron() function
773 return IntegerPolyhedron(space); in getUniverse()
780 return cst->getKind() == Kind::IntegerPolyhedron; in classof()
784 std::unique_ptr<IntegerPolyhedron> clone() const;
[all …]
H A DPWMAFunction.h47 MultiAffineFunction(const IntegerPolyhedron &domain, const Matrix &output) in MultiAffineFunction()
61 const IntegerPolyhedron &getDomain() const { return domainSet; } in getDomain()
107 IntegerPolyhedron domainSet;
147 void addPiece(const IntegerPolyhedron &domain, const Matrix &output);
H A DSimplex.h585 const IntegerPolyhedron &symbolDomain, in SymbolicLexSimplex()
599 const IntegerPolyhedron &symbolDomain) in SymbolicLexSimplex()
607 const IntegerPolyhedron &symbolDomain) in SymbolicLexSimplex()
674 IntegerPolyhedron domainPoly;
H A DPresburgerRelation.h166 explicit PresburgerSet(const IntegerPolyhedron &disjunct);
/llvm-project-15.0.7/mlir/lib/Dialect/SCF/Utils/
H A DAffineCanonicalizationUtils.cpp42 IntegerPolyhedron::BoundType type, in alignAndAddBound()
117 auto boundType = isMin ? IntegerPolyhedron::UB : IntegerPolyhedron::LB; in canonicalizeMinMaxOp()
139 if (failed(constraints.addBound(IntegerPolyhedron::EQ, dimOpBound, in canonicalizeMinMaxOp()
165 if (failed(alignAndAddBound(newConstr, IntegerPolyhedron::EQ, i, in canonicalizeMinMaxOp()
192 if (auto bound = constraints.getConstantBound(IntegerPolyhedron::EQ, i)) in canonicalizeMinMaxOp()
224 constraints.addBound(IntegerPolyhedron::EQ, dimLb, *lbInt); in addLoopRangeConstraints()
226 constraints.addBound(IntegerPolyhedron::EQ, dimUb, *ubInt); in addLoopRangeConstraints()
255 return constraints.addBound(IntegerPolyhedron::UB, dimIv, map); in addLoopRangeConstraints()
328 constraints.addBound(IntegerPolyhedron::EQ, 1, *constUb); in rewritePeeledMinMaxOp()
330 constraints.addBound(IntegerPolyhedron::EQ, 2, *constStep); in rewritePeeledMinMaxOp()
/llvm-project-15.0.7/mlir/unittests/Dialect/Affine/Analysis/
H A DAffineStructuresParserTest.cpp26 static IntegerPolyhedron makeFACFromConstraints( in makeFACFromConstraints()
30 IntegerPolyhedron fac(ineqs.size(), eqs.size(), dims + syms + 1,
43 FailureOr<IntegerPolyhedron> fac; in TEST()
77 static bool parseAndCompare(StringRef str, const IntegerPolyhedron &ex, in parseAndCompare()
79 FailureOr<IntegerPolyhedron> fac = parseIntegerSetToFAC(str, context); in parseAndCompare()
H A DAffineStructuresParser.h28 FailureOr<presburger::IntegerPolyhedron>
H A DAffineStructuresParser.cpp16 FailureOr<IntegerPolyhedron>
/llvm-project-15.0.7/mlir/include/mlir/Dialect/Affine/Analysis/
H A DAffineStructures.h37 class FlatAffineValueConstraints : public presburger::IntegerPolyhedron {
46 : IntegerPolyhedron(numReservedInequalities, numReservedEqualities, in IntegerPolyhedron() function
70 FlatAffineValueConstraints(const IntegerPolyhedron &fac,
72 : IntegerPolyhedron(fac) { in IntegerPolyhedron() function
203 using IntegerPolyhedron::addBound;
322 using IntegerPolyhedron::removeVarRange;
350 using IntegerPolyhedron::projectOut;
373 using IntegerPolyhedron::unionBoundingBox;
536 IntegerPolyhedron &fac) in FlatAffineRelation()
/llvm-project-15.0.7/mlir/lib/Analysis/Presburger/
H A DPWMAFunction.cpp168 IntegerPolyhedron commonDomainMatching = commonFunc.getDomain(); in isEqualWhereDomainsOverlap()
209 void PWMAFunction::addPiece(const IntegerPolyhedron &domain, in addPiece()
216 addPiece(IntegerPolyhedron(newDom), output); in addPiece()
315 IntegerPolyhedron levelSet(/*numReservedInequalities=*/1, in tiebreakLex()
329 levelSet.addBound(IntegerPolyhedron::BoundType::UB, subExpr, -1); in tiebreakLex()
335 levelSet.addBound(IntegerPolyhedron::BoundType::LB, subExpr, 1); in tiebreakLex()
H A DIntegerRelation.cpp37 std::unique_ptr<IntegerPolyhedron> IntegerPolyhedron::clone() const { in clone()
38 return std::make_unique<IntegerPolyhedron>(*this); in clone()
2140 IntegerPolyhedron IntegerRelation::getDomainSet() const { in getDomainSet()
2151 return IntegerPolyhedron(std::move(copyRel)); in getDomainSet()
2154 IntegerPolyhedron IntegerRelation::getRangeSet() const { in getRangeSet()
2164 return IntegerPolyhedron(std::move(copyRel)); in getRangeSet()
2223 intersectRange(IntegerPolyhedron(copyRel)); in compose()
2262 unsigned IntegerPolyhedron::insertVar(VarKind kind, unsigned pos, in insertVar()
2268 IntegerPolyhedron
2269 IntegerPolyhedron::intersect(const IntegerPolyhedron &other) const { in intersect()
[all …]
H A DPresburgerRelation.cpp833 result.unionInPlace(IntegerPolyhedron::getUniverse(space)); in getUniverse()
841 PresburgerSet::PresburgerSet(const IntegerPolyhedron &disjunct) in PresburgerSet()
/llvm-project-15.0.7/mlir/lib/Dialect/Affine/Analysis/
H A DAffineStructures.cpp46 IntegerPolyhedron localVarCst;
153 : IntegerPolyhedron(set.getNumInequalities(), set.getNumEqualities(), in FlatAffineValueConstraints()
296 unsigned absolutePos = IntegerPolyhedron::insertVar(kind, pos, num); in insertVar()
312 unsigned absolutePos = IntegerPolyhedron::insertVar(kind, pos, num); in insertVar()
710 return IntegerPolyhedron::hasConsistentState() && in hasConsistentState()
716 IntegerPolyhedron::removeVarRange(kind, varStart, varLimit); in removeVarRange()
1348 IntegerPolyhedron::swapVar(posA, posB); in swapVar()
1373 IntegerPolyhedron::printSpace(os); in printSpace()
1407 IntegerPolyhedron::fourierMotzkinEliminate(pos, darkShadow, in fourierMotzkinEliminate()
1435 return IntegerPolyhedron::unionBoundingBox(otherCopy); in unionBoundingBox()
[all …]
H A DAffineAnalysis.cpp445 auto lbConst = dependenceDomain->getConstantBound(IntegerPolyhedron::LB, j); in computeDirectionVector()
448 auto ubConst = dependenceDomain->getConstantBound(IntegerPolyhedron::UB, j); in computeDirectionVector()
/llvm-project-15.0.7/mlir/lib/Dialect/Affine/Utils/
H A DUtils.cpp1768 fac.addBound(IntegerPolyhedron::LB, d, 0); in normalizeMemRefType()
1769 fac.addBound(IntegerPolyhedron::UB, d, shape[d] - 1); in normalizeMemRefType()
1791 auto ubConst = fac.getConstantBound(IntegerPolyhedron::UB, d); in normalizeMemRefType()
H A DLoopUtils.cpp2362 regionCst->addBound(IntegerPolyhedron::LB, d, 0); in getFullMemRefAsRegion()
2363 regionCst->addBound(IntegerPolyhedron::UB, d, dimSize - 1); in getFullMemRefAsRegion()
/llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Utils/
H A DUtils.cpp271 if (failed(constraints.addBound(IntegerPolyhedron::EQ, in getUpperBoundForIndex()
280 if (failed(constraints.addBound(IntegerPolyhedron::UB, in getUpperBoundForIndex()