MLIR-AIE
1.4.5.dev
include
aie
Dialect
AIEVec
Transforms
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
14
#include "
aie/Dialect/AIEVec/AIE1/IR/AIEVecAIE1Dialect.h
"
15
#include "
aie/Dialect/AIEVec/IR/AIEVecDialect.h
"
16
17
#include "mlir/Pass/Pass.h"
18
#include "mlir/Pass/PassOptions.h"
19
20
namespace
mlir
{
21
22
namespace
affine
{
23
class
AffineDialect;
24
}
25
26
namespace
func
{
27
class
FuncDialect;
28
}
// end namespace func
29
30
namespace
arith
{
31
class
ArithDialect;
32
}
// end namespace arith
33
34
namespace
memref
{
35
class
MemRefDialect;
36
}
// end namespace memref
37
38
namespace
scf
{
39
class
SCFDialect;
40
}
// end namespace scf
41
42
namespace
vector
{
43
class
VectorDialect;
44
}
// end namespace vector
45
46
}
// end namespace mlir
47
48
//===----------------------------------------------------------------------===//
49
// Registration
50
//===----------------------------------------------------------------------===//
51
52
namespace
mlir
{
53
namespace
func {
54
class
FuncOp;
55
}
// namespace func
56
}
// namespace mlir
57
58
namespace
xilinx
{
59
namespace
aievec
{
60
61
#define GEN_PASS_DECL
62
#include "aie/Dialect/AIEVec/Transforms/Passes.h.inc"
63
64
std::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
AIEVecAIE1Dialect.h
AIEVecDialect.h
mlir::affine
Definition
Passes.h:22
mlir::arith
Definition
Passes.h:30
mlir::func
Definition
Passes.h:23
mlir::memref
Definition
Passes.h:34
mlir::scf
Definition
Passes.h:38
mlir::vector
Definition
Passes.h:42
mlir
Definition
AIEVecToLLVM.h:16
xilinx::aievec
Definition
AIEVecToLLVM.h:23
xilinx::aievec::createSplitVectorLoadUpsChainsPass
std::unique_ptr<::mlir::Pass > createSplitVectorLoadUpsChainsPass()
Create a pass that splits vector.load + aievec.ups chains to reduce shuffle operations for AIE2p targ...
Definition
SplitVectorLoadUpsChains.cpp:389
xilinx
Definition
AIEToConfiguration.h:15
Generated by
1.15.0