[Mlir-commits] [mlir] [mlir] computeSliceParameters: Fix offset when m(0) != 0 (PR #122492)
Matthias Gehre
llvmlistbot at llvm.org
Mon Jan 13 01:00:32 PST 2025
================
@@ -596,8 +596,17 @@ computeSliceParameters(OpBuilder &builder, Location loc, Value valueToTile,
auto m = map.getSubMap({r});
LLVM_DEBUG(llvm::dbgs() << "computeSliceParameters: submap: " << m << "\n");
IRRewriter rewriter(builder);
- OpFoldResult offset = makeComposedFoldedAffineApply(rewriter, loc, m, lbs);
+ // The offset of the slice is map(lbs) - map(0).
+ SmallVector<Attribute> zeros(lbs.size(), rewriter.getIndexAttr(0));
+ SmallVector<Attribute> mAtZero;
+ auto res = m.constantFold(zeros, mAtZero);
+ assert(succeeded(res));
----------------
mgehre-amd wrote:
I also added `[[maybe_unused]]` to `res` to avoid errors in non-debug configs.
https://github.com/llvm/llvm-project/pull/122492
More information about the Mlir-commits
mailing list