|
docc 0.8.3 (0d44999b)
C++ API Reference
|
Classes | |
| struct | DependenceDeltas |
| Represents the set of dependence distance vectors between two access patterns. More... | |
Functions | |
| bool | is_monotonic (const Expression expr, const Symbol sym, const Assumptions &assums) |
| Checks if an expression is monotonic with respect to a symbol. | |
| bool | intersects (const MultiExpression &expr1, const MultiExpression &expr2, const Symbol indvar, const Assumptions &assums1, const Assumptions &assums2) |
| Checks if the integer domain of two maps intersect. | |
| DependenceDeltas | dependence_deltas (const MultiExpression &expr1, const MultiExpression &expr2, const Symbol indvar, const Assumptions &assums1, const Assumptions &assums2) |
| Computes the dependence distance delta set between two access patterns. | |
| DependenceDeltas | dependence_deltas (const MultiExpression &expr1, const MultiExpression &expr2, const Symbol indvar, sdfg::symbolic::AssumptionsBounds &bounds1, sdfg::symbolic::AssumptionsBounds &bounds2) |
| Same as dependence_deltas, but reuses caller-supplied AssumptionsBounds. | |
| DependenceDeltas sdfg::symbolic::maps::dependence_deltas | ( | const MultiExpression & | expr1, |
| const MultiExpression & | expr2, | ||
| const Symbol | indvar, | ||
| const Assumptions & | assums1, | ||
| const Assumptions & | assums2 ) |
Computes the dependence distance delta set between two access patterns.
Returns a DependenceDeltas struct containing the full ISL delta set representing all possible iteration-distance vectors between aliasing pairs of the two expressions. The dimensions correspond to all non-constant symbols (induction variables).
If the accesses are provably disjoint (via monotonicity or ISL analysis), returns an empty delta set.
| DependenceDeltas sdfg::symbolic::maps::dependence_deltas | ( | const MultiExpression & | expr1, |
| const MultiExpression & | expr2, | ||
| const Symbol | indvar, | ||
| sdfg::symbolic::AssumptionsBounds & | bounds1, | ||
| sdfg::symbolic::AssumptionsBounds & | bounds2 ) |
Same as dependence_deltas, but reuses caller-supplied AssumptionsBounds.
| bool sdfg::symbolic::maps::intersects | ( | const MultiExpression & | expr1, |
| const MultiExpression & | expr2, | ||
| const Symbol | indvar, | ||
| const Assumptions & | assums1, | ||
| const Assumptions & | assums2 ) |
Checks if the integer domain of two maps intersect.
| expr1 | First multi-dimensional expression (e.g., memory access pattern) |
| expr2 | Second multi-dimensional expression |
| indvar | The induction variable that evolves |
| assums1 | Assumptions for the first expression including evolution maps |
| assums2 | Assumptions for the second expression including evolution maps |
| bool sdfg::symbolic::maps::is_monotonic | ( | const Expression | expr, |
| const Symbol | sym, | ||
| const Assumptions & | assums ) |
Checks if an expression is monotonic with respect to a symbol.
| expr | The expression to check |
| sym | The symbol to check monotonicity with respect to |
| assums | Assumptions about symbols including the evolution map |
An expression is monotonic if it consistently increases as the symbol evolves.