Go to the source code of this file.
|
| mlir |
| Include the generated interface declarations.
|
|
|
template<typename ValueRange > |
static SmallVector< IntegerAttr > | integerConstants (ValueRange values) |
|
static SmallVector< Value > | delinearize (ImplicitLocOpBuilder &b, Value index, ArrayRef< Value > tripCounts) |
|
static ParallelComputeFunctionType | getParallelComputeFunctionType (scf::ParallelOp op, PatternRewriter &rewriter) |
|
static ParallelComputeFunction | createParallelComputeFunction (scf::ParallelOp op, const ParallelComputeFunctionBounds &bounds, unsigned numBlockAlignedInnerLoops, PatternRewriter &rewriter) |
|
static func::FuncOp | createAsyncDispatchFunction (ParallelComputeFunction &computeFunc, PatternRewriter &rewriter) |
|
static void | doAsyncDispatch (ImplicitLocOpBuilder &b, PatternRewriter &rewriter, ParallelComputeFunction ¶llelComputeFunction, scf::ParallelOp op, Value blockSize, Value blockCount, const SmallVector< Value > &tripCounts) |
|
static void | doSequentialDispatch (ImplicitLocOpBuilder &b, PatternRewriter &rewriter, ParallelComputeFunction ¶llelComputeFunction, scf::ParallelOp op, Value blockSize, Value blockCount, const SmallVector< Value > &tripCounts) |
|
◆ DEBUG_TYPE
#define DEBUG_TYPE "async-parallel-for" |
◆ GEN_PASS_DEF_ASYNCPARALLELFOR
#define GEN_PASS_DEF_ASYNCPARALLELFOR |
◆ createAsyncDispatchFunction()
static func::FuncOp createAsyncDispatchFunction |
( |
ParallelComputeFunction & |
computeFunc, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
Definition at line 465 of file AsyncParallelFor.cpp.
References mlir::ImplicitLocOpBuilder::create(), mlir::OpBuilder::create(), mlir::OpBuilder::createBlock(), mlir::get(), mlir::Block::getArgument(), mlir::Block::getArguments(), mlir::Builder::getContext(), mlir::Builder::getFunctionType(), mlir::Builder::getIndexType(), mlir::OpBuilder::getListener(), mlir::SymbolTable::insert(), mlir::OpBuilder::Listener::notifyOperationInserted(), mlir::OpBuilder::setInsertionPointAfter(), and mlir::OpBuilder::setInsertionPointToEnd().
◆ createParallelComputeFunction()
static ParallelComputeFunction createParallelComputeFunction |
( |
scf::ParallelOp |
op, |
|
|
const ParallelComputeFunctionBounds & |
bounds, |
|
|
unsigned |
numBlockAlignedInnerLoops, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ delinearize()
◆ doAsyncDispatch()
◆ doSequentialDispatch()
◆ getParallelComputeFunctionType()
static ParallelComputeFunctionType getParallelComputeFunctionType |
( |
scf::ParallelOp |
op, |
|
|
PatternRewriter & |
rewriter |
|
) |
| |
|
static |
◆ integerConstants()
template<typename ValueRange >