picceler
A compiled DSL for image processing, built on MLIR
Loading...
Searching...
No Matches
passes.h
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4
5#include "mlir/Pass/Pass.h"
6
7#include "mlir/Dialect/Func/Transforms/FuncConversions.h"
8#include "mlir/Pass/Pass.h"
9#include "mlir/Transforms/DialectConversion.h"
10
11namespace picceler {
12
18struct GenericTypeUpdatePattern : public mlir::ConversionPattern {
19 GenericTypeUpdatePattern(mlir::TypeConverter &converter, mlir::MLIRContext *context)
20 : mlir::ConversionPattern(converter, MatchAnyOpTypeTag(), 1, context) {}
21
22 mlir::LogicalResult matchAndRewrite(mlir::Operation *op, mlir::ArrayRef<mlir::Value> operands,
23 mlir::ConversionPatternRewriter &rewriter) const override;
24};
25
31std::unique_ptr<mlir::Pass> createPiccelerKernelToMemrefPass();
32std::unique_ptr<mlir::Pass> createPiccelerOpsToFuncCallsPass();
33std::unique_ptr<mlir::Pass> createPiccelerToAffinePass();
34std::unique_ptr<mlir::Pass> createPiccelerToLLVMIRPass();
35std::unique_ptr<mlir::Pass> createPiccelerFiltersToConvPass();
36std::unique_ptr<mlir::Pass> createPiccelerAddProfilingPass();
37
39
40#define GEN_PASS_DECL
41#define GEN_PASS_REGISTRATION
42#include "piccelerPasses.h.inc"
43
44} // namespace picceler
Definition ast.h:11
std::unique_ptr< mlir::Pass > createPiccelerToAffinePass()
Definition picceler_to_affine_pass.cpp:636
std::unique_ptr< mlir::Pass > createPiccelerFiltersToConvPass()
Definition picceler_filters_to_conv_pass.cpp:437
std::unique_ptr< mlir::Pass > createPiccelerAddProfilingPass()
Definition picceler_add_profiling_pass.cpp:83
std::unique_ptr< mlir::Pass > createPiccelerToLLVMIRPass()
Definition picceler_to_llvm_ir_pass.cpp:129
std::unique_ptr< mlir::Pass > createPiccelerOpsToFuncCallsPass()
Definition picceler_ops_to_func_calls_pass.cpp:377
std::unique_ptr< mlir::Pass > createPiccelerKernelToMemrefPass()
Definition picceler_kernel_to_memref_pass.cpp:102
mlir::LogicalResult matchAndRewrite(mlir::Operation *op, mlir::ArrayRef< mlir::Value > operands, mlir::ConversionPatternRewriter &rewriter) const override
Definition generic_type_rewriter.cpp:5
GenericTypeUpdatePattern(mlir::TypeConverter &converter, mlir::MLIRContext *context)
Definition passes.h:19