LLZK 0.1.0
Veridise's ZK Language IR
Loading...
Searching...
No Matches
Inheritance diagram for llzk::function::CallOp:
[legend]
Collaboration diagram for llzk::function::CallOp:
[legend]

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 getCalleeAttrName ()
::mlir::StringAttr getMapOpGroupSizesAttrName ()
::mlir::StringAttr getNumDimsPerMapAttrName ()
::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::DenseI32ArrayAttr getNumDimsPerMapAttr ()
::llvm::ArrayRef< int32_t > getNumDimsPerMap ()
::mlir::DenseI32ArrayAttr getMapOpGroupSizesAttr ()
::llvm::ArrayRef< int32_t > getMapOpGroupSizes ()
void setCalleeAttr (::mlir::SymbolRefAttr 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)
::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::FunctionType getCalleeType ()
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 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 calleeIsStructConstrain ()
 Return true iff the callee function name is FUNC_NAME_CONSTRAIN within a StructDefOp.
::mlir::Value getSelfValueFromCompute ()
 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.
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>.

Static Public Member Functions

::mlir::StringAttr getCalleeAttrName (::mlir::OperationName name)
::mlir::StringAttr getMapOpGroupSizesAttrName (::mlir::OperationName name)
::mlir::StringAttr getNumDimsPerMapAttrName (::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={})
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={})
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={})
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::function::FuncDefOp callee, ::mlir::ValueRange argOperands={})
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::function::FuncDefOp callee, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap, ::mlir::ValueRange argOperands={})
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={})
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)

Detailed Description

Definition at line 184 of file Ops.h.inc.

Member Typedef Documentation

◆ Adaptor

Definition at line 188 of file Ops.h.inc.

◆ FoldAdaptor

using llzk::function::CallOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>

Definition at line 191 of file Ops.h.inc.

◆ GenericAdaptor

template<typename RangeT>
using llzk::function::CallOp::GenericAdaptor = CallOpGenericAdaptor<RangeT>

Definition at line 190 of file Ops.h.inc.

◆ Properties

Member Function Documentation

◆ build() [1/6]

void llzk::function::CallOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::function::FuncDefOp callee,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::llvm::ArrayRef< int32_t > numDimsPerMap,
::mlir::ValueRange argOperands = {} )
static

Definition at line 508 of file Ops.cpp.inc.

◆ build() [2/6]

void llzk::function::CallOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::function::FuncDefOp callee,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::mlir::DenseI32ArrayAttr numDimsPerMap,
::mlir::ValueRange argOperands = {} )
static

Definition at line 502 of file Ops.cpp.inc.

◆ build() [3/6]

void llzk::function::CallOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::function::FuncDefOp callee,
::mlir::ValueRange argOperands = {} )
static

Definition at line 496 of file Ops.cpp.inc.

◆ build() [4/6]

void llzk::function::CallOp::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 = {} )
static

Definition at line 490 of file Ops.cpp.inc.

◆ build() [5/6]

void llzk::function::CallOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::TypeRange resultTypes,
::mlir::SymbolRefAttr callee,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::mlir::DenseI32ArrayAttr numDimsPerMap,
::mlir::ValueRange argOperands = {} )
static

◆ build() [6/6]

void llzk::function::CallOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::TypeRange resultTypes,
::mlir::SymbolRefAttr callee,
::mlir::ValueRange argOperands = {} )
static

◆ calleeIsCompute()

bool llzk::function::CallOp::calleeIsCompute ( )
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).

Definition at line 329 of file Ops.h.inc.

◆ calleeIsConstrain()

bool llzk::function::CallOp::calleeIsConstrain ( )
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).

Definition at line 333 of file Ops.h.inc.

◆ calleeIsStructCompute()

bool llzk::function::CallOp::calleeIsStructCompute ( )

Return true iff the callee function name is FUNC_NAME_COMPUTE within a StructDefOp.

Definition at line 755 of file Ops.cpp.

◆ calleeIsStructConstrain()

bool llzk::function::CallOp::calleeIsStructConstrain ( )

Return true iff the callee function name is FUNC_NAME_CONSTRAIN within a StructDefOp.

Definition at line 761 of file Ops.cpp.

◆ computePropertiesHash()

llvm::hash_code llzk::function::CallOp::computePropertiesHash ( const Properties & prop)
static

Definition at line 330 of file Ops.cpp.inc.

◆ getArgOperands()

::mlir::Operation::operand_range llzk::function::CallOp::getArgOperands ( )
inline

Definition at line 241 of file Ops.h.inc.

◆ getArgOperandsMutable()

mlir::MutableOperandRange llzk::function::CallOp::getArgOperandsMutable ( )

Definition at line 200 of file Ops.cpp.inc.

◆ getAttributeNames()

::llvm::ArrayRef<::llvm::StringRef > llzk::function::CallOp::getAttributeNames ( )
inline

Definition at line 193 of file Ops.h.inc.

◆ getCallableForCallee()

