MLIR  20.0.0git
MemRefToSPIRVPass.h
Go to the documentation of this file.
1 //===- MemRefToSPIRVPass.h - MemRef to SPIR-V Passes ------------*- C++ -*-===//
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 // Provides passes to convert MemRef dialect to SPIR-V dialect.
10 //
11 //===----------------------------------------------------------------------===//
12 
13 #ifndef MLIR_CONVERSION_MEMREFTOSPIRV_MEMREFTOSPIRVPASS_H
14 #define MLIR_CONVERSION_MEMREFTOSPIRV_MEMREFTOSPIRVPASS_H
15 
17 #include "mlir/Pass/Pass.h"
18 
19 namespace mlir {
20 class ModuleOp;
21 
22 #define GEN_PASS_DECL_MAPMEMREFSTORAGECLASS
23 #define GEN_PASS_DECL_CONVERTMEMREFTOSPIRV
24 #include "mlir/Conversion/Passes.h.inc"
25 
26 /// Creates a pass to map numeric MemRef memory spaces to symbolic SPIR-V
27 /// storage classes. The mapping is read from the command-line option.
28 std::unique_ptr<OperationPass<>> createMapMemRefStorageClassPass();
29 
30 /// Creates a pass to convert MemRef ops to SPIR-V ops.
31 std::unique_ptr<OperationPass<>> createConvertMemRefToSPIRVPass();
32 
33 } // namespace mlir
34 
35 #endif // MLIR_CONVERSION_MEMREFTOSPIRV_MEMREFTOSPIRVPASS_H
Include the generated interface declarations.
std::unique_ptr< OperationPass<> > createMapMemRefStorageClassPass()
Creates a pass to map numeric MemRef memory spaces to symbolic SPIR-V storage classes.
std::unique_ptr< OperationPass<> > createConvertMemRefToSPIRVPass()
Creates a pass to convert MemRef ops to SPIR-V ops.