diff options
author | Alex Zinenko <zinenko@google.com> | 2021-11-02 14:15:25 +0100 |
---|---|---|
committer | Alex Zinenko <zinenko@google.com> | 2021-11-03 10:48:01 +0100 |
commit | fc7594cc4aa5e652fe61f278a13e865141797245 (patch) | |
tree | ba836f2296c9f0eb7cb9bff84efcda27b490d463 /mlir/test/CAPI/ir.c | |
parent | f78fe0b7b83842929262f1f05e308efe82fc6ffa (diff) | |
download | llvm-fc7594cc4aa5e652fe61f278a13e865141797245.zip llvm-fc7594cc4aa5e652fe61f278a13e865141797245.tar.gz llvm-fc7594cc4aa5e652fe61f278a13e865141797245.tar.bz2 |
[mlir][python] improve usability of Python affine construct bindings
- Provide the operator overloads for constructing (semi-)affine expressions in
Python by combining existing expressions with constants.
- Make AffineExpr, AffineMap and IntegerSet hashable in Python.
- Expose the AffineExpr composition functionality.
Reviewed By: gysit, aoyal
Differential Revision: https://reviews.llvm.org/D113010
Diffstat (limited to 'mlir/test/CAPI/ir.c')
-rw-r--r-- | mlir/test/CAPI/ir.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mlir/test/CAPI/ir.c b/mlir/test/CAPI/ir.c index ef55537..1056f65 100644 --- a/mlir/test/CAPI/ir.c +++ b/mlir/test/CAPI/ir.c @@ -1393,6 +1393,13 @@ int affineMapFromExprs(MlirContext ctx) { if (!mlirAffineExprEqual(mlirAffineMapGetResult(map, 1), affineSymbolExpr)) return 3; + MlirAffineExpr affineDim2Expr = mlirAffineDimExprGet(ctx, 1); + MlirAffineExpr composed = mlirAffineExprCompose(affineDim2Expr, map); + // CHECK: s1 + mlirAffineExprDump(composed); + if (!mlirAffineExprEqual(composed, affineSymbolExpr)) + return 4; + return 0; } |