1d064c480SAlex Zinenko //===- TransformDialect.cpp - Transform Dialect Definition ----------------===// 2d064c480SAlex Zinenko // 3d064c480SAlex Zinenko // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4d064c480SAlex Zinenko // See https://llvm.org/LICENSE.txt for license information. 5d064c480SAlex Zinenko // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6d064c480SAlex Zinenko // 7d064c480SAlex Zinenko //===----------------------------------------------------------------------===// 8d064c480SAlex Zinenko 9d064c480SAlex Zinenko #include "mlir/Dialect/Transform/IR/TransformDialect.h" 10*eda6f907SRiver Riddle #include "mlir/Dialect/PDL/IR/PDL.h" 11*eda6f907SRiver Riddle #include "mlir/Dialect/PDLInterp/IR/PDLInterp.h" 120eb403adSAlex Zinenko #include "mlir/Dialect/Transform/IR/TransformOps.h" 13d064c480SAlex Zinenko 14d064c480SAlex Zinenko using namespace mlir; 15d064c480SAlex Zinenko 160eb403adSAlex Zinenko #include "mlir/Dialect/Transform/IR/TransformDialect.cpp.inc" 170eb403adSAlex Zinenko initialize()180eb403adSAlex Zinenkovoid transform::TransformDialect::initialize() { 1940a8bd63SAlex Zinenko // Using the checked version to enable the same assertions as for the ops from 2040a8bd63SAlex Zinenko // extensions. 2140a8bd63SAlex Zinenko addOperationsChecked< 220eb403adSAlex Zinenko #define GET_OP_LIST 230eb403adSAlex Zinenko #include "mlir/Dialect/Transform/IR/TransformOps.cpp.inc" 240eb403adSAlex Zinenko >(); 250eb403adSAlex Zinenko } 2630f22429SAlex Zinenko mergeInPDLMatchHooks(llvm::StringMap<PDLConstraintFunction> && constraintFns)2730f22429SAlex Zinenkovoid transform::TransformDialect::mergeInPDLMatchHooks( 2830f22429SAlex Zinenko llvm::StringMap<PDLConstraintFunction> &&constraintFns) { 2930f22429SAlex Zinenko // Steal the constraint functions form the given map. 3030f22429SAlex Zinenko for (auto &it : constraintFns) 3130f22429SAlex Zinenko pdlMatchHooks.registerConstraintFunction(it.getKey(), std::move(it.second)); 3230f22429SAlex Zinenko } 3330f22429SAlex Zinenko 3430f22429SAlex Zinenko const llvm::StringMap<PDLConstraintFunction> & getPDLConstraintHooks() const3530f22429SAlex Zinenkotransform::TransformDialect::getPDLConstraintHooks() const { 3630f22429SAlex Zinenko return pdlMatchHooks.getConstraintFunctions(); 3730f22429SAlex Zinenko } 38