xref: /llvm-project/mlir/include/mlir/Dialect/NVGPU/Transforms/Passes.td (revision a4f4d82c35b80b681687b545200456e79a82d9c2)
1//===-- Passes.td - NvGpu 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_NVGPU_PASSES_TD_
10#define MLIR_DIALECT_NVGPU_PASSES_TD_
11
12include "mlir/Pass/PassBase.td"
13
14def OptimizeSharedMemory : Pass<"nvgpu-optimize-shared-memory"> {
15  let summary = "Optimizes accesses to shard memory memrefs in order to reduce bank conflicts.";
16  let constructor = "mlir::nvgpu::createOptimizeSharedMemoryPass()";
17  let dependentDialects = [
18    "memref::MemRefDialect", "vector::VectorDialect"
19  ];
20}
21
22#endif // MLIR_DIALECT_NVGPU_PASSES_TD_
23