LLZK 0.1.0
Veridise's ZK Language IR
|
Group together all implementation related to AffineMap type parameters. More...
Functions | |
ParseResult | parseDimAndSymbolList (OpAsmParser &parser, SmallVectorImpl< OpAsmParser::UnresolvedOperand > &mapOperands, IntegerAttr &numDims) |
void | printDimAndSymbolList (OpAsmPrinter &printer, Operation *op, OperandRange mapOperands, IntegerAttr numDims) |
ParseResult | parseMultiDimAndSymbolList (OpAsmParser &parser, SmallVectorImpl< SmallVector< OpAsmParser::UnresolvedOperand > > &multiMapOperands, DenseI32ArrayAttr &numDimsPerMap) |
void | printMultiDimAndSymbolList (OpAsmPrinter &printer, Operation *op, OperandRangeRange multiMapOperands, DenseI32ArrayAttr numDimsPerMap) |
ParseResult | parseAttrDictWithWarnings (OpAsmParser &parser, NamedAttrList &extraAttrs, OperationState &state) |
LogicalResult | verifySizesForMultiAffineOps (Operation *op, int32_t segmentSize, ArrayRef< int32_t > mapOpGroupSizes, OperandRangeRange mapOperands, ArrayRef< int32_t > numDimsPerMap) |
LogicalResult | verifyAffineMapInstantiations (OperandRangeRange mapOps, ArrayRef< int32_t > numDimsPerMap, ArrayRef< AffineMapAttr > mapAttrs, Operation *origin) |
mlir::ParseResult | parseDimAndSymbolList (mlir::OpAsmParser &parser, mlir::SmallVectorImpl< mlir::OpAsmParser::UnresolvedOperand > &mapOperands, mlir::IntegerAttr &numDims) |
Parses dimension and symbol list for an AffineMap instantiation. | |
void | printDimAndSymbolList (mlir::OpAsmPrinter &printer, mlir::Operation *op, mlir::OperandRange mapOperands, mlir::IntegerAttr numDims) |
Prints dimension and symbol list for an AffineMap instantiation. | |
mlir::ParseResult | parseMultiDimAndSymbolList (mlir::OpAsmParser &parser, mlir::SmallVectorImpl< mlir::SmallVector< mlir::OpAsmParser::UnresolvedOperand > > &multiMapOperands, mlir::DenseI32ArrayAttr &numDimsPerMap) |
Parses comma-separated list of multiple AffineMap instantiations. | |
void | printMultiDimAndSymbolList (mlir::OpAsmPrinter &printer, mlir::Operation *op, mlir::OperandRangeRange multiMapOperands, mlir::DenseI32ArrayAttr numDimsPerMap) |
Prints comma-separated list of multiple AffineMap instantiations. | |
mlir::ParseResult | parseAttrDictWithWarnings (mlir::OpAsmParser &parser, mlir::NamedAttrList &extraAttrs, mlir::OperationState &state) |
This custom parse/print AttrDictWithWarnings is necessary to directly check what 'attr-dict' is parsed from the input. | |
template<typename ConcreteOp> | |
void | printAttrDictWithWarnings (mlir::OpAsmPrinter &printer, ConcreteOp op, mlir::DictionaryAttr extraAttrs, typename ConcreteOp::Properties state) |
mlir::LogicalResult | verifySizesForMultiAffineOps (mlir::Operation *op, int32_t segmentSize, mlir::ArrayRef< int32_t > mapOpGroupSizes, mlir::OperandRangeRange mapOperands, mlir::ArrayRef< int32_t > numDimsPerMap) |
Implements the ODS trait with the same name. | |
mlir::LogicalResult | verifyAffineMapInstantiations (mlir::OperandRangeRange mapOps, mlir::ArrayRef< int32_t > numDimsPerMap, mlir::ArrayRef< mlir::AffineMapAttr > mapAttrs, mlir::Operation *origin) |
Produces errors if there is an inconsistency between the attributes/values that are used to support affine map instantiation in the op and the AffineMapAttr list collected from the type. | |
template<typename OpClass> | |
OpClass::Properties & | buildInstantiationAttrs (mlir::OpBuilder &odsBuilder, mlir::OperationState &odsState, mlir::ArrayRef< mlir::ValueRange > mapOperands, mlir::DenseI32ArrayAttr numDimsPerMap, int32_t firstSegmentSize=0) |
Utility for build() functions that initializes the operandSegmentSizes , mapOpGroupSizes , and numDimsPerMap attributes for an Op that performs affine map instantiations. | |
template<typename OpClass> | |
void | buildInstantiationAttrsNoSegments (mlir::OpBuilder &odsBuilder, mlir::OperationState &odsState, mlir::ArrayRef< mlir::ValueRange > mapOperands, mlir::DenseI32ArrayAttr numDimsPerMap) |
Utility for build() functions that initializes the mapOpGroupSizes , and numDimsPerMap attributes for an Op that performs affine map instantiations in the case were the op does not have two variadic sets of operands. | |
template<typename OpClass> | |
OpClass::Properties & | buildInstantiationAttrsEmpty (mlir::OpBuilder &odsBuilder, mlir::OperationState &odsState, int32_t firstSegmentSize=0) |
Utility for build() functions that initializes the operandSegmentSizes , mapOpGroupSizes , and numDimsPerMap attributes for an Op that supports affine map instantiations but in the case where there are none. | |
template<typename OpClass> | |
OpClass::Properties & | buildInstantiationAttrsEmptyNoSegments (mlir::OpBuilder &odsBuilder, mlir::OperationState &odsState) |
Utility for build() functions that initializes the mapOpGroupSizes , and numDimsPerMap attributes for an Op that supports affine map instantiations but in the case where there are none. | |
Group together all implementation related to AffineMap type parameters.
|
inline |
Utility for build() functions that initializes the operandSegmentSizes
, mapOpGroupSizes
, and numDimsPerMap
attributes for an Op that performs affine map instantiations.
Note: This function supports Ops with 2 ODS-defined operand segments with the second being the size of the mapOperands
segment and the first provided by the firstSegmentSize
parameter.
Definition at line 84 of file AffineHelper.h.
|
inline |
Utility for build() functions that initializes the operandSegmentSizes
, mapOpGroupSizes
, and numDimsPerMap
attributes for an Op that supports affine map instantiations but in the case where there are none.
Definition at line 133 of file AffineHelper.h.
|
inline |
Utility for build() functions that initializes the mapOpGroupSizes
, and numDimsPerMap
attributes for an Op that supports affine map instantiations but in the case where there are none.
Definition at line 149 of file AffineHelper.h.
|
inline |
Utility for build() functions that initializes the mapOpGroupSizes
, and numDimsPerMap
attributes for an Op that performs affine map instantiations in the case were the op does not have two variadic sets of operands.
Definition at line 111 of file AffineHelper.h.
mlir::ParseResult llzk::affineMapHelpers::parseAttrDictWithWarnings | ( | mlir::OpAsmParser & | parser, |
mlir::NamedAttrList & | extraAttrs, | ||
mlir::OperationState & | state ) |
This custom parse/print AttrDictWithWarnings is necessary to directly check what 'attr-dict' is parsed from the input.
Waiting until the verify()
function will not work because the generated parse()
function automatically computes and initializes the attributes.
ParseResult llzk::affineMapHelpers::parseAttrDictWithWarnings | ( | OpAsmParser & | parser, |
NamedAttrList & | extraAttrs, | ||
OperationState & | state ) |
Definition at line 93 of file AffineHelper.cpp.
mlir::ParseResult llzk::affineMapHelpers::parseDimAndSymbolList | ( | mlir::OpAsmParser & | parser, |
mlir::SmallVectorImpl< mlir::OpAsmParser::UnresolvedOperand > & | mapOperands, | ||
mlir::IntegerAttr & | numDims ) |
Parses dimension and symbol list for an AffineMap instantiation.
ParseResult llzk::affineMapHelpers::parseDimAndSymbolList | ( | OpAsmParser & | parser, |
SmallVectorImpl< OpAsmParser::UnresolvedOperand > & | mapOperands, | ||
IntegerAttr & | numDims ) |
Definition at line 45 of file AffineHelper.cpp.
mlir::ParseResult llzk::affineMapHelpers::parseMultiDimAndSymbolList | ( | mlir::OpAsmParser & | parser, |
mlir::SmallVectorImpl< mlir::SmallVector< mlir::OpAsmParser::UnresolvedOperand > > & | multiMapOperands, | ||
mlir::DenseI32ArrayAttr & | numDimsPerMap ) |
Parses comma-separated list of multiple AffineMap instantiations.
ParseResult llzk::affineMapHelpers::parseMultiDimAndSymbolList | ( | OpAsmParser & | parser, |
SmallVectorImpl< SmallVector< OpAsmParser::UnresolvedOperand > > & | multiMapOperands, | ||
DenseI32ArrayAttr & | numDimsPerMap ) |
Definition at line 61 of file AffineHelper.cpp.
|
inline |
Definition at line 57 of file AffineHelper.h.
void llzk::affineMapHelpers::printDimAndSymbolList | ( | mlir::OpAsmPrinter & | printer, |
mlir::Operation * | op, | ||
mlir::OperandRange | mapOperands, | ||
mlir::IntegerAttr | numDims ) |
Prints dimension and symbol list for an AffineMap instantiation.
void llzk::affineMapHelpers::printDimAndSymbolList | ( | OpAsmPrinter & | printer, |
Operation * | op, | ||
OperandRange | mapOperands, | ||
IntegerAttr | numDims ) |
Definition at line 55 of file AffineHelper.cpp.
void llzk::affineMapHelpers::printMultiDimAndSymbolList | ( | mlir::OpAsmPrinter & | printer, |
mlir::Operation * | op, | ||
mlir::OperandRangeRange | multiMapOperands, | ||
mlir::DenseI32ArrayAttr | numDimsPerMap ) |
Prints comma-separated list of multiple AffineMap instantiations.
void llzk::affineMapHelpers::printMultiDimAndSymbolList | ( | OpAsmPrinter & | printer, |
Operation * | op, | ||
OperandRangeRange | multiMapOperands, | ||
DenseI32ArrayAttr | numDimsPerMap ) |
Definition at line 81 of file AffineHelper.cpp.
mlir::LogicalResult llzk::affineMapHelpers::verifyAffineMapInstantiations | ( | mlir::OperandRangeRange | mapOps, |
mlir::ArrayRef< int32_t > | numDimsPerMap, | ||
mlir::ArrayRef< mlir::AffineMapAttr > | mapAttrs, | ||
mlir::Operation * | origin ) |
Produces errors if there is an inconsistency between the attributes/values that are used to support affine map instantiation in the op and the AffineMapAttr list collected from the type.
LogicalResult llzk::affineMapHelpers::verifyAffineMapInstantiations | ( | OperandRangeRange | mapOps, |
ArrayRef< int32_t > | numDimsPerMap, | ||
ArrayRef< AffineMapAttr > | mapAttrs, | ||
Operation * | origin ) |
Definition at line 184 of file AffineHelper.cpp.
mlir::LogicalResult llzk::affineMapHelpers::verifySizesForMultiAffineOps | ( | mlir::Operation * | op, |
int32_t | segmentSize, | ||
mlir::ArrayRef< int32_t > | mapOpGroupSizes, | ||
mlir::OperandRangeRange | mapOperands, | ||
mlir::ArrayRef< int32_t > | numDimsPerMap ) |
Implements the ODS trait with the same name.
Produces errors if there is an inconsistency in the various attributes/values that are used to support affine map instantiation in the op.
LogicalResult llzk::affineMapHelpers::verifySizesForMultiAffineOps | ( | Operation * | op, |
int32_t | segmentSize, | ||
ArrayRef< int32_t > | mapOpGroupSizes, | ||
OperandRangeRange | mapOperands, | ||
ArrayRef< int32_t > | numDimsPerMap ) |
Definition at line 127 of file AffineHelper.cpp.