MLIR  15.0.0git
Passes.h
Go to the documentation of this file.
1 //===- Passes.h - Pass Entrypoints ------------------------------*- 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 #ifndef MLIR_DIALECT_ARITHMETIC_TRANSFORMS_PASSES_H_
10 #define MLIR_DIALECT_ARITHMETIC_TRANSFORMS_PASSES_H_
11 
12 #include "mlir/Pass/Pass.h"
13 
14 namespace mlir {
15 namespace arith {
16 
17 /// Create a pass to bufferize Arithmetic ops.
18 std::unique_ptr<Pass> createArithmeticBufferizePass();
19 
20 /// Create a pass to bufferize arith.constant ops.
21 std::unique_ptr<Pass> createConstantBufferizePass(uint64_t alignment = 0);
22 
23 /// Add patterns to expand Arithmetic ops for LLVM lowering.
24 void populateArithmeticExpandOpsPatterns(RewritePatternSet &patterns);
25 
26 /// Create a pass to legalize Arithmetic ops for LLVM lowering.
27 std::unique_ptr<Pass> createArithmeticExpandOpsPass();
28 
29 //===----------------------------------------------------------------------===//
30 // Registration
31 //===----------------------------------------------------------------------===//
32 
33 /// Generate the code for registering passes.
34 #define GEN_PASS_REGISTRATION
35 #include "mlir/Dialect/Arithmetic/Transforms/Passes.h.inc"
36 
37 } // namespace arith
38 } // namespace mlir
39 
40 #endif // MLIR_DIALECT_ARITHMETIC_TRANSFORMS_PASSES_H_
Include the generated interface declarations.
std::unique_ptr< Pass > createArithmeticBufferizePass()
Create a pass to bufferize Arithmetic ops.
Definition: Bufferize.cpp:56
void populateArithmeticExpandOpsPatterns(RewritePatternSet &patterns)
Add patterns to expand Arithmetic ops for LLVM lowering.
Definition: ExpandOps.cpp:221
std::unique_ptr< Pass > createConstantBufferizePass(uint64_t alignment=0)
Create a pass to bufferize arith.constant ops.
Definition: Bufferize.cpp:61
std::unique_ptr< Pass > createArithmeticExpandOpsPass()
Create a pass to legalize Arithmetic ops for LLVM lowering.
Definition: ExpandOps.cpp:238