|
LLZK 2.1.1
An open-source IR for Zero Knowledge (ZK) circuits
|
Public Types | |
| using | Adaptor = IncludeOpAdaptor |
| template<typename RangeT> | |
| using | GenericAdaptor = IncludeOpGenericAdaptor<RangeT> |
| using | FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>> |
| using | Properties = FoldAdaptor::Properties |
Public Member Functions | |
| static ::llvm::ArrayRef<::llvm::StringRef > | getAttributeNames () |
| ::mlir::StringAttr | getCalleeAttrName () |
| ::mlir::StringAttr | getMapOpGroupSizesAttrName () |
| ::mlir::StringAttr | getNumDimsPerMapAttrName () |
| ::mlir::StringAttr | getTemplateParamsAttrName () |
| ::mlir::StringAttr | getOperandSegmentSizesAttrName () |
| std::pair< unsigned, unsigned > | getODSOperandIndexAndLength (unsigned index) |
| ::mlir::Operation::operand_range | getODSOperands (unsigned index) |
| ::mlir::Operation::operand_range | getArgOperands () |
| ::mlir::OperandRangeRange | getMapOperands () |
| ::mlir::MutableOperandRange | getArgOperandsMutable () |
| ::mlir::MutableOperandRangeRange | getMapOperandsMutable () |
| std::pair< unsigned, unsigned > | getODSResultIndexAndLength (unsigned index) |
| ::mlir::Operation::result_range | getODSResults (unsigned index) |
| void | writeProperties (::mlir::DialectBytecodeWriter &writer) |
| ::mlir::SymbolRefAttr | getCalleeAttr () |
| ::mlir::SymbolRefAttr | getCallee () |
| ::mlir::ArrayAttr | getTemplateParamsAttr () |
| ::std::optional< ::mlir::ArrayAttr > | getTemplateParams () |
| ::mlir::DenseI32ArrayAttr | getNumDimsPerMapAttr () |
| ::llvm::ArrayRef< int32_t > | getNumDimsPerMap () |
| ::mlir::DenseI32ArrayAttr | getMapOpGroupSizesAttr () |
| ::llvm::ArrayRef< int32_t > | getMapOpGroupSizes () |
| void | setCalleeAttr (::mlir::SymbolRefAttr attr) |
| void | setTemplateParamsAttr (::mlir::ArrayAttr attr) |
| void | setNumDimsPerMapAttr (::mlir::DenseI32ArrayAttr attr) |
| void | setNumDimsPerMap (::llvm::ArrayRef< int32_t > attrValue) |
| void | setMapOpGroupSizesAttr (::mlir::DenseI32ArrayAttr attr) |
| void | setMapOpGroupSizes (::llvm::ArrayRef< int32_t > attrValue) |
| ::mlir::Attribute | removeTemplateParamsAttr () |
| ::llvm::LogicalResult | verifyInvariantsImpl () |
| ::llvm::LogicalResult | verifyInvariants () |
| ::mlir::CallInterfaceCallable | getCallableForCallee () |
| Return the callee of this operation. | |
| void | setCalleeFromCallable (::mlir::CallInterfaceCallable callee) |
| Set the callee for this operation. | |
| ::llvm::LogicalResult | verifySymbolUses (::mlir::SymbolTableCollection &symbolTable) |
| void | print (::mlir::OpAsmPrinter &_odsPrinter) |
| ::mlir::Operation * | resolveCallableInTable (::mlir::SymbolTableCollection *symbolTable) |
| Required by CallOpInterface. | |
| ::mlir::Operation * | resolveCallable () |
| Required by CallOpInterface. | |
| ::mlir::FunctionType | getTypeSignature () |
| Return the FunctionType inferred from the arg operands of this CallOp. | |
| ::mlir::FailureOr< UnificationMap > | unifyTypeSignature (::mlir::FunctionType other) |
| Attempt type unfication between the inferred FunctionType from this CallOp (as LHS) and the given FunctionType (as RHS). | |
| bool | contractTargetsStruct () |
| Return true iff the contract targets a struct type. | |
| ::mlir::Value | getSelfValue () |
| Return the "self" value (i.e. | |
| ::mlir::FailureOr<::llzk::SymbolLookupResult<::llzk::verif::ContractOp > > | getCalleeTarget (::mlir::SymbolTableCollection &tables) |
| Resolve and return the target Contract for this CallOp. | |
| static ::llvm::SmallVector<::mlir::ValueRange > | toVectorOfValueRange (::mlir::OperandRangeRange) |
| Allocate consecutive storage of the ValueRange instances in the parameter so it can be passed to the builders as an ArrayRef<ValueRange>. | |
| ::mlir::LogicalResult | verifyTemplateParamCompatibility (::mlir::Attribute paramFromCallOp, ::llzk::polymorphic::TemplateParamOp targetParam) |
| Check type compatibility of the given template parameter value from this CallOp against the declared type on the given TemplateParamOp (if any). | |
| ::mlir::LogicalResult | verifyTemplateParamCompatibility (::llvm::iterator_range<::mlir::Region::op_iterator<::llzk::polymorphic::TemplateParamOp > > targetParamDefs) |
| Check type compatibility of each template parameter value provided in this CallOp against the declared type on each TemplateParamOp (if any). | |
| ::mlir::LogicalResult | verifyTemplateParamsMatchInferred (::llvm::iterator_range<::mlir::Region::op_iterator<::llzk::polymorphic::TemplateParamOp > > targetParamDefs, const UnificationMap &unifications) |
| Verify that each template parameter value provided in this CallOp is consistent with the value inferred for the target TemplateParamOp in the given UnificationMap. | |
Static Public Member Functions | |
| ::mlir::StringAttr | getCalleeAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getMapOpGroupSizesAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getNumDimsPerMapAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getTemplateParamsAttrName (::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, ::mlir::SymbolRefAttr callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::verif::ContractOp callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::verif::ContractOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::verif::ContractOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | populateDefaultProperties (::mlir::OperationName opName, Properties &properties) |
| ::mlir::ParseResult | parse (::mlir::OpAsmParser &parser, ::mlir::OperationState &result) |
| ::llvm::LogicalResult | setPropertiesFromParsedAttr (Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError) |
| using llzk::verif::IncludeOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>> |
| using llzk::verif::IncludeOp::GenericAdaptor = IncludeOpGenericAdaptor<RangeT> |
|
static |
Definition at line 1183 of file Ops.cpp.inc.
|
static |
Definition at line 1176 of file Ops.cpp.inc.
|
static |
Definition at line 1169 of file Ops.cpp.inc.
|
static |
Definition at line 1162 of file Ops.cpp.inc.
|
static |
|
static |
|
static |
Definition at line 975 of file Ops.cpp.inc.
| bool llzk::verif::IncludeOp::contractTargetsStruct | ( | ) |
|
inline |
| mlir::MutableOperandRange llzk::verif::IncludeOp::getArgOperandsMutable | ( | ) |
Definition at line 842 of file Ops.cpp.inc.
|
inline |
| CallInterfaceCallable llzk::verif::IncludeOp::getCallableForCallee | ( | ) |
| mlir::SymbolRefAttr llzk::verif::IncludeOp::getCallee | ( | ) |
Definition at line 1134 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| FailureOr< SymbolLookupResult< ContractOp > > llzk::verif::IncludeOp::getCalleeTarget | ( | ::mlir::SymbolTableCollection & | tables | ) |
|
static |
Definition at line 987 of file Ops.cpp.inc.
|
inline |
| mlir::MutableOperandRangeRange llzk::verif::IncludeOp::getMapOperandsMutable | ( | ) |
Definition at line 848 of file Ops.cpp.inc.
| llvm::ArrayRef< int32_t > llzk::verif::IncludeOp::getMapOpGroupSizes | ( | ) |
Definition at line 1149 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| llvm::ArrayRef< int32_t > llzk::verif::IncludeOp::getNumDimsPerMap | ( | ) |
Definition at line 1144 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| std::pair< unsigned, unsigned > llzk::verif::IncludeOp::getODSOperandIndexAndLength | ( | unsigned | index | ) |
Definition at line 833 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
static |
Definition at line 930 of file Ops.cpp.inc.
| Value llzk::verif::IncludeOp::getSelfValue | ( | ) |
| std::optional<::mlir::ArrayAttr > llzk::verif::IncludeOp::getTemplateParams | ( | ) |
Definition at line 1139 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| FunctionType llzk::verif::IncludeOp::getTypeSignature | ( | ) |
|
static |
Definition at line 1239 of file Ops.cpp.inc.
|
static |
Definition at line 1190 of file Ops.cpp.inc.
|
static |
Definition at line 1033 of file Ops.cpp.inc.
| void llzk::verif::IncludeOp::print | ( | ::mlir::OpAsmPrinter & | _odsPrinter | ) |
Definition at line 1342 of file Ops.cpp.inc.
|
static |
Definition at line 1071 of file Ops.cpp.inc.
|
inline |
| Operation * llzk::verif::IncludeOp::resolveCallable | ( | ) |
| Operation * llzk::verif::IncludeOp::resolveCallableInTable | ( | ::mlir::SymbolTableCollection * | symbolTable | ) |
|
inline |
| void llzk::verif::IncludeOp::setCalleeFromCallable | ( | ::mlir::CallInterfaceCallable | callee | ) |
|
static |
Definition at line 1003 of file Ops.cpp.inc.
| void llzk::verif::IncludeOp::setMapOpGroupSizes | ( | ::llvm::ArrayRef< int32_t > | attrValue | ) |
Definition at line 1158 of file Ops.cpp.inc.
|
inline |
| void llzk::verif::IncludeOp::setNumDimsPerMap | ( | ::llvm::ArrayRef< int32_t > | attrValue | ) |
Definition at line 1154 of file Ops.cpp.inc.
|
inline |
|
static |
Definition at line 854 of file Ops.cpp.inc.
|
static |
Definition at line 1314 of file Ops.cpp.inc.
|
inline |
| SmallVector< ValueRange > llzk::verif::IncludeOp::toVectorOfValueRange | ( | ::mlir::OperandRangeRange | ) |
| FailureOr< UnificationMap > llzk::verif::IncludeOp::unifyTypeSignature | ( | ::mlir::FunctionType | other | ) |
Attempt type unfication between the inferred FunctionType from this CallOp (as LHS) and the given FunctionType (as RHS).
If successful, return a UnificationMap containing the unifications that were made. Otherwise, return failure.
|
static |
Definition at line 1044 of file Ops.cpp.inc.
| llvm::LogicalResult llzk::verif::IncludeOp::verifyInvariants | ( | ) |
Definition at line 1235 of file Ops.cpp.inc.
| llvm::LogicalResult llzk::verif::IncludeOp::verifyInvariantsImpl | ( | ) |
Definition at line 1196 of file Ops.cpp.inc.
| LogicalResult llzk::verif::IncludeOp::verifySymbolUses | ( | ::mlir::SymbolTableCollection & | symbolTable | ) |
| ::mlir::LogicalResult llzk::verif::IncludeOp::verifyTemplateParamCompatibility | ( | ::llvm::iterator_range<::mlir::Region::op_iterator<::llzk::polymorphic::TemplateParamOp > > | targetParamDefs | ) |
Check type compatibility of each template parameter value provided in this CallOp against the declared type on each TemplateParamOp (if any).
Pre-condition assertions:
| ::mlir::LogicalResult llzk::verif::IncludeOp::verifyTemplateParamCompatibility | ( | ::mlir::Attribute | paramFromCallOp, |
| ::llzk::polymorphic::TemplateParamOp | targetParam ) |
Check type compatibility of the given template parameter value from this CallOp against the declared type on the given TemplateParamOp (if any).
| LogicalResult llzk::verif::IncludeOp::verifyTemplateParamsMatchInferred | ( | ::llvm::iterator_range<::mlir::Region::op_iterator<::llzk::polymorphic::TemplateParamOp > > | targetParamDefs, |
| const UnificationMap & | unifications ) |
Verify that each template parameter value provided in this CallOp is consistent with the value inferred for the target TemplateParamOp in the given UnificationMap.
The UnificationMap is expected to contain the unification results of this CallOp against the target function type signature.
Pre-condition assertions:
| void llzk::verif::IncludeOp::writeProperties | ( | ::mlir::DialectBytecodeWriter & | writer | ) |
Definition at line 1111 of file Ops.cpp.inc.