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

Public Types

using Adaptor = CreateArrayOpAdaptor
template<typename RangeT>
using GenericAdaptor = CreateArrayOpGenericAdaptor<RangeT>
using FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>
using Properties = FoldAdaptor::Properties

Public Member Functions

static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames ()
::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 getElements ()
::mlir::OperandRangeRange getMapOperands ()
::mlir::MutableOperandRange getElementsMutable ()
::mlir::MutableOperandRangeRange getMapOperandsMutable ()
std::pair< unsigned, unsigned > getODSResultIndexAndLength (unsigned index)
::mlir::Operation::result_range getODSResults (unsigned index)
::mlir::TypedValue<::llzk::array::ArrayType > getResult ()
void writeProperties (::mlir::DialectBytecodeWriter &writer)
::mlir::DenseI32ArrayAttr getNumDimsPerMapAttr ()
::llvm::ArrayRef< int32_t > getNumDimsPerMap ()
::mlir::DenseI32ArrayAttr getMapOpGroupSizesAttr ()
::llvm::ArrayRef< int32_t > getMapOpGroupSizes ()
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 ()
::llvm::LogicalResult verify ()
::llvm::LogicalResult verifySymbolUses (::mlir::SymbolTableCollection &symbolTable)
void getAsmResultNames (::mlir::OpAsmSetValueNameFn setNameFn)
::llvm::SmallVector<::mlir::MemorySlot > getPromotableSlots ()
 Required by PromotableAllocationOpInterface / mem2reg pass.
::mlir::Value getDefaultValue (const ::mlir::MemorySlot &slot, ::mlir::OpBuilder &builder)
 Required by PromotableAllocationOpInterface / mem2reg pass.
void handleBlockArgument (const ::mlir::MemorySlot &slot, ::mlir::BlockArgument argument, ::mlir::OpBuilder &builder)
 Required by PromotableAllocationOpInterface / mem2reg pass.
::std::optional<::mlir::PromotableAllocationOpInterface > handlePromotionComplete (const ::mlir::MemorySlot &slot, ::mlir::Value defaultValue, ::mlir::OpBuilder &builder)
 Required by PromotableAllocationOpInterface / mem2reg pass.
::llvm::SmallVector<::mlir::DestructurableMemorySlot > getDestructurableSlots ()
 Required by DestructurableAllocationOpInterface / SROA pass.
::llvm::DenseMap<::mlir::Attribute, ::mlir::MemorySlot > destructure (const ::mlir::DestructurableMemorySlot &slot, const ::llvm::SmallPtrSetImpl<::mlir::Attribute > &usedIndices, ::mlir::OpBuilder &builder, ::mlir::SmallVectorImpl<::mlir::DestructurableAllocationOpInterface > &newAllocators)
 Required by DestructurableAllocationOpInterface / SROA pass.
::std::optional<::mlir::DestructurableAllocationOpInterface > handleDestructuringComplete (const ::mlir::DestructurableMemorySlot &slot, ::mlir::OpBuilder &builder)
 Required by DestructurableAllocationOpInterface / SROA pass.
void print (::mlir::OpAsmPrinter &_odsPrinter)
void getEffects (::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)

Static Public Member Functions

::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, ::llzk::array::ArrayType result, ::mlir::ValueRange elements={})
static CreateArrayOp create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::array::ArrayType result, ::mlir::ValueRange elements={})
static CreateArrayOp create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::array::ArrayType result, ::mlir::ValueRange elements={})
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap)
static CreateArrayOp create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap)
static CreateArrayOp create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::mlir::DenseI32ArrayAttr numDimsPerMap)
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap)
static CreateArrayOp create (::mlir::OpBuilder &builder, ::mlir::Location location, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap)
static CreateArrayOp create (::mlir::ImplicitLocOpBuilder &builder, ::llzk::array::ArrayType result, ::llvm::ArrayRef<::mlir::ValueRange > mapOperands, ::llvm::ArrayRef< int32_t > numDimsPerMap)
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_elements = 0
static constexpr int odsIndex_mapOperands = 1

Detailed Description

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

Member Typedef Documentation

◆ Adaptor

◆ FoldAdaptor

using llzk::array::CreateArrayOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>

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

◆ GenericAdaptor

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

◆ Properties

Member Function Documentation

◆ build() [1/3]

void llzk::array::CreateArrayOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::llvm::ArrayRef< int32_t > numDimsPerMap )
static

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

◆ build() [2/3]

void llzk::array::CreateArrayOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::mlir::DenseI32ArrayAttr numDimsPerMap )
static

◆ build() [3/3]

void llzk::array::CreateArrayOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llzk::array::ArrayType result,
::mlir::ValueRange elements = {} )
static

◆ computePropertiesHash()

llvm::hash_code llzk::array::CreateArrayOp::computePropertiesHash ( const Properties & prop)
static

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