CallInterfaceCallable llzk::function::CallOp::getCallableForCallee ( )

Return the callee of this operation.

Definition at line 790 of file Ops.cpp.

◆ getCallee()

mlir::SymbolRefAttr llzk::function::CallOp::getCallee ( )

Definition at line 467 of file Ops.cpp.inc.

◆ getCalleeAttr()

::mlir::SymbolRefAttr llzk::function::CallOp::getCalleeAttr ( )
inline

Definition at line 267 of file Ops.h.inc.

◆ getCalleeAttrName() [1/2]

::mlir::StringAttr llzk::function::CallOp::getCalleeAttrName ( )
inline

Definition at line 198 of file Ops.h.inc.

◆ getCalleeAttrName() [2/2]

::mlir::StringAttr llzk::function::CallOp::getCalleeAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 202 of file Ops.h.inc.

◆ getCalleeTarget()

FailureOr< SymbolLookupResult< FuncDefOp > > llzk::function::CallOp::getCalleeTarget ( ::mlir::SymbolTableCollection & tables)

Resolve and return the target FuncDefOp for this CallOp.

Definition at line 777 of file Ops.cpp.

◆ getCalleeType()

FunctionType llzk::function::CallOp::getCalleeType ( )

Definition at line 732 of file Ops.cpp.

◆ getInherentAttr()

std::optional< mlir::Attribute > llzk::function::CallOp::getInherentAttr ( ::mlir::MLIRContext * ctx,
const Properties & prop,
llvm::StringRef name )
static

Definition at line 341 of file Ops.cpp.inc.

◆ getMapOperands()

::mlir::OperandRangeRange llzk::function::CallOp::getMapOperands ( )
inline

Definition at line 245 of file Ops.h.inc.

◆ getMapOperandsMutable()

mlir::MutableOperandRangeRange llzk::function::CallOp::getMapOperandsMutable ( )

Definition at line 206 of file Ops.cpp.inc.

◆ getMapOpGroupSizes()

llvm::ArrayRef< int32_t > llzk::function::CallOp::getMapOpGroupSizes ( )

Definition at line 477 of file Ops.cpp.inc.

◆ getMapOpGroupSizesAttr()

::mlir::DenseI32ArrayAttr llzk::function::CallOp::getMapOpGroupSizesAttr ( )
inline

Definition at line 277 of file Ops.h.inc.

◆ getMapOpGroupSizesAttrName() [1/2]

::mlir::StringAttr llzk::function::CallOp::getMapOpGroupSizesAttrName ( )
inline

Definition at line 206 of file Ops.h.inc.

◆ getMapOpGroupSizesAttrName() [2/2]

::mlir::StringAttr llzk::function::CallOp::getMapOpGroupSizesAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 210 of file Ops.h.inc.

◆ getNumDimsPerMap()

llvm::ArrayRef< int32_t > llzk::function::CallOp::getNumDimsPerMap ( )

Definition at line 472 of file Ops.cpp.inc.

◆ getNumDimsPerMapAttr()

::mlir::DenseI32ArrayAttr llzk::function::CallOp::getNumDimsPerMapAttr ( )
inline

Definition at line 272 of file Ops.h.inc.

◆ getNumDimsPerMapAttrName() [1/2]

::mlir::StringAttr llzk::function::CallOp::getNumDimsPerMapAttrName ( )
inline

Definition at line 214 of file Ops.h.inc.

◆ getNumDimsPerMapAttrName() [2/2]

::mlir::StringAttr llzk::function::CallOp::getNumDimsPerMapAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 218 of file Ops.h.inc.

◆ getODSOperandIndexAndLength()

std::pair< unsigned, unsigned > llzk::function::CallOp::getODSOperandIndexAndLength ( unsigned index)

Definition at line 191 of file Ops.cpp.inc.

◆ getODSOperands()

::mlir::Operation::operand_range llzk::function::CallOp::getODSOperands ( unsigned index)
inline

Definition at line 235 of file Ops.h.inc.

◆ getODSResultIndexAndLength()

std::pair< unsigned, unsigned > llzk::function::CallOp::getODSResultIndexAndLength ( unsigned index)

Definition at line 212 of file Ops.cpp.inc.

◆ getODSResults()

::mlir::Operation::result_range llzk::function::CallOp::getODSResults ( unsigned index)
inline

Definition at line 252 of file Ops.h.inc.

◆ getOperandSegmentSizesAttrName() [1/2]

::mlir::StringAttr llzk::function::CallOp::getOperandSegmentSizesAttrName ( )
inline

Definition at line 222 of file Ops.h.inc.

◆ getOperandSegmentSizesAttrName() [2/2]

::mlir::StringAttr llzk::function::CallOp::getOperandSegmentSizesAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 226 of file Ops.h.inc.

◆ getOperationName()

constexpr ::llvm::StringLiteral llzk::function::CallOp::getOperationName ( )
inlinestatic

Definition at line 230 of file Ops.h.inc.

