TT-MLIR
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | List of all members
mlir::tt::ttir::GenericOp Class Reference
Inheritance diagram for mlir::tt::ttir::GenericOp:

Public Types

using Adaptor = GenericOpAdaptor
 
template<typename RangeT >
using GenericAdaptor = GenericOpGenericAdaptor< RangeT >
 
using FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > >
 
using Properties = FoldAdaptor::Properties
 

Public Member Functions

static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames ()
 
::mlir::StringAttr getGridAttrName ()
 
::mlir::StringAttr getIndexingMapsAttrName ()
 
::mlir::StringAttr getIteratorTypesAttrName ()
 
::mlir::StringAttr getThreadsAttrName ()
 
::mlir::StringAttr getOperandSegmentSizesAttrName ()
 
std::pair< unsigned, unsigned > getODSOperandIndexAndLength (unsigned index)
 
::mlir::Operation::operand_range getODSOperands (unsigned index)
 
::mlir::Operation::operand_range getInputs ()
 
::mlir::Operation::operand_range getOutputs ()
 
::mlir::MutableOperandRange getInputsMutable ()
 
::mlir::MutableOperandRange getOutputsMutable ()
 
std::pair< unsigned, unsigned > getODSResultIndexAndLength (unsigned index)
 
::mlir::Operation::result_range getODSResults (unsigned index)
 
::mlir::Operation::result_range getResults ()
 
::mlir::MutableArrayRef<::mlir::Region > getRegions ()
 
void writeProperties (::mlir::DialectBytecodeWriter &writer)
 
::mlir::tt::GridAttr getGridAttr ()
 
::mlir::tt::GridAttr getGrid ()
 
::mlir::ArrayAttr getIndexingMapsAttr ()
 
::mlir::ArrayAttr getIndexingMaps ()
 
::mlir::ArrayAttr getIteratorTypesAttr ()
 
::mlir::ArrayAttr getIteratorTypes ()
 
::mlir::ArrayAttr getThreadsAttr ()
 
::mlir::ArrayAttr getThreads ()
 
void setGridAttr (::mlir::tt::GridAttr attr)
 
void setIndexingMapsAttr (::mlir::ArrayAttr attr)
 
void setIteratorTypesAttr (::mlir::ArrayAttr attr)
 
void setThreadsAttr (::mlir::ArrayAttr attr)
 
::llvm::LogicalResult verifyInvariantsImpl ()
 
::llvm::LogicalResult verifyInvariants ()
 
::llvm::LogicalResult verify ()
 
bool bufferizesToMemoryRead (::mlir::OpOperand &opOperand, const ::mlir::bufferization::AnalysisState &state)
 
bool bufferizesToMemoryWrite (::mlir::OpOperand &opOperand, const ::mlir::bufferization::AnalysisState &state)
 
::mlir::bufferization::AliasingValueList getAliasingValues (::mlir::OpOperand &opOperand, const ::mlir::bufferization::AnalysisState &state)
 
::llvm::LogicalResult bufferize (::mlir::RewriterBase &rewriter, const ::mlir::bufferization::BufferizationOptions &options)
 
::mlir::FailureOr<::mlir::BaseMemRefType > getBufferType (::mlir::Value value, const ::mlir::bufferization::BufferizationOptions &options, ::llvm::SmallVector<::mlir::Value > &invocationStack)
 
void getEffects (::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect >> &effects)
 
void getAsmBlockArgumentNames (::mlir::Region &region, ::mlir::OpAsmSetValueNameFn setNameFn)
 
void getAsmBlockNames (::mlir::OpAsmSetBlockNameFn setNameFn)
 
void print (::mlir::OpAsmPrinter &_odsPrinter)
 
MutableOperandRange getDpsInitsMutable ()
 
unsigned getNumLoops ()
 
unsigned getNumDims ()
 
SmallVector< int64_t > getLoopBounds ()
 
SmallVector< AffineMap > getIndexingMapsValue ()
 
SmallVector< IteratorTypegetIteratorTypesValue ()
 
SmallVector< SmallVector< int64_t > > getOperandGridShapes ()
 
ThreadType getRegionThreadType (unsigned regionIndex)
 
bool isAffineMapForm ()
 
bool isLoweredLoopForm ()
 
bool isExternalSymbolForm ()
 

Static Public Member Functions

::mlir::StringAttr getGridAttrName (::mlir::OperationName name)
 
::mlir::StringAttr getIndexingMapsAttrName (::mlir::OperationName name)
 
::mlir::StringAttr getIteratorTypesAttrName (::mlir::OperationName name)
 
::mlir::StringAttr getThreadsAttrName (::mlir::OperationName name)
 
::mlir::StringAttr getOperandSegmentSizesAttrName (::mlir::OperationName name)
 
static constexpr ::llvm::StringLiteral getOperationName ()
 
