//===- TestPassStateExtensionCommunication.cpp ----------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines a test pass that showcases how communication can be // conducted between a regular mlir pass and transform ops through the // transform state extension stateInitializer and stateExporter mechanism. // //===----------------------------------------------------------------------===// #include "TestTransformStateExtension.h" #include "mlir/Dialect/Transform/Interfaces/TransformInterfaces.h" #include "mlir/IR/BuiltinOps.h" #include "mlir/Pass/Pass.h" usingnamespacellvm; usingnamespacemlir; usingnamespacemlir::test; namespace { template <typename Derived> class OpPassWrapper : public PassWrapper<Derived, OperationPass<>> { … }; struct TestPassStateExtensionCommunication : public PassWrapper<TestPassStateExtensionCommunication, OperationPass<ModuleOp>> { … }; } // namespace namespace mlir { namespace test { /// Registers the test pass here. void registerTestPassStateExtensionCommunication() { … } } // namespace test } // namespace mlir