◆ getPropertiesAsAttr()

mlir::Attribute llzk::function::CallOp::getPropertiesAsAttr ( ::mlir::MLIRContext * ctx,
const Properties & prop )
static

Definition at line 292 of file Ops.cpp.inc.

◆ getSelfValueFromCompute()

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).

Definition at line 767 of file Ops.cpp.

◆ getSelfValueFromConstrain()

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).

Definition at line 772 of file Ops.cpp.

◆ getSingleResultTypeOfCompute()

StructType llzk::function::CallOp::getSingleResultTypeOfCompute ( )

Assuming the callee is FUNC_NAME_COMPUTE, return the single StructType result.

Definition at line 784 of file Ops.cpp.

◆ parse()

mlir::ParseResult llzk::function::CallOp::parse ( ::mlir::OpAsmParser & parser,
::mlir::OperationState & result )
static

Definition at line 568 of file Ops.cpp.inc.

◆ populateDefaultProperties()

void llzk::function::CallOp::populateDefaultProperties ( ::mlir::OperationName opName,
Properties & properties )
static

Definition at line 514 of file Ops.cpp.inc.

◆ populateInherentAttrs()

void llzk::function::CallOp::populateInherentAttrs ( ::mlir::MLIRContext * ctx,
const Properties & prop,
::mlir::NamedAttrList & attrs )
static

Definition at line 379 of file Ops.cpp.inc.

◆ print()

void llzk::function::CallOp::print ( ::mlir::OpAsmPrinter & _odsPrinter)

Definition at line 660 of file Ops.cpp.inc.

◆ readProperties()

llvm::LogicalResult llzk::function::CallOp::readProperties ( ::mlir::DialectBytecodeReader & reader,
::mlir::OperationState & state )
static

Definition at line 409 of file Ops.cpp.inc.

◆ setCalleeAttr()

void llzk::function::CallOp::setCalleeAttr ( ::mlir::SymbolRefAttr attr)
inline

Definition at line 282 of file Ops.h.inc.

◆ setCalleeFromCallable()

void llzk::function::CallOp::setCalleeFromCallable ( ::mlir::CallInterfaceCallable callee)

Set the callee for this operation.

Definition at line 793 of file Ops.cpp.

◆ setInherentAttr()

void llzk::function::CallOp::setInherentAttr ( Properties & prop,
llvm::StringRef name,
mlir::Attribute value )
static

Definition at line 354 of file Ops.cpp.inc.

◆ setMapOpGroupSizes()

void llzk::function::CallOp::setMapOpGroupSizes ( ::llvm::ArrayRef< int32_t > attrValue)

Definition at line 486 of file Ops.cpp.inc.

◆ setMapOpGroupSizesAttr()

void llzk::function::CallOp::setMapOpGroupSizesAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

Definition at line 291 of file Ops.h.inc.

◆ setNumDimsPerMap()

void llzk::function::CallOp::setNumDimsPerMap ( ::llvm::ArrayRef< int32_t > attrValue)

Definition at line 482 of file Ops.cpp.inc.

◆ setNumDimsPerMapAttr()

void llzk::function::CallOp::setNumDimsPerMapAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

Definition at line 286 of file Ops.h.inc.

◆ setPropertiesFromAttr()

llvm::LogicalResult llzk::function::CallOp::setPropertiesFromAttr ( Properties & prop,
::mlir::Attribute attr,
::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError )
static

Definition at line 230 of file Ops.cpp.inc.

◆ setPropertiesFromParsedAttr()

llvm::LogicalResult llzk::function::CallOp::setPropertiesFromParsedAttr ( Properties & prop,
::mlir::Attribute attr,
::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError )
static

Definition at line 632 of file Ops.cpp.inc.

◆ toVectorOfValueRange()

SmallVector< ValueRange > llzk::function::CallOp::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>.

Definition at line 797 of file Ops.cpp.

◆ verifyInherentAttrs()

llvm::LogicalResult llzk::function::CallOp::verifyInherentAttrs ( ::mlir::OperationName opName,
::mlir::NamedAttrList & attrs,
llvm::function_ref<::mlir::InFlightDiagnostic()> emitError )
static

Definition at line 388 of file Ops.cpp.inc.

◆ verifyInvariants()

llvm::LogicalResult llzk::function::CallOp::verifyInvariants ( )

Definition at line 564 of file Ops.cpp.inc.

◆ verifyInvariantsImpl()

llvm::LogicalResult llzk::function::CallOp::verifyInvariantsImpl ( )

Definition at line 520 of file Ops.cpp.inc.

◆ verifySymbolUses()

LogicalResult llzk::function::CallOp::verifySymbolUses ( ::mlir::SymbolTableCollection & symbolTable)

Definition at line 701 of file Ops.cpp.

◆ writeProperties()

void llzk::function::CallOp::writeProperties ( ::mlir::DialectBytecodeWriter & writer)

Definition at line 446 of file Ops.cpp.inc.


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