MLIR  16.0.0git
Classes | Namespaces | Enumerations | Functions
StructuredOpsUtils.h File Reference
#include "mlir/IR/AffineMap.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/Location.h"
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/StringRef.h"
+ Include dependency graph for StructuredOpsUtils.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mlir::StructuredGenerator< StructuredOpInterface >
 Helper StructuredGenerator class to manipulate and rewrite ops with StructuredOpInterface. More...
 
struct  mlir::StructuredGenerator< StructuredOpInterface >::IteratorType
 
struct  mlir::StructuredGenerator< StructuredOpInterface >::Par
 
struct  mlir::StructuredGenerator< StructuredOpInterface >::Red
 
struct  mlir::StructuredGenerator< StructuredOpInterface >::Win
 

Namespaces

 mlir
 Include the generated interface declarations.
 

Enumerations

enum  mlir::IteratorType { mlir::IteratorType::Parallel, mlir::IteratorType::Reduction }
 Typed representation for loop type strings. More...
 

Functions

bool mlir::isRowMajorMatmul (ArrayAttr indexingMaps)
 Tests whether the given maps describe a row major matmul. More...
 
bool mlir::isColumnMajorMatmul (ArrayAttr indexingMaps)
 Tests whether the given maps describe a column major matmul. More...
 
bool mlir::isRowMajorBatchMatmul (ArrayAttr indexingMaps)
 Tests whether the given maps describe a row major batch matmul. More...
 
constexpr StringRef mlir::getIndexingMapsAttrName ()
 Attribute name for the AffineArrayAttr which encodes the relationship between a structured op iterators' and its operands. More...
 
constexpr StringRef mlir::getIteratorTypesAttrName ()
 Attribute name for the StrArrayAttr which encodes the type of a structured op's iterators. More...
 
constexpr StringRef mlir::getDistributionTypesAttrName ()
 Attribute name for the StrArrayAttr which encodes the distribution type for linalg.tiled_loop. More...
 
constexpr StringRef mlir::getDocAttrName ()
 Attribute name for the StringAttr which encodes an optional documentation string of the structured op. More...
 
constexpr StringRef mlir::getLibraryCallAttrName ()
 Attribute name for the StrArrayAttr which encodes the external library function that implements the structured op. More...
 
constexpr StringRef mlir::getStridesAttrName ()
 Attribute name for the StrArrayAttr which encodes the value of strides. More...
 
constexpr StringRef mlir::getDilationsAttrName ()
 Attribute name for the StrArrayAttr which encodes the value of dilations. More...
 
constexpr StringRef mlir::getPaddingAttrName ()
 Attribute name for the StrArrayAttr which encodes the value of paddings. More...
 
constexpr StringRef mlir::getParallelIteratorTypeName ()
 Use to encode that a particular iterator type has parallel semantics. More...
 
bool mlir::isParallelIterator (Attribute attr)
 
constexpr StringRef mlir::getReductionIteratorTypeName ()
 Use to encode that a particular iterator type has reduction semantics. More...
 
bool mlir::isReductionIterator (Attribute attr)
 
constexpr StringRef mlir::getWindowIteratorTypeName ()
 Use to encode that a particular iterator type has window semantics. More...
 
bool mlir::isWindowIterator (Attribute attr)
 
ArrayRef< StringRef > mlir::getAllIteratorTypeNames ()
 Use to encode that a particular iterator type has window semantics. More...
 
unsigned mlir::getNumIterators (StringRef name, ArrayAttr iteratorTypes)
 Returns the iterator of a certain type. More...
 
unsigned mlir::getNumIterators (ArrayAttr iteratorTypes)
 
StringRef mlir::toString (IteratorType t)