[all-commits] [llvm/llvm-project] 3aeb33: [mlir] transform dialect; add pre/post-condition type

ftynse via All-commits all-commits at lists.llvm.org
Thu Apr 16 14:26:03 PDT 2026


  Branch: refs/heads/users/ftynse/transform-normalized-type
  Home:   https://github.com/llvm/llvm-project
  Commit: 3aeb33d039096a624d46058c81d6295726a439c9
      https://github.com/llvm/llvm-project/commit/3aeb33d039096a624d46058c81d6295726a439c9
  Author: Alex Zinenko <git at ozinenko.com>
  Date:   2026-04-16 (Thu, 16 Apr 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
    M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.td
    M mlir/include/mlir/Dialect/Transform/Interfaces/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
    M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.td
    M mlir/lib/Dialect/Transform/IR/TransformAttrs.cpp
    M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
    M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
    A mlir/test/Dialect/Transform/normal-forms.mlir
    M mlir/test/Dialect/Transform/ops-invalid.mlir
    M mlir/test/lib/Dialect/Transform/CMakeLists.txt
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.h
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td

  Log Message:
  -----------
  [mlir] transform dialect; add pre/post-condition type

Add a transform dialect type denoting additional invariants on payload
IR usable for pre/post-conditions of a transformation. The invariants
are defined as a list of attributes in the type parameter, where the
attribute implements the interface for invariant-checking. This allows
clients to factor out, explicify and deduplicate precondition
verification logic.

This required adding support for Transform dialect extensions injecting
attributes into the dialects similarly to how they already do this for
operations and types.

Co-authored-by: Tim Gymnich <tim at gymni.ch>
Co-authored-by: Martin Lücke <martin.luecke at amd.com>
Assisted-by: Claude Opus 4.3 / Cursor



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