[Mlir-commits] [mlir] [mlir][affine][Analysis] Add conservative bounds for semi-affine mods (PR #93576)

Kunwar Grover llvmlistbot at llvm.org
Wed May 29 00:31:35 PDT 2024


================
@@ -46,9 +46,15 @@ struct AffineExprFlattener : public SimpleAffineExprFlattener {
   // inequalities.
   IntegerPolyhedron localVarCst;
 
-  AffineExprFlattener(unsigned nDims, unsigned nSymbols)
+  AffineExprFlattener(unsigned nDims, unsigned nSymbols,
+                      bool addConservativeSemiAffineBounds = false)
       : SimpleAffineExprFlattener(nDims, nSymbols),
-        localVarCst(PresburgerSpace::getSetSpace(nDims, nSymbols)) {}
+        localVarCst(PresburgerSpace::getSetSpace(nDims, nSymbols)),
+        addConservativeSemiAffineBounds(addConservativeSemiAffineBounds) {}
+
+  bool hasUnhandledSemiAffineExpressions() const {
+    return unhandledSemiAffineExpressions;
+  }
----------------
Groverkss wrote:

the type of approximation you do for semi-affine expressions has no standard form. This should not be part of AffineExprFlattener.

https://github.com/llvm/llvm-project/pull/93576


More information about the Mlir-commits mailing list