::llvm::LogicalResult setPropertiesFromAttr (Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
 
::mlir::Attribute getPropertiesAsAttr (::mlir::MLIRContext *ctx, const Properties &prop)
 
static llvm::hash_code computePropertiesHash (const Properties &prop)
 
static std::optional< mlir::Attribute > getInherentAttr (::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name)
 
static void setInherentAttr (Properties &prop, llvm::StringRef name, mlir::Attribute value)
 
static void populateInherentAttrs (::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs)
 
::llvm::LogicalResult verifyInherentAttrs (::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
 
::llvm::LogicalResult readProperties (::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ValueRange inputs, ValueRange outputs, ArrayAttr indexingMaps, ArrayAttr iteratorTypes)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ValueRange inputs, ValueRange outputs, ArrayAttr indexingMaps, ArrayAttr iteratorTypes, llvm::function_ref< void(OpBuilder &, Location, ValueRange)> computeRegionBuilder)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange results, ::mlir::ValueRange inputs, ::mlir::ValueRange outputs, ::mlir::tt::GridAttr grid, ::mlir::ArrayAttr indexing_maps, ::mlir::ArrayAttr iterator_types, ::mlir::ArrayAttr threads, unsigned regionsCount)
 
static void build (::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute > attributes, unsigned numRegions)
 
