LLZK 2.1.1
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
Inheritance diagram for llzk::verif::IncludeOp:
[legend]
Collaboration diagram for llzk::verif::IncludeOp:
[legend]

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< UnificationMapunifyTypeSignature (::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)

Detailed Description

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

Member Typedef Documentation

◆ Adaptor

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

◆ FoldAdaptor

using llzk::verif::IncludeOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>

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

◆ GenericAdaptor

template<typename RangeT>
using llzk::verif::IncludeOp::GenericAdaptor = IncludeOpGenericAdaptor<RangeT>

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

◆ Properties

Member Function Documentation

◆ build() [1/6]

void llzk::verif::IncludeOp::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

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

◆ build() [2/6]

void llzk::verif::IncludeOp::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

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

◆ build() [3/6]

void llzk::verif::IncludeOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::verif::ContractOp callee,
::mlir::ValueRange argOperands = {},
::llvm::ArrayRef<::mlir::Attribute > templateParams = {} )
static

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

◆ build() [4/6]

void llzk::verif::IncludeOp::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

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

◆ build() [5/6]

void llzk::verif::IncludeOp::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

◆ build() [6/6]

void llzk::verif::IncludeOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::SymbolRefAttr callee,
::mlir::ValueRange argOperands = {},
::llvm::ArrayRef<::mlir::Attribute > templateParams = {} )
static

◆ computePropertiesHash()

llvm::hash_code llzk::verif::IncludeOp::computePropertiesHash ( const Properties & prop)
static

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

◆ contractTargetsStruct()

bool llzk::verif::IncludeOp::contractTargetsStruct ( )

Return true iff the contract targets a struct type.

Definition at line 1030 of file Ops.cpp.

◆ getArgOperands()

::mlir::Operation::operand_range llzk::verif::IncludeOp::getArgOperands ( )
inline

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

◆ getArgOperandsMutable()

mlir::MutableOperandRange llzk::verif::IncludeOp::getArgOperandsMutable ( )

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

◆ getAttributeNames()

::llvm::ArrayRef<::llvm::StringRef > llzk::verif::IncludeOp::getAttributeNames ( )
inline

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

◆ getCallableForCallee()

CallInterfaceCallable llzk::verif::IncludeOp::getCallableForCallee ( )

Return the callee of this operation.

Definition at line 1048 of file Ops.cpp.

◆ getCallee()

mlir::SymbolRefAttr llzk::verif::IncludeOp::getCallee ( )

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

◆ getCalleeAttr()

::mlir::SymbolRefAttr llzk::verif::IncludeOp::getCalleeAttr ( )
inline

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

◆ getCalleeAttrName() [1/2]

::mlir::StringAttr llzk::verif::IncludeOp::getCalleeAttrName ( )
inline

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

◆ getCalleeAttrName() [2/2]

::mlir::StringAttr llzk::verif::IncludeOp::getCalleeAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getCalleeTarget()

FailureOr< SymbolLookupResult< ContractOp > > llzk::verif::IncludeOp::getCalleeTarget ( ::mlir::SymbolTableCollection & tables)

Resolve and return the target Contract for this CallOp.

Definition at line 1023 of file Ops.cpp.

◆ getInherentAttr()

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

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

◆ getMapOperands()

::mlir::OperandRangeRange llzk::verif::IncludeOp::getMapOperands ( )
inline

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

◆ getMapOperandsMutable()

mlir::MutableOperandRangeRange llzk::verif::IncludeOp::getMapOperandsMutable ( )

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

◆ getMapOpGroupSizes()

llvm::ArrayRef< int32_t > llzk::verif::IncludeOp::getMapOpGroupSizes ( )

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

◆ getMapOpGroupSizesAttr()

::mlir::DenseI32ArrayAttr llzk::verif::IncludeOp::getMapOpGroupSizesAttr ( )
inline

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

◆ getMapOpGroupSizesAttrName() [1/2]

::mlir::StringAttr llzk::verif::IncludeOp::getMapOpGroupSizesAttrName ( )
inline

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

◆ getMapOpGroupSizesAttrName() [2/2]

::mlir::StringAttr llzk::verif::IncludeOp::getMapOpGroupSizesAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getNumDimsPerMap()

llvm::ArrayRef< int32_t > llzk::verif::IncludeOp::getNumDimsPerMap ( )

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

◆ getNumDimsPerMapAttr()

::mlir::DenseI32ArrayAttr llzk::verif::IncludeOp::getNumDimsPerMapAttr ( )
inline

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

◆ getNumDimsPerMapAttrName() [1/2]

::mlir::StringAttr llzk::verif::IncludeOp::getNumDimsPerMapAttrName ( )
inline

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

◆ getNumDimsPerMapAttrName() [2/2]

::mlir::StringAttr llzk::verif::IncludeOp::getNumDimsPerMapAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getODSOperandIndexAndLength()

std::pair< unsigned, unsigned > llzk::verif::IncludeOp::getODSOperandIndexAndLength ( unsigned index)

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

◆ getODSOperands()

::mlir::Operation::operand_range llzk::verif::IncludeOp::getODSOperands ( unsigned index)
inline

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

◆ getODSResultIndexAndLength()

std::pair< unsigned, unsigned > llzk::verif::IncludeOp::getODSResultIndexAndLength ( unsigned index)
inline

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

◆ getODSResults()

::mlir::Operation::result_range llzk::verif::IncludeOp::getODSResults ( unsigned index)
inline

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

