[Mlir-commits] [mlir] [mlir][AMDGPU] Add canonicalization pattern to pack scales for ScaledMFMAOp (PR #155951)
Jakub Kuderski
llvmlistbot at llvm.org
Thu Sep 18 08:28:40 PDT 2025
================
@@ -631,6 +635,139 @@ LogicalResult TransposeLoadOp::verify() {
return success();
}
+//===----------------------------------------------------------------------===//
+// ScaledMFMAOp
+//===----------------------------------------------------------------------===//
+
+namespace {
+/// Check if the scales input is used in other scaled mfma's while they exist.
+/// If theyre unused then pack the scales.
+struct PackScales final : OpRewritePattern<ScaledMFMAOp> {
+ using OpRewritePattern::OpRewritePattern;
+
+ LogicalResult matchAndRewrite(ScaledMFMAOp op,
+ PatternRewriter &rewriter) const override {
+ Location loc = op.getLoc();
+ auto setOpsel = [&](unsigned idx, int64_t val) {
----------------
kuhar wrote:
```suggestion
auto setOpsel = [op](unsigned idx, int64_t val) {
```
https://github.com/llvm/llvm-project/pull/155951
More information about the Mlir-commits
mailing list