mirror of
https://github.com/zama-ai/concrete.git
synced 2026-04-17 03:00:54 -04:00
37 lines
1.3 KiB
C++
37 lines
1.3 KiB
C++
// Part of the Concrete Compiler Project, under the BSD3 License with Zama
|
|
// Exceptions. See
|
|
// https://github.com/zama-ai/concrete-compiler-internal/blob/main/LICENSE.txt
|
|
// for license information.
|
|
|
|
#ifndef CONCRETELANG_DIALECT_RT_ANALYSIS_AUTOPAR_H
|
|
#define CONCRETELANG_DIALECT_RT_ANALYSIS_AUTOPAR_H
|
|
|
|
#include <concretelang/Dialect/RT/IR/RTOps.h>
|
|
#include <functional>
|
|
#include <mlir/Pass/Pass.h>
|
|
|
|
namespace mlir {
|
|
|
|
class LLVMTypeConverter;
|
|
class BufferizeTypeConverter;
|
|
class RewritePatternSet;
|
|
|
|
namespace concretelang {
|
|
std::unique_ptr<mlir::Pass>
|
|
createBuildDataflowTaskGraphPass(bool debug = false);
|
|
std::unique_ptr<mlir::Pass> createLowerDataflowTasksPass(bool debug = false);
|
|
std::unique_ptr<mlir::Pass>
|
|
createBufferizeDataflowTaskOpsPass(bool debug = false);
|
|
std::unique_ptr<mlir::Pass> createFinalizeTaskCreationPass(bool debug = false);
|
|
std::unique_ptr<mlir::Pass> createStartStopPass(bool debug = false);
|
|
std::unique_ptr<mlir::Pass>
|
|
createFixupBufferDeallocationPass(bool debug = false);
|
|
void populateRTToLLVMConversionPatterns(mlir::LLVMTypeConverter &converter,
|
|
mlir::RewritePatternSet &patterns);
|
|
void populateRTBufferizePatterns(mlir::BufferizeTypeConverter &typeConverter,
|
|
mlir::RewritePatternSet &patterns);
|
|
} // namespace concretelang
|
|
} // namespace mlir
|
|
|
|
#endif
|