◆ getOperandSegmentSizesAttrName() [1/2]

::mlir::StringAttr llzk::verif::IncludeOp::getOperandSegmentSizesAttrName ( )
inline

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

◆ getOperandSegmentSizesAttrName() [2/2]

::mlir::StringAttr llzk::verif::IncludeOp::getOperandSegmentSizesAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getOperationName()

constexpr ::llvm::StringLiteral llzk::verif::IncludeOp::getOperationName ( )
inlinestatic

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

◆ getPropertiesAsAttr()

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

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

◆ getSelfValue()

Value llzk::verif::IncludeOp::getSelfValue ( )

Return the "self" value (i.e.

the first parameter) from the callee contract, assuming the target of the contract is a struct target.

Definition at line 1036 of file Ops.cpp.

◆ getTemplateParams()

std::optional<::mlir::ArrayAttr > llzk::verif::IncludeOp::getTemplateParams ( )

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

◆ getTemplateParamsAttr()

::mlir::ArrayAttr llzk::verif::IncludeOp::getTemplateParamsAttr ( )
inline

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

◆ getTemplateParamsAttrName() [1/2]

::mlir::StringAttr llzk::verif::IncludeOp::getTemplateParamsAttrName ( )
inline

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

◆ getTemplateParamsAttrName() [2/2]

::mlir::StringAttr llzk::verif::IncludeOp::getTemplateParamsAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getTypeSignature()

FunctionType llzk::verif::IncludeOp::getTypeSignature ( )

Return the FunctionType inferred from the arg operands of this CallOp.

This is not necessarily the same as the callee's FunctionType but should unify with it or else IR verification will fail.

Definition at line 1010 of file Ops.cpp.

◆ parse()

mlir::ParseResult llzk::verif::IncludeOp::parse ( ::mlir::OpAsmParser & parser,
::mlir::OperationState & result )
static

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

◆ populateDefaultProperties()

void llzk::verif::IncludeOp::populateDefaultProperties ( ::mlir::OperationName opName,
Properties & properties )
static

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

◆ populateInherentAttrs()

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

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

◆ print()

void llzk::verif::IncludeOp::print ( ::mlir::OpAsmPrinter & _odsPrinter)

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

◆ readProperties()

llvm::LogicalResult llzk::verif::IncludeOp::readProperties ( ::mlir::DialectBytecodeReader & reader,
::mlir::OperationState & state )
static

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

◆ removeTemplateParamsAttr()

::mlir::Attribute llzk::verif::IncludeOp::removeTemplateParamsAttr ( )
inline

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

◆ resolveCallable()

Operation * llzk::verif::IncludeOp::resolveCallable ( )

Required by CallOpInterface.

Definition at line 1079 of file Ops.cpp.

◆ resolveCallableInTable()

Operation * llzk::verif::IncludeOp::resolveCallableInTable ( ::mlir::SymbolTableCollection * symbolTable)

Required by CallOpInterface.

Definition at line 1062 of file Ops.cpp.

◆ setCalleeAttr()

void llzk::verif::IncludeOp::setCalleeAttr ( ::mlir::SymbolRefAttr attr)
inline

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

◆ setCalleeFromCallable()

void llzk::verif::IncludeOp::setCalleeFromCallable ( ::mlir::CallInterfaceCallable callee)

Set the callee for this operation.

Definition at line 1051 of file Ops.cpp.

◆ setInherentAttr()

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

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

◆ setMapOpGroupSizes()

void llzk::verif::IncludeOp::setMapOpGroupSizes ( ::llvm::ArrayRef< int32_t > attrValue)

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

◆ setMapOpGroupSizesAttr()

void llzk::verif::IncludeOp::setMapOpGroupSizesAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

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

◆ setNumDimsPerMap()

void llzk::verif::IncludeOp::setNumDimsPerMap ( ::llvm::ArrayRef< int32_t > attrValue)

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

◆ setNumDimsPerMapAttr()

void llzk::verif::IncludeOp::setNumDimsPerMapAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

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

◆ setPropertiesFromAttr()

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

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

◆ setPropertiesFromParsedAttr()

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

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

◆ setTemplateParamsAttr()

void llzk::verif::IncludeOp::setTemplateParamsAttr ( ::mlir::ArrayAttr attr)
inline

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

◆ toVectorOfValueRange()

SmallVector< ValueRange > llzk::verif::IncludeOp::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 1055 of file Ops.cpp.

◆ unifyTypeSignature()

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.

Definition at line 1014 of file Ops.cpp.

◆ verifyInherentAttrs()

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

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

◆ verifyInvariants()

llvm::LogicalResult llzk::verif::IncludeOp::verifyInvariants ( )

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

◆ verifyInvariantsImpl()

llvm::LogicalResult llzk::verif::IncludeOp::verifyInvariantsImpl ( )

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

◆ verifySymbolUses()

LogicalResult llzk::verif::IncludeOp::verifySymbolUses ( ::mlir::SymbolTableCollection & symbolTable)

Definition at line 971 of file Ops.cpp.

◆ verifyTemplateParamCompatibility() [1/2]

::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:

◆ verifyTemplateParamCompatibility() [2/2]

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

◆ verifyTemplateParamsMatchInferred()

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:

Definition at line 805 of file Ops.cpp.

◆ writeProperties()

void llzk::verif::IncludeOp::writeProperties ( ::mlir::DialectBytecodeWriter & writer)

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


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