[all-commits] [llvm/llvm-project] d7d67e: [mlir][Transforms] Add a PadTilingInterface transf...

Nicolas Vasilache via All-commits all-commits at lists.llvm.org
Fri Jun 20 00:31:48 PDT 2025


  Branch: refs/heads/users/nico/revisit-pad
  Home:   https://github.com/llvm/llvm-project
  Commit: d7d67e9f9b5641f14894bd64540cef678771613d
      https://github.com/llvm/llvm-project/commit/d7d67e9f9b5641f14894bd64540cef678771613d
  Author: Nicolas Vasilache <nico.vasilache at amd.com>
  Date:   2025-06-20 (Fri, 20 Jun 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
    A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir

  Log Message:
  -----------
  [mlir][Transforms] Add a PadTilingInterface transformation and hook it up to the transform dialect

This revision revisits the padding transformation from first principles and prepares it to work more generally with TilingInterface.

Compared to structured.transform.pad it has the following differences:
  - no support for nofold, copy-back, transpose and hoisting: these have been carried by the padding op in the very early days of StructuredOps
    and have since then been separated out as independent transformations that compose.
  - no conflated static bounding box derivation attempts: pad_tiling_interface composes more naturally with or without tiling.
  - properly derives padding size on outputs where multiple dimensions contribute: this is not supported in structured.transform.pad
  - geared towards supporting TilingInterface once the proper control mechanisms are supported through a PadSizeComputationFunction (supports LinalgOp by default)

This will gradually replace structured.transform.pad as it is fleshed out and tested more comprehensively.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list