[all-commits] [llvm/llvm-project] 94d608: [mlir] move PDL-related transform ops into an exte...

ftynse via All-commits all-commits at lists.llvm.org
Wed May 24 05:25:21 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 94d608d410267db693aa85070263e2b4ef0be913
      https://github.com/llvm/llvm-project/commit/94d608d410267db693aa85070263e2b4ef0be913
  Author: Alex Zinenko <zinenko at google.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/CMakeLists.txt
    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/TransformInterfaces.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    A mlir/include/mlir/Dialect/Transform/PDLExtension/CMakeLists.txt
    A mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtension.h
    A mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.h
    A mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.td
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/Transform/CMakeLists.txt
    M mlir/lib/Dialect/Transform/IR/CMakeLists.txt
    M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
    M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    A mlir/lib/Dialect/Transform/PDLExtension/CMakeLists.txt
    A mlir/lib/Dialect/Transform/PDLExtension/PDLExtension.cpp
    A mlir/lib/Dialect/Transform/PDLExtension/PDLExtensionOps.cpp
    M mlir/python/CMakeLists.txt
    A mlir/python/mlir/dialects/TransformPDLExtensionOps.td
    M mlir/python/mlir/dialects/_transform_ops_ext.py
    A mlir/python/mlir/dialects/_transform_pdl_extension_ops_ext.py
    A mlir/python/mlir/dialects/transform/pdl.py
    M mlir/test/Dialect/Transform/test-interpreter.mlir
    A mlir/test/Dialect/Transform/test-pdl-extension.mlir
    M mlir/test/lib/Dialect/Transform/CMakeLists.txt
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/python/dialects/transform.py
    M mlir/test/python/dialects/transform_structured_ext.py
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel

  Log Message:
  -----------
  [mlir] move PDL-related transform ops into an extension

The initial bring-up of the Transform dialect relied on PDL to provide
the default handle type (`!pdl.operation`) and the matching capability.
Both are now provided natively by the Transform dialect removing the
reason to have a hard dependency on the PDL dialect and its interpreter.
Move PDL-related transform operations into a separate extension.

This requires us to introduce a dialect state extension mechanism into
the Transform dialect so it no longer needs to know about PDL constraint
functions that may be injected by extensions similarly to operations and
types. This mechanism will be reused to connect pattern application
drivers and the Transform dialect.

This completes the restructuring of the Transform dialect to remove
overrilance on PDL.

Note to downstreams: flow that are using `!pdl.operation` with Transform
dialect operations will now require `transform::PDLExtension` to be
applied to the transform dialect in order to provide the transform
handle type interface for `!pdl.operation`.

Reviewed By: springerm

Differential Revision: https://reviews.llvm.org/D151104




More information about the All-commits mailing list