My Project
Classes | Namespaces | Functions
Utils.h File Reference
#include "mlir/Dialect/Linalg/IR/LinalgOps.h"
#include "mlir/Dialect/LoopOps/LoopOps.h"
#include "mlir/Dialect/StandardOps/Ops.h"
#include "mlir/EDSC/Helpers.h"
#include "llvm/ADT/SetVector.h"
Include dependency graph for Utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mlir::edsc::LoopRangeBuilder
 
class  mlir::edsc::LoopNestRangeBuilder
 
class  mlir::edsc::GenericLoopNestRangeBuilder< LoopTy >
 
struct  mlir::linalg::FusionInfo
 
struct  mlir::linalg::TiledLinalgOp
 
struct  mlir::linalg::PromotionInfo
 

Namespaces

 mlir
 
 mlir::edsc
 
 mlir::linalg
 

Functions

bool mlir::linalg::isProducerLastWriteOfView (const LinalgDependenceGraph &graph, LinalgOp consumer, Value consumedView, LinalgOp producer)
 
bool mlir::linalg::isFusableInto (const LinalgDependenceGraph &graph, LinalgOp consumer, Value consumedView, LinalgOp producer)
 
Optional< FusionInfomlir::linalg::fuseProducerOf (OpBuilder &b, LinalgOp consumer, unsigned consumerIdx, const LinalgDependenceGraph &graph, OperationFolder *folder=nullptr)
 
template<typename ConcreteOp >
SmallVector< Value, 8 > mlir::linalg::getViewSizes (ConcreteOp linalgOp)
 
SmallVector< Value, 4 > mlir::linalg::applyMapToValues (OpBuilder &b, Location loc, AffineMap map, ArrayRef< Value > values, OperationFolder *folder=nullptr)
 
Optional< TiledLinalgOpmlir::linalg::tileLinalgOp (OpBuilder &b, LinalgOp op, ArrayRef< Value > tileSizes, ArrayRef< unsigned > permutation={}, OperationFolder *folder=nullptr)
 
Optional< TiledLinalgOpmlir::linalg::tileLinalgOp (OpBuilder &b, LinalgOp op, ArrayRef< int64_t > tileSizes, ArrayRef< unsigned > permutation={}, OperationFolder *folder=nullptr)
 
template<typename... Args>
Optional< TiledLinalgOp > mlir::linalg::tileLinalgOperation (OpBuilder &b, Operation *op, Args... args)
 
SmallVector< PromotionInfo, 8 > mlir::linalg::promoteSubViews (OpBuilder &b, Location loc, ArrayRef< Value > subViews, bool dynamicBuffers=false, OperationFolder *folder=nullptr)
 
SmallVector< Value, 4 > mlir::linalg::getAssumedNonViewOperands (LinalgOp linalgOp)
 
template<typename T , unsigned N>
void mlir::linalg::applyPermutationToVector (SmallVector< T, N > &inVec, ArrayRef< unsigned > permutation)
 
LinalgOp mlir::linalg::promoteSubViewOperands (OpBuilder &b, LinalgOp op, llvm::SetVector< Value > subViews, bool dynamicBuffers=false, OperationFolder *folder=nullptr)