MLIR-AIE 1.4.5.dev
Passes.h
Go to the documentation of this file.
1//===- Passes.h - AIE Vector Passes -----------------------------*- C++ -*-===//
2//
3// Copyright (C) 2022 Xilinx, Inc.
4// Copyright (C) 2023 Advanced Micro Devices, Inc.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8// Register all the AIE vectorization passes
9//===----------------------------------------------------------------------===//
10
11#ifndef AIE_DIALECT_AIEVEC_TRANSFORMS_PASSES_H
12#define AIE_DIALECT_AIEVEC_TRANSFORMS_PASSES_H
13
16
17#include "mlir/Pass/Pass.h"
18#include "mlir/Pass/PassOptions.h"
19
20namespace mlir {
21
22namespace affine {
23class AffineDialect;
24}
25
26namespace func {
27class FuncDialect;
28} // end namespace func
29
30namespace arith {
31class ArithDialect;
32} // end namespace arith
33
34namespace memref {
35class MemRefDialect;
36} // end namespace memref
37
38namespace scf {
39class SCFDialect;
40} // end namespace scf
41
42namespace vector {
43class VectorDialect;
44} // end namespace vector
45
46} // end namespace mlir
47
48//===----------------------------------------------------------------------===//
49// Registration
50//===----------------------------------------------------------------------===//
51
52namespace mlir {
53namespace func {
54class FuncOp;
55} // namespace func
56} // namespace mlir
57
58namespace xilinx {
59namespace aievec {
60
61#define GEN_PASS_DECL
62#include "aie/Dialect/AIEVec/Transforms/Passes.h.inc"
63
64std::unique_ptr<mlir::Pass> createSplitVectorLoadUpsChainsPass();
65
66/// Generate the code for registering passes.
67#define GEN_PASS_REGISTRATION
68#include "aie/Dialect/AIEVec/Transforms/Passes.h.inc"
69
70} // end namespace aievec
71} // end namespace xilinx
72
73#endif // AIE_DIALECT_AIEVEC_TRANSFORMS_PASSES_H
std::unique_ptr<::mlir::Pass > createSplitVectorLoadUpsChainsPass()
Create a pass that splits vector.load + aievec.ups chains to reduce shuffle operations for AIE2p targ...