summaryrefslogtreecommitdiff
path: root/mlir/docs
diff options
context:
space:
mode:
authorMatthias Springer <me@m-sp.org>2023-03-23 09:25:01 +0100
committerMatthias Springer <me@m-sp.org>2023-03-23 09:38:12 +0100
commit5b0055a4ae8d27bf2a8db903eed22ff642fc27c3 (patch)
tree8dfc69bb4344b5d268eeb1f51bd0b1157a8a14c2 /mlir/docs
parentb08d35f826a6b7696a02f1d811da7a2f951e74a1 (diff)
downloadllvm-5b0055a4ae8d27bf2a8db903eed22ff642fc27c3.tar.gz
[mlir][Analysis][NFC] Split FlatAffineValueConstraints into multiple classes
The new class hierarchy is as follows: * `IntegerRelation` (no change) * `IntegerPolyhedron` (no change) * `FlatLinearConstraints`: provides an AffineExpr-based API * `FlatLinearValueConstraints`: stores an additional mapping of non-local vars to SSA values * `FlatAffineValueConstraints`: provides additional helper functions for Affine dialect ops * `FlatAffineRelation` (no change) `FlatConstraints` and `FlatValueConstraints` are moved from `MLIRAffineAnalysis` to `MLIRAnalysis` and can be used without depending on the Affine dialect. This change is in preparation of D145681, which adds an MLIR interface that depends on `FlatConstraints` (and cannot depend on the Affine dialect or any other dialect). Differential Revision: https://reviews.llvm.org/D146201
Diffstat (limited to 'mlir/docs')
-rw-r--r--mlir/docs/Rationale/UsageOfConst.md6
1 files changed, 3 insertions, 3 deletions
diff --git a/mlir/docs/Rationale/UsageOfConst.md b/mlir/docs/Rationale/UsageOfConst.md
index 102b948a0eac..7a54a4e6de7f 100644
--- a/mlir/docs/Rationale/UsageOfConst.md
+++ b/mlir/docs/Rationale/UsageOfConst.md
@@ -235,9 +235,9 @@ if (auto *dimOp = inst->dyn_cast<DimOp>()) {
It is much better to eliminate them entirely, and just pass around `DimOp`
directly. For example, instead of:
-```C++
+```c++
LogicalResult mlir::getIndexSet(MutableArrayRef<OpPointer<AffineForOp>> forOps,
- FlatAffineConstraints *domain) {
+ FlatAffineValueConstraints *domain) {
```
@@ -245,7 +245,7 @@ It is a lot nicer to just have:
```c++
LogicalResult mlir::getIndexSet(MutableArrayRef<AffineForOp> forOps,
- FlatAffineConstraints *domain) {
+ FlatAffineValueConstraints *domain) {
```
Particularly since all of the `FooOp` classes are already semantically a smart