::mlir::ParseResult parse (::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
 

Private Member Functions

::mlir::StringAttr getAttributeNameForIndex (unsigned index)
 

Static Private Member Functions

::mlir::StringAttr getAttributeNameForIndex (::mlir::OperationName name, unsigned index)
 

Member Typedef Documentation

◆ Adaptor

◆ FoldAdaptor

using mlir::tt::ttir::GenericOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute> >

◆ GenericAdaptor

template<typename RangeT >
using mlir::tt::ttir::GenericOp::GenericAdaptor = GenericOpGenericAdaptor<RangeT>

◆ Properties

Member Function Documentation

◆ bufferize()

::llvm::LogicalResult mlir::tt::ttir::GenericOp::bufferize ( ::mlir::RewriterBase &  rewriter,
const ::mlir::bufferization::BufferizationOptions &  options 
)

◆ bufferizesToMemoryRead()

bool mlir::tt::ttir::GenericOp::bufferizesToMemoryRead ( ::mlir::OpOperand &  opOperand,
const ::mlir::bufferization::AnalysisState &  state 
)

◆ bufferizesToMemoryWrite()

bool mlir::tt::ttir::GenericOp::bufferizesToMemoryWrite ( ::mlir::OpOperand &  opOperand,
const ::mlir::bufferization::AnalysisState &  state 
)

◆ build() [1/4]

void mlir::tt::ttir::GenericOp::build ( ::mlir::OpBuilder &  ,
::mlir::OperationState &  odsState,
::mlir::TypeRange  resultTypes,
::mlir::ValueRange  operands,
::llvm::ArrayRef<::mlir::NamedAttribute >  attributes,
unsigned  numRegions 
)
static

◆ build() [2/4]

void mlir::tt::ttir::GenericOp::build ( ::mlir::OpBuilder &  odsBuilder,
::mlir::OperationState &  odsState,
::mlir::TypeRange  results,
::mlir::ValueRange  inputs,
::mlir::ValueRange  outputs,
::mlir::tt::GridAttr  grid,
::mlir::ArrayAttr  indexing_maps,
::mlir::ArrayAttr  iterator_types,
::mlir::ArrayAttr  threads,
unsigned  regionsCount 
)
static

◆ build() [3/4]

void mlir::tt::ttir::GenericOp::build ( ::mlir::OpBuilder &  odsBuilder,
::mlir::OperationState &  odsState,
ValueRange  inputs,
ValueRange  outputs,
ArrayAttr  indexingMaps,
ArrayAttr  iteratorTypes 
)
static

◆ build() [4/4]

void mlir::tt::ttir::GenericOp::build ( ::mlir::OpBuilder &  odsBuilder,
::mlir::OperationState &  odsState,
ValueRange  inputs,
ValueRange  outputs,
ArrayAttr  indexingMaps,
ArrayAttr  iteratorTypes,
llvm::function_ref< void(OpBuilder &, Location, ValueRange)>  computeRegionBuilder 
)
static

◆ computePropertiesHash()

llvm::hash_code mlir::tt::ttir::GenericOp::computePropertiesHash ( const Properties prop)
static

◆ getAliasingValues()

bufferization::AliasingValueList mlir::tt::ttir::GenericOp::getAliasingValues ( ::mlir::OpOperand &  opOperand,
const ::mlir::bufferization::AnalysisState &  state 
)

◆ getAsmBlockArgumentNames()

void mlir::tt::ttir::GenericOp::getAsmBlockArgumentNames ( ::mlir::Region &  region,
::mlir::OpAsmSetValueNameFn  setNameFn 
)

◆ getAsmBlockNames()

void mlir::tt::ttir::GenericOp::getAsmBlockNames ( ::mlir::OpAsmSetBlockNameFn  setNameFn)

◆ getAttributeNameForIndex() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getAttributeNameForIndex ( ::mlir::OperationName  name,
unsigned  index 
)
inlinestaticprivate

◆ getAttributeNameForIndex() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getAttributeNameForIndex ( unsigned  index)
inlineprivate

◆ getAttributeNames()

static ::llvm::ArrayRef<::llvm::StringRef> mlir::tt::ttir::GenericOp::getAttributeNames ( )
inline

◆ getBufferType()

FailureOr< mlir::BaseMemRefType > mlir::tt::ttir::GenericOp::getBufferType ( ::mlir::Value  value,
const ::mlir::bufferization::BufferizationOptions &  options,
::llvm::SmallVector<::mlir::Value > &  invocationStack 
)

◆ getDpsInitsMutable()

MutableOperandRange mlir::tt::ttir::GenericOp::getDpsInitsMutable ( )
inline

◆ getEffects()

void mlir::tt::ttir::GenericOp::getEffects ( ::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect >> &  effects)

◆ getGrid()

mlir::tt::GridAttr mlir::tt::ttir::GenericOp::getGrid ( )

◆ getGridAttr()

::mlir::tt::GridAttr mlir::tt::ttir::GenericOp::getGridAttr ( )
inline

◆ getGridAttrName() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getGridAttrName ( )
inline

◆ getGridAttrName() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getGridAttrName ( ::mlir::OperationName  name)
inlinestatic

◆ getIndexingMaps()

mlir::ArrayAttr mlir::tt::ttir::GenericOp::getIndexingMaps ( )

◆ getIndexingMapsAttr()

::mlir::ArrayAttr mlir::tt::ttir::GenericOp::getIndexingMapsAttr ( )
inline

◆ getIndexingMapsAttrName() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getIndexingMapsAttrName ( )
inline

◆ getIndexingMapsAttrName() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getIndexingMapsAttrName ( ::mlir::OperationName  name)
inlinestatic

◆ getIndexingMapsValue()

SmallVector<AffineMap> mlir::tt::ttir::GenericOp::getIndexingMapsValue ( )

◆ getInherentAttr()

std::optional< mlir::Attribute > mlir::tt::ttir::GenericOp::getInherentAttr ( ::mlir::MLIRContext *  ctx,
const Properties prop,
llvm::StringRef  name 
)
static

◆ getInputs()

::mlir::Operation::operand_range mlir::tt::ttir::GenericOp::getInputs ( )
inline

◆ getInputsMutable()

mlir::MutableOperandRange mlir::tt::ttir::GenericOp::getInputsMutable ( )

◆ getIteratorTypes()

mlir::ArrayAttr mlir::tt::ttir::GenericOp::getIteratorTypes ( )

◆ getIteratorTypesAttr()

::mlir::ArrayAttr mlir::tt::ttir::GenericOp::getIteratorTypesAttr ( )
inline

◆ getIteratorTypesAttrName() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getIteratorTypesAttrName ( )
inline

◆ getIteratorTypesAttrName() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getIteratorTypesAttrName ( ::mlir::OperationName  name)
inlinestatic

◆ getIteratorTypesValue()

SmallVector<IteratorType> mlir::tt::ttir::GenericOp::getIteratorTypesValue ( )

◆ getLoopBounds()

SmallVector<int64_t> mlir::tt::ttir::GenericOp::getLoopBounds ( )

◆ getNumDims()

unsigned mlir::tt::ttir::GenericOp::getNumDims ( )

◆ getNumLoops()

unsigned mlir::tt::ttir::GenericOp::getNumLoops ( )

◆ getODSOperandIndexAndLength()

std::pair< unsigned, unsigned > mlir::tt::ttir::GenericOp::getODSOperandIndexAndLength ( unsigned  index)

◆ getODSOperands()

::mlir::Operation::operand_range mlir::tt::ttir::GenericOp::getODSOperands ( unsigned  index)
inline

◆ getODSResultIndexAndLength()

std::pair< unsigned, unsigned > mlir::tt::ttir::GenericOp::getODSResultIndexAndLength ( unsigned  index)

◆ getODSResults()

::mlir::Operation::result_range mlir::tt::ttir::GenericOp::getODSResults ( unsigned  index)
inline

◆ getOperandGridShapes()

SmallVector<SmallVector<int64_t> > mlir::tt::ttir::GenericOp::getOperandGridShapes ( )

◆ getOperandSegmentSizesAttrName() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getOperandSegmentSizesAttrName ( )
inline

◆ getOperandSegmentSizesAttrName() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getOperandSegmentSizesAttrName ( ::mlir::OperationName  name)
inlinestatic

◆ getOperationName()

static constexpr ::llvm::StringLiteral mlir::tt::ttir::GenericOp::getOperationName ( )
inlinestatic

◆ getOutputs()

::mlir::Operation::operand_range mlir::tt::ttir::GenericOp::getOutputs ( )
inline

◆ getOutputsMutable()

mlir::MutableOperandRange mlir::tt::ttir::GenericOp::getOutputsMutable ( )

◆ getPropertiesAsAttr()

mlir::Attribute mlir::tt::ttir::GenericOp::getPropertiesAsAttr ( ::mlir::MLIRContext *  ctx,
const Properties prop 
)
static

◆ getRegions()

::mlir::MutableArrayRef<::mlir::Region> mlir::tt::ttir::GenericOp::getRegions ( )
inline

◆ getRegionThreadType()

ThreadType mlir::tt::ttir::GenericOp::getRegionThreadType ( unsigned  regionIndex)
inline

◆ getResults()

::mlir::Operation::result_range mlir::tt::ttir::GenericOp::getResults ( )
inline

◆ getThreads()

mlir::ArrayAttr mlir::tt::ttir::GenericOp::getThreads ( )

◆ getThreadsAttr()

::mlir::ArrayAttr mlir::tt::ttir::GenericOp::getThreadsAttr ( )
inline

◆ getThreadsAttrName() [1/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getThreadsAttrName ( )
inline

◆ getThreadsAttrName() [2/2]

::mlir::StringAttr mlir::tt::ttir::GenericOp::getThreadsAttrName ( ::mlir::OperationName  name)
inlinestatic

◆ isAffineMapForm()

bool mlir::tt::ttir::GenericOp::isAffineMapForm ( )
inline

◆ isExternalSymbolForm()

bool mlir::tt::ttir::GenericOp::isExternalSymbolForm ( )
inline

◆ isLoweredLoopForm()

bool mlir::tt::ttir::GenericOp::isLoweredLoopForm ( )
inline

◆ parse()

mlir::ParseResult mlir::tt::ttir::GenericOp::parse ( ::mlir::OpAsmParser &  parser,
::mlir::OperationState &  result 
)
static

◆ populateInherentAttrs()

void mlir::tt::ttir::GenericOp::populateInherentAttrs ( ::mlir::MLIRContext *  ctx,
const Properties prop,
::mlir::NamedAttrList &  attrs 
)
static

◆ print()

void mlir::tt::ttir::GenericOp::print ( ::mlir::OpAsmPrinter &  _odsPrinter)

◆ readProperties()

llvm::LogicalResult mlir::tt::ttir::GenericOp::readProperties ( ::mlir::DialectBytecodeReader &  reader,
::mlir::OperationState &  state 
)
static

◆ setGridAttr()

void mlir::tt::ttir::GenericOp::setGridAttr ( ::mlir::tt::GridAttr  attr)
inline

◆ setIndexingMapsAttr()

void mlir::tt::ttir::GenericOp::setIndexingMapsAttr ( ::mlir::ArrayAttr  attr)
inline

◆ setInherentAttr()

void mlir::tt::ttir::GenericOp::setInherentAttr ( Properties prop,
llvm::StringRef  name,
mlir::Attribute  value 
)
static

◆ setIteratorTypesAttr()

void mlir::tt::ttir::GenericOp::setIteratorTypesAttr ( ::mlir::ArrayAttr  attr)
inline

◆ setPropertiesFromAttr()

llvm::LogicalResult mlir::tt::ttir::GenericOp::setPropertiesFromAttr ( Properties prop,
::mlir::Attribute  attr,
::llvm::function_ref<::mlir::InFlightDiagnostic()>  emitError 
)
static

◆ setThreadsAttr()

void mlir::tt::ttir::GenericOp::setThreadsAttr ( ::mlir::ArrayAttr  attr)
inline

◆ verify()

::llvm::LogicalResult mlir::tt::ttir::GenericOp::verify ( )

◆ verifyInherentAttrs()

llvm::LogicalResult mlir::tt::ttir::GenericOp::verifyInherentAttrs ( ::mlir::OperationName  opName,
::mlir::NamedAttrList &  attrs,
llvm::function_ref<::mlir::InFlightDiagnostic()>  emitError 
)
static

◆ verifyInvariants()

llvm::LogicalResult mlir::tt::ttir::GenericOp::verifyInvariants ( )

◆ verifyInvariantsImpl()

llvm::LogicalResult mlir::tt::ttir::GenericOp::verifyInvariantsImpl ( )

◆ writeProperties()

void mlir::tt::ttir::GenericOp::writeProperties ( ::mlir::DialectBytecodeWriter &  writer)

The documentation for this class was generated from the following files: