mirror of
https://github.com/zama-ai/concrete.git
synced 2026-02-09 12:15:09 -05:00
31 lines
1.1 KiB
TableGen
31 lines
1.1 KiB
TableGen
#ifndef CONCRETELANG_FHELINALG_TILING_PASS
|
|
#define CONCRETELANG_FHELINALG_TILING_PASS
|
|
|
|
include "mlir/Pass/PassBase.td"
|
|
|
|
def CollapseParallelLoops : Pass<"collapse-parallel-loops", "mlir::ModuleOp"> {
|
|
let summary =
|
|
"Coalesce nested scf.for operations that are marked with "
|
|
"the custom attribute parallel = true into a single scf.for "
|
|
"loop which can subsequently be converted to scf.parallel.";
|
|
let constructor = "mlir::concretelang::createCollapseParallelLoops()";
|
|
let dependentDialects = ["mlir::scf::SCFDialect"];
|
|
}
|
|
|
|
def ForLoopToParallel : Pass<"for-loop-to-parallel", "mlir::ModuleOp"> {
|
|
let summary =
|
|
"Transform scf.for marked with the custom attribute parallel = true loop "
|
|
"to scf.parallel after the bufferization";
|
|
let constructor = "mlir::concretelang::createForLoopToParallel()";
|
|
let dependentDialects = ["mlir::scf::SCFDialect"];
|
|
}
|
|
|
|
def Batching : Pass<"concrete", "mlir::ModuleOp"> {
|
|
let summary =
|
|
"Hoists operation for which a batched version exists out of loops applying "
|
|
"the operation to values stored in a tensor.";
|
|
let constructor = "mlir::concretelang::createBatchingPass()";
|
|
}
|
|
|
|
#endif
|