1//===-- Passes.td - ShapeOps pass definition file ----------*- tablegen -*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8 9#ifndef MLIR_DIALECT_SHAPE_TRANSFORMS_PASSES 10#define MLIR_DIALECT_SHAPE_TRANSFORMS_PASSES 11 12include "mlir/Pass/PassBase.td" 13 14def RemoveShapeConstraints : FunctionPass<"remove-shape-constraints"> { 15 let summary = "Replace all cstr_ ops with a true witness"; 16 let constructor = "mlir::createRemoveShapeConstraintsPass()"; 17} 18 19def ShapeToShapeLowering : FunctionPass<"shape-to-shape-lowering"> { 20 let summary = "Legalize Shape dialect to be convertible to Standard"; 21 let constructor = "mlir::createShapeToShapeLowering()"; 22} 23 24// TODO: Generalize this to allow any type conversions desired. 25def ShapeBufferize : FunctionPass<"shape-bufferize"> { 26 let summary = "Bufferize the shape dialect."; 27 let constructor = "mlir::createShapeBufferizePass()"; 28} 29#endif // MLIR_DIALECT_SHAPE_TRANSFORMS_PASSES 30