[Mlir-commits] [mlir] [mlir][affine] Select shared-input reductions for unroll-and-jam (PR #226270)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Sep 24 11:51:23 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mlir-affine
Author: hanbeom (ParkHanbum)
<details>
<summary>Changes</summary>
Add the opt-in select-shared-input-reductions option to select perfect nests with constant bounds and floating-point multiply-add reductions where exactly one input access is invariant in the outer loop.
Match the reduction through SSA definitions. Require disjoint accumulator coordinates across outer iterations and proven NoAlias between the accumulator and both inputs. Support function arguments and views while allowing the read-only inputs to alias each other.
Require the outer trip count to match the unroll-jam factor. Preserve default pass behavior and leave unsupported nests unchanged.
Add tests for selection, aliasing, unsupported patterns, multiple candidates, and option handling.
Fixes #<!-- -->225396
Assisted-by: Codex
---
Full diff: https://github.com/llvm/llvm-project/pull/226270.diff
3 Files Affected:
- (modified) mlir/include/mlir/Dialect/Affine/Transforms/Passes.td (+18)
- (modified) mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt (+1)
- (modified) mlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp (+122-2)
``````````diff
The server is unavailable at this time. Please wait a few minutes before you try again.
``````````
</details>
https://github.com/llvm/llvm-project/pull/226270
More information about the Mlir-commits
mailing list