◆ create() [1/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::ImplicitLocOpBuilder & builder,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::llvm::ArrayRef< int32_t > numDimsPerMap )
static

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

◆ create() [2/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::ImplicitLocOpBuilder & builder,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::mlir::DenseI32ArrayAttr numDimsPerMap )
static

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

◆ create() [3/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::ImplicitLocOpBuilder & builder,
::llzk::array::ArrayType result,
::mlir::ValueRange elements = {} )
static

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

◆ create() [4/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::OpBuilder & builder,
::mlir::Location location,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::llvm::ArrayRef< int32_t > numDimsPerMap )
static

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

◆ create() [5/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::OpBuilder & builder,
::mlir::Location location,
::llzk::array::ArrayType result,
::llvm::ArrayRef<::mlir::ValueRange > mapOperands,
::mlir::DenseI32ArrayAttr numDimsPerMap )
static

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

◆ create() [6/6]

CreateArrayOp llzk::array::CreateArrayOp::create ( ::mlir::OpBuilder & builder,
::mlir::Location location,
::llzk::array::ArrayType result,
::mlir::ValueRange elements = {} )
static

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

◆ destructure()

DenseMap< Attribute, MemorySlot > llzk::array::CreateArrayOp::destructure ( const ::mlir::DestructurableMemorySlot & slot,
const ::llvm::SmallPtrSetImpl<::mlir::Attribute > & usedIndices,
::mlir::OpBuilder & builder,
::mlir::SmallVectorImpl<::mlir::DestructurableAllocationOpInterface > & newAllocators )

Required by DestructurableAllocationOpInterface / SROA pass.

Definition at line 137 of file Ops.cpp.

◆ getAsmResultNames()

void llzk::array::CreateArrayOp::getAsmResultNames ( ::mlir::OpAsmSetValueNameFn setNameFn)

Definition at line 76 of file Ops.cpp.

◆ getAttributeNames()

::llvm::ArrayRef<::llvm::StringRef > llzk::array::CreateArrayOp::getAttributeNames ( )
inline

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

◆ getDefaultValue()

Value llzk::array::CreateArrayOp::getDefaultValue ( const ::mlir::MemorySlot & slot,
::mlir::OpBuilder & builder )

Required by PromotableAllocationOpInterface / mem2reg pass.

Definition at line 190 of file Ops.cpp.

◆ getDestructurableSlots()

SmallVector< DestructurableMemorySlot > llzk::array::CreateArrayOp::getDestructurableSlots ( )

Required by DestructurableAllocationOpInterface / SROA pass.

Definition at line 124 of file Ops.cpp.

◆ getEffects()

void llzk::array::CreateArrayOp::getEffects ( ::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > & effects)

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

◆ getElements()

::mlir::Operation::operand_range llzk::array::CreateArrayOp::getElements ( )
inline

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

◆ getElementsMutable()

mlir::MutableOperandRange llzk::array::CreateArrayOp::getElementsMutable ( )

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

◆ getInherentAttr()

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

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

◆ getMapOperands()

::mlir::OperandRangeRange llzk::array::CreateArrayOp::getMapOperands ( )
inline

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

◆ getMapOperandsMutable()

mlir::MutableOperandRangeRange llzk::array::CreateArrayOp::getMapOperandsMutable ( )

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

◆ getMapOpGroupSizes()

llvm::ArrayRef< int32_t > llzk::array::CreateArrayOp::getMapOpGroupSizes ( )

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

◆ getMapOpGroupSizesAttr()

::mlir::DenseI32ArrayAttr llzk::array::CreateArrayOp::getMapOpGroupSizesAttr ( )
inline

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

