|
LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
|
Public Types | |
| using | Adaptor = CallOpAdaptor |
| template<typename RangeT> | |
| using | GenericAdaptor = CallOpGenericAdaptor<RangeT> |
| using | FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>> |
| using | Properties = FoldAdaptor::Properties |
Public Member Functions | |
| static ::llvm::ArrayRef<::llvm::StringRef > | getAttributeNames () |
| ::mlir::StringAttr | getArgAttrsAttrName () |
| ::mlir::StringAttr | getCalleeAttrName () |
| ::mlir::StringAttr | getMapOpGroupSizesAttrName () |
| ::mlir::StringAttr | getNumDimsPerMapAttrName () |
| ::mlir::StringAttr | getResAttrsAttrName () |
| ::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 () |
| ::mlir::ArrayAttr | getArgAttrsAttr () |
| ::std::optional< ::mlir::ArrayAttr > | getArgAttrs () |
| ::mlir::ArrayAttr | getResAttrsAttr () |
| ::std::optional< ::mlir::ArrayAttr > | getResAttrs () |
| 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) |
| void | setArgAttrsAttr (::mlir::ArrayAttr attr) |
| void | setResAttrsAttr (::mlir::ArrayAttr attr) |
| ::mlir::Attribute | removeTemplateParamsAttr () |
| ::mlir::Attribute | removeArgAttrsAttr () |
| ::mlir::Attribute | removeResAttrsAttr () |
| ::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. | |
| ::mlir::Operation * | resolveCallableInTable (::mlir::SymbolTableCollection *symbolTable) |
| ::mlir::Operation * | resolveCallable () |
| ::llvm::LogicalResult | verifySymbolUses (::mlir::SymbolTableCollection &symbolTable) |
| ::mlir::Value | getSelfValue () |
| void | print (::mlir::OpAsmPrinter &_odsPrinter) |
| bool | calleeIsCompute () |
| Return true iff the callee function name is FUNC_NAME_COMPUTE (this does not check if the callee function is located within a StructDefOp). | |
| bool | calleeIsProduct () |
| Return true iff the callee function name is FUNC_NAME_PRODUCT (this does not check if the callee function is located within a StructDefOp). | |
| bool | calleeContainsWitnessGen () |
| Return true iff the callee function can contain witness generation code (this does not check if the callee function is located within a StructDefOp). | |
| bool | calleeIsConstrain () |
| Return true iff the callee function name is FUNC_NAME_CONSTRAIN (this does not check if the callee function is located within a StructDefOp). | |
| bool | calleeIsStructCompute () |
| Return true iff the callee function name is FUNC_NAME_COMPUTE within a StructDefOp. | |
| bool | calleeIsStructProduct () |
| Return true iff the callee function name is FUNC_NAME_PRODUCT within a StructDefOp. | |
| bool | calleeIsStructConstrain () |
| Return true iff the callee function name is FUNC_NAME_CONSTRAIN within a StructDefOp. | |
| bool | calleeIsInStruct () |
| Return true iff the callee function is within a StructDefOp. | |
| ::mlir::Value | getSelfValueFromCompute () |
| Return the "self" value (i.e. | |
| ::mlir::Value | getSelfValueFromProduct () |
| Return the "self" value (i.e. | |
| ::mlir::Value | getSelfValueFromConstrain () |
| Return the "self" value (i.e. | |
| ::mlir::FailureOr<::llzk::SymbolLookupResult<::llzk::function::FuncDefOp > > | getCalleeTarget (::mlir::SymbolTableCollection &tables) |
| Resolve and return the target FuncDefOp for this CallOp. | |
| ::llzk::component::StructType | getSingleResultTypeOfCompute () |
| Assuming the callee is FUNC_NAME_COMPUTE, return the single StructType result. | |
| ::llzk::component::StructType | getSingleResultTypeOfWitnessGen () |
| Assuming the callee contains witness generation code, return the single StructType result. | |
Static Public Member Functions | |
| ::mlir::StringAttr | getArgAttrsAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getCalleeAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getMapOpGroupSizesAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getNumDimsPerMapAttrName (::mlir::OperationName name) |
| ::mlir::StringAttr | getResAttrsAttrName (::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::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::mlir::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::mlir::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::mlir::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::mlir::TypeRange resultTypes, ::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::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::mlir::TypeRange resultTypes, ::mlir::SymbolRefAttr callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::mlir::TypeRange resultTypes, ::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::function::FuncDefOp callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::function::FuncDefOp callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::function::FuncDefOp callee, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static void | build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::function::FuncDefOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::function::FuncDefOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::function::FuncDefOp 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::function::FuncDefOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::function::FuncDefOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap, ::mlir::ValueRange argOperands={}, ::llvm::ArrayRef<::mlir::Attribute > templateParams={}) |
| static CallOp | create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::function::FuncDefOp 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) |
Static Public Attributes | |
| static constexpr int | odsIndex_argOperands = 0 |
| static constexpr int | odsIndex_mapOperands = 1 |
| using llzk::function::CallOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>> |
| using llzk::function::CallOp::GenericAdaptor = CallOpGenericAdaptor<RangeT> |
|
static |
Definition at line 685 of file Ops.cpp.inc.
|
static |
Definition at line 666 of file Ops.cpp.inc.
|
static |
Definition at line 647 of file Ops.cpp.inc.
|
static |
Definition at line 628 of file Ops.cpp.inc.
|
static |
|
static |
|
inline |
Return true iff the callee function can contain witness generation code (this does not check if the callee function is located within a StructDefOp).
|
inline |
Return true iff the callee function name is FUNC_NAME_COMPUTE (this does not check if the callee function is located within a StructDefOp).
|
inline |
Return true iff the callee function name is FUNC_NAME_CONSTRAIN (this does not check if the callee function is located within a StructDefOp).
|
inline |
Return true iff the callee function is within a StructDefOp.
|
inline |
Return true iff the callee function name is FUNC_NAME_PRODUCT (this does not check if the callee function is located within a StructDefOp).
| bool llzk::function::CallOp::calleeIsStructCompute | ( | ) |
Return true iff the callee function name is FUNC_NAME_COMPUTE within a StructDefOp.
| bool llzk::function::CallOp::calleeIsStructConstrain | ( | ) |
Return true iff the callee function name is FUNC_NAME_CONSTRAIN within a StructDefOp.
| bool llzk::function::CallOp::calleeIsStructProduct | ( | ) |
Return true iff the callee function name is FUNC_NAME_PRODUCT within a StructDefOp.
|
static |
Definition at line 434 of file Ops.cpp.inc.
|
static |
Definition at line 700 of file Ops.cpp.inc.
|
static |
Definition at line 681 of file Ops.cpp.inc.
|
static |
Definition at line 662 of file Ops.cpp.inc.
|
static |
Definition at line 643 of file Ops.cpp.inc.
|
static |
Definition at line 624 of file Ops.cpp.inc.
|
static |
Definition at line 612 of file Ops.cpp.inc.
|
static |
Definition at line 692 of file Ops.cpp.inc.
|
static |
Definition at line 673 of file Ops.cpp.inc.
|
static |
Definition at line 654 of file Ops.cpp.inc.
|
static |
Definition at line 635 of file Ops.cpp.inc.
|
static |
Definition at line 616 of file Ops.cpp.inc.
|
static |
Definition at line 604 of file Ops.cpp.inc.
| std::optional<::mlir::ArrayAttr > llzk::function::CallOp::getArgAttrs | ( | ) |
Definition at line 586 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
|
inline |
| mlir::MutableOperandRange llzk::function::CallOp::getArgOperandsMutable | ( | ) |
Definition at line 239 of file Ops.cpp.inc.
|
inline |
| CallInterfaceCallable llzk::function::CallOp::getCallableForCallee | ( | ) |
| mlir::SymbolRefAttr llzk::function::CallOp::getCallee | ( | ) |
Definition at line 566 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| FailureOr< SymbolLookupResult< FuncDefOp > > llzk::function::CallOp::getCalleeTarget | ( | ::mlir::SymbolTableCollection & | tables | ) |
|
static |
Definition at line 450 of file Ops.cpp.inc.
|
inline |
| mlir::MutableOperandRangeRange llzk::function::CallOp::getMapOperandsMutable | ( | ) |
Definition at line 245 of file Ops.cpp.inc.
| llvm::ArrayRef< int32_t > llzk::function::CallOp::getMapOpGroupSizes | ( | ) |
Definition at line 581 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| llvm::ArrayRef< int32_t > llzk::function::CallOp::getNumDimsPerMap | ( | ) |
Definition at line 576 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| std::pair< unsigned, unsigned > llzk::function::CallOp::getODSOperandIndexAndLength | ( | unsigned | index | ) |
Definition at line 230 of file Ops.cpp.inc.
|
inline |
| std::pair< unsigned, unsigned > llzk::function::CallOp::getODSResultIndexAndLength | ( | unsigned | index | ) |
Definition at line 251 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
static |
Definition at line 375 of file Ops.cpp.inc.
| std::optional<::mlir::ArrayAttr > llzk::function::CallOp::getResAttrs | ( | ) |
Definition at line 591 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
| Value llzk::function::CallOp::getSelfValueFromCompute | ( | ) |
Return the "self" value (i.e.
the return value) from the callee function (which must be named FUNC_NAME_COMPUTE).
| Value llzk::function::CallOp::getSelfValueFromConstrain | ( | ) |
Return the "self" value (i.e.
the first parameter) from the callee function (which must be named FUNC_NAME_CONSTRAIN).
| Value llzk::function::CallOp::getSelfValueFromProduct | ( | ) |
Return the "self" value (i.e.
the return value) from the callee function (which must be named FUNC_NAME_PRODUCT).
| StructType llzk::function::CallOp::getSingleResultTypeOfCompute | ( | ) |
Assuming the callee is FUNC_NAME_COMPUTE, return the single StructType result.
| StructType llzk::function::CallOp::getSingleResultTypeOfWitnessGen | ( | ) |
Assuming the callee contains witness generation code, return the single StructType result.
| std::optional<::mlir::ArrayAttr > llzk::function::CallOp::getTemplateParams | ( | ) |
Definition at line 571 of file Ops.cpp.inc.
|
inline |
|
inline |
|
inlinestatic |
|
static |
Definition at line 770 of file Ops.cpp.inc.
|
static |
Definition at line 704 of file Ops.cpp.inc.
|
static |
Definition at line 512 of file Ops.cpp.inc.
| void llzk::function::CallOp::print | ( | ::mlir::OpAsmPrinter & | _odsPrinter | ) |
Definition at line 928 of file Ops.cpp.inc.
|
static |
|
inline |
|
inline |
|
inline |
| Operation * llzk::function::CallOp::resolveCallableInTable | ( | ::mlir::SymbolTableCollection * | symbolTable | ) |
|
inline |
|
inline |
| void llzk::function::CallOp::setCalleeFromCallable | ( | ::mlir::CallInterfaceCallable | callee | ) |
|
static |
Definition at line 472 of file Ops.cpp.inc.
| void llzk::function::CallOp::setMapOpGroupSizes | ( | ::llvm::ArrayRef< int32_t > | attrValue | ) |
Definition at line 600 of file Ops.cpp.inc.
|
inline |
| void llzk::function::CallOp::setNumDimsPerMap | ( | ::llvm::ArrayRef< int32_t > | attrValue | ) |
Definition at line 596 of file Ops.cpp.inc.
|
inline |
|
static |
Definition at line 269 of file Ops.cpp.inc.
|
static |
Definition at line 845 of file Ops.cpp.inc.
|
inline |
|
inline |
|
static |
Definition at line 527 of file Ops.cpp.inc.
| llvm::LogicalResult llzk::function::CallOp::verifyInvariants | ( | ) |
Definition at line 766 of file Ops.cpp.inc.
| llvm::LogicalResult llzk::function::CallOp::verifyInvariantsImpl | ( | ) |
Definition at line 710 of file Ops.cpp.inc.
| LogicalResult llzk::function::CallOp::verifySymbolUses | ( | ::mlir::SymbolTableCollection & | symbolTable | ) |
| void llzk::function::CallOp::writeProperties | ( | ::mlir::DialectBytecodeWriter & | writer | ) |
|
staticconstexpr |
|
staticconstexpr |