My Project
ConvertLoopToStandard.h
Go to the documentation of this file.
1 //===- ConvertLoopToStandard.h - Pass entrypoint ----------------*- C++ -*-===//
2 //
3 // Part of the MLIR 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_CONVERSION_LOOPTOSTANDARD_CONVERTLOOPTOSTANDARD_H_
10 #define MLIR_CONVERSION_LOOPTOSTANDARD_CONVERTLOOPTOSTANDARD_H_
11 
12 #include <memory>
13 #include <vector>
14 
15 namespace mlir {
16 struct LogicalResult;
17 class MLIRContext;
18 class Pass;
19 class RewritePattern;
20 
21 // Owning list of rewriting patterns.
22 class OwningRewritePatternList;
23 
27 void populateLoopToStdConversionPatterns(OwningRewritePatternList &patterns,
28  MLIRContext *ctx);
29 
31 std::unique_ptr<Pass> createLowerToCFGPass();
32 
33 } // namespace mlir
34 
35 #endif // MLIR_CONVERSION_LOOPTOSTANDARD_CONVERTLOOPTOSTANDARD_H_
Definition: InferTypeOpInterface.cpp:20
void populateLoopToStdConversionPatterns(OwningRewritePatternList &patterns, MLIRContext *ctx)
Definition: ConvertLoopToStandard.cpp:249
std::unique_ptr< Pass > createLowerToCFGPass()
Creates a pass to convert loop.for, loop.if and loop.terminator ops to CFG.
Definition: ConvertLoopToStandard.cpp:263