From 78f6b3780ce2d4b53020693c0b1d7906c992f6bc Mon Sep 17 00:00:00 2001 From: Frank Laub Date: Wed, 19 Aug 2020 18:56:39 +0000 Subject: [PATCH] Fix bug reported during upstream CR --- mlir/lib/Dialect/Affine/IR/AffineOps.cpp | 2 +- mlir/test/Dialect/Affine/affine-fold.mlir | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mlir/lib/Dialect/Affine/IR/AffineOps.cpp b/mlir/lib/Dialect/Affine/IR/AffineOps.cpp index b24e5510a38c6..79eefdb823075 100644 --- a/mlir/lib/Dialect/Affine/IR/AffineOps.cpp +++ b/mlir/lib/Dialect/Affine/IR/AffineOps.cpp @@ -2712,7 +2712,7 @@ struct SimplifyAffineParallel : public OpRewritePattern { lbExprs.push_back(zeroExpr); // Adjust the upper bound expression: 'range / step' - auto ubExpr = ranges.getResult(i).floorDiv(step); + auto ubExpr = ranges.getResult(i).ceilDiv(step); ubExprs.push_back(ubExpr); // Adjust the corresponding IV: 'lb + i * step' diff --git a/mlir/test/Dialect/Affine/affine-fold.mlir b/mlir/test/Dialect/Affine/affine-fold.mlir index c58802fe9ea70..cfd6c6a1f921b 100644 --- a/mlir/test/Dialect/Affine/affine-fold.mlir +++ b/mlir/test/Dialect/Affine/affine-fold.mlir @@ -52,7 +52,7 @@ func @affine_parallel_partial_range1() { func @simplify_parallel() { %cst = constant 1.0 : f32 %0 = alloc() : memref<2x4xf32> - // CHECK: affine.parallel (%[[i:.*]], %[[j:.*]]) = (0, 0) to (3, 2) { + // CHECK: affine.parallel (%[[i:.*]], %[[j:.*]]) = (0, 0) to (4, 2) { affine.parallel (%i, %j) = (0, 1) to (10, 5) step (3, 2) { // CHECK: affine.parallel (%[[k:.*]]) = (0) to (%[[j]] * 2 - %[[i]] * 3 + 1) { affine.parallel (%k) = (%i) to (%j) {