MLIR  21.0.0git
Passes.h
Go to the documentation of this file.
1 //===- Passes.h - Mesh 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 #ifndef MLIR_DIALECT_MESH_TRANSFORMS_PASSES_H
10 #define MLIR_DIALECT_MESH_TRANSFORMS_PASSES_H
11 
12 #include "mlir/Pass/Pass.h"
13 
14 namespace mlir {
15 
16 namespace func {
17 class FuncOp;
18 }
19 
20 namespace mesh {
21 
22 /// This enum controls the traversal order for the sharding propagation.
23 enum class TraversalOrder {
24  /// Forward traversal.
25  Forward,
26  /// Backward traversal.
27  Backward,
28  /// Forward then backward traversal.
30  /// Backward then forward traversal.
32 };
33 
34 //===----------------------------------------------------------------------===//
35 // Passes
36 //===----------------------------------------------------------------------===//
37 
38 #define GEN_PASS_DECL
39 #include "mlir/Dialect/Mesh/Transforms/Passes.h.inc"
40 
41 //===----------------------------------------------------------------------===//
42 // Registration
43 //===----------------------------------------------------------------------===//
44 
45 #define GEN_PASS_REGISTRATION
46 #include "mlir/Dialect/Mesh/Transforms/Passes.h.inc"
47 
48 } // namespace mesh
49 } // namespace mlir
50 
51 #endif // MLIR_DIALECT_MESH_TRANSFORMS_PASSES_H
TraversalOrder
This enum controls the traversal order for the sharding propagation.
Definition: Passes.h:23
@ BackwardForward
Backward then forward traversal.
@ Forward
Forward traversal.
@ Backward
Backward traversal.
@ ForwardBackward
Forward then backward traversal.
Include the generated interface declarations.