◆ getMapOpGroupSizesAttrName() [1/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getMapOpGroupSizesAttrName ( )
inline

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

◆ getMapOpGroupSizesAttrName() [2/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getMapOpGroupSizesAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getNumDimsPerMap()

llvm::ArrayRef< int32_t > llzk::array::CreateArrayOp::getNumDimsPerMap ( )

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

◆ getNumDimsPerMapAttr()

::mlir::DenseI32ArrayAttr llzk::array::CreateArrayOp::getNumDimsPerMapAttr ( )
inline

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

◆ getNumDimsPerMapAttrName() [1/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getNumDimsPerMapAttrName ( )
inline

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

◆ getNumDimsPerMapAttrName() [2/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getNumDimsPerMapAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getODSOperandIndexAndLength()

std::pair< unsigned, unsigned > llzk::array::CreateArrayOp::getODSOperandIndexAndLength ( unsigned index)

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

◆ getODSOperands()

::mlir::Operation::operand_range llzk::array::CreateArrayOp::getODSOperands ( unsigned index)
inline

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

◆ getODSResultIndexAndLength()

std::pair< unsigned, unsigned > llzk::array::CreateArrayOp::getODSResultIndexAndLength ( unsigned index)
inline

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

◆ getODSResults()

::mlir::Operation::result_range llzk::array::CreateArrayOp::getODSResults ( unsigned index)
inline

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

◆ getOperandSegmentSizesAttrName() [1/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getOperandSegmentSizesAttrName ( )
inline

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

◆ getOperandSegmentSizesAttrName() [2/2]

::mlir::StringAttr llzk::array::CreateArrayOp::getOperandSegmentSizesAttrName ( ::mlir::OperationName name)
inlinestatic

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

◆ getOperationName()

constexpr ::llvm::StringLiteral llzk::array::CreateArrayOp::getOperationName ( )
inlinestatic

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

◆ getPromotableSlots()

SmallVector< MemorySlot > llzk::array::CreateArrayOp::getPromotableSlots ( )

Required by PromotableAllocationOpInterface / mem2reg pass.

Definition at line 176 of file Ops.cpp.

◆ getPropertiesAsAttr()

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

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

◆ getResult()

::mlir::TypedValue<::llzk::array::ArrayType > llzk::array::CreateArrayOp::getResult ( )
inline

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

◆ handleBlockArgument()

void llzk::array::CreateArrayOp::handleBlockArgument ( const ::mlir::MemorySlot & slot,
::mlir::BlockArgument argument,
::mlir::OpBuilder & builder )

Required by PromotableAllocationOpInterface / mem2reg pass.

Definition at line 195 of file Ops.cpp.

◆ handleDestructuringComplete()

std::optional< DestructurableAllocationOpInterface > llzk::array::CreateArrayOp::handleDestructuringComplete ( const ::mlir::DestructurableMemorySlot & slot,
::mlir::OpBuilder & builder )

Required by DestructurableAllocationOpInterface / SROA pass.

Definition at line 167 of file Ops.cpp.

◆ handlePromotionComplete()

std::optional< PromotableAllocationOpInterface > llzk::array::CreateArrayOp::handlePromotionComplete ( const ::mlir::MemorySlot & slot,
::mlir::Value defaultValue,
::mlir::OpBuilder & builder )

Required by PromotableAllocationOpInterface / mem2reg pass.

Definition at line 198 of file Ops.cpp.

◆ parse()

mlir::ParseResult llzk::array::CreateArrayOp::parse ( ::mlir::OpAsmParser & parser,
::mlir::OperationState & result )
static

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

◆ populateDefaultProperties()

void llzk::array::CreateArrayOp::populateDefaultProperties ( ::mlir::OperationName opName,
Properties & properties )
static

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

◆ populateInherentAttrs()

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

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

◆ print()

void llzk::array::CreateArrayOp::print ( ::mlir::OpAsmPrinter & _odsPrinter)

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

◆ readProperties()

llvm::LogicalResult llzk::array::CreateArrayOp::readProperties ( ::mlir::DialectBytecodeReader & reader,
::mlir::OperationState & state )
static

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

◆ setInherentAttr()

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

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

◆ setMapOpGroupSizes()

void llzk::array::CreateArrayOp::setMapOpGroupSizes ( ::llvm::ArrayRef< int32_t > attrValue)

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

◆ setMapOpGroupSizesAttr()

void llzk::array::CreateArrayOp::setMapOpGroupSizesAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

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

◆ setNumDimsPerMap()

void llzk::array::CreateArrayOp::setNumDimsPerMap ( ::llvm::ArrayRef< int32_t > attrValue)

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

◆ setNumDimsPerMapAttr()

void llzk::array::CreateArrayOp::setNumDimsPerMapAttr ( ::mlir::DenseI32ArrayAttr attr)
inline

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

◆ setPropertiesFromAttr()

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

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

◆ setPropertiesFromParsedAttr()

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

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

◆ verify()

LogicalResult llzk::array::CreateArrayOp::verify ( )

Definition at line 105 of file Ops.cpp.

◆ verifyInherentAttrs()

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

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

◆ verifyInvariants()

llvm::LogicalResult llzk::array::CreateArrayOp::verifyInvariants ( )

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

◆ verifyInvariantsImpl()

llvm::LogicalResult llzk::array::CreateArrayOp::verifyInvariantsImpl ( )

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

◆ verifySymbolUses()

LogicalResult llzk::array::CreateArrayOp::verifySymbolUses ( ::mlir::SymbolTableCollection & symbolTable)

Definition at line 71 of file Ops.cpp.

◆ writeProperties()

void llzk::array::CreateArrayOp::writeProperties ( ::mlir::DialectBytecodeWriter & writer)

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

Member Data Documentation

◆ odsIndex_elements

int llzk::array::CreateArrayOp::odsIndex_elements = 0
staticconstexpr

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

◆ odsIndex_mapOperands

int llzk::array::CreateArrayOp::odsIndex_mapOperands = 1
staticconstexpr

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


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