LLZK 0.1.0
Veridise's ZK Language IR
|
Classes | |
struct | Trait |
Public Member Functions | |
::mlir::Operation::operand_range | getIndices () |
Gets the operand range containing the index for each dimension. | |
::mlir::MutableOperandRange | getIndicesMutable () |
Gets the mutable operand range containing the index for each dimension. | |
bool | isRead () |
Return true if the op is a read, false if it's a write. | |
inline ::mlir::ArrayRef<::mlir::Attribute > | getValueOperandDims () |
Compute the dimensions of the read/write value. | |
::mlir::ArrayAttr | indexOperandsToAttributeArray () |
Returns the multi-dimensional indices of the array access as an Attribute array or a null pointer if a valid index cannot be computed for any dimension. | |
bool | canRewire (const ::mlir::DestructurableMemorySlot &slot, ::llvm::SmallPtrSetImpl<::mlir::Attribute > &usedIndices, ::mlir::SmallVectorImpl<::mlir::MemorySlot > &mustBeSafelyUsed) |
Required by companion interface DestructurableAccessorOpInterface / SROA pass. | |
::mlir::DeletionKind | rewire (const ::mlir::DestructurableMemorySlot &slot, ::llvm::DenseMap<::mlir::Attribute, ::mlir::MemorySlot > &subslots, ::mlir::RewriterBase &rewriter) |
Required by companion interface DestructurableAccessorOpInterface / SROA pass. | |
operator::llzk::array::ArrayRefOpInterface () const | |
::mlir::TypedValue<::llzk::array::ArrayType > | getArrRef () |
Gets the SSA Value for the referenced array. | |
::mlir::OpOperand & | getArrRefMutable () |
Gets the mutable operand slot holding the SSA Value for the referenced array. | |
inline ::llzk::array::ArrayType | getArrRefType () |
Gets the type of the referenced array. | |
Definition at line 113 of file OpInterfaces.h.inc.
bool llzk::array::ArrayAccessOpInterface::canRewire | ( | const ::mlir::DestructurableMemorySlot & | slot, |
::llvm::SmallPtrSetImpl<::mlir::Attribute > & | usedIndices, | ||
::mlir::SmallVectorImpl<::mlir::MemorySlot > & | mustBeSafelyUsed ) |
mlir::TypedValue<::llzk::array::ArrayType > llzk::array::ArrayAccessOpInterface::getArrRef | ( | ) |
Gets the SSA Value for the referenced array.
Definition at line 22 of file OpInterfaces.cpp.inc.
mlir::OpOperand & llzk::array::ArrayAccessOpInterface::getArrRefMutable | ( | ) |
Gets the mutable operand slot holding the SSA Value for the referenced array.
Definition at line 26 of file OpInterfaces.cpp.inc.
|
inline |
Gets the type of the referenced array.
Definition at line 160 of file OpInterfaces.h.inc.
mlir::Operation::operand_range llzk::array::ArrayAccessOpInterface::getIndices | ( | ) |
Gets the operand range containing the index for each dimension.
Definition at line 10 of file OpInterfaces.cpp.inc.
mlir::MutableOperandRange llzk::array::ArrayAccessOpInterface::getIndicesMutable | ( | ) |
Gets the mutable operand range containing the index for each dimension.
Definition at line 14 of file OpInterfaces.cpp.inc.
|
inline |
Compute the dimensions of the read/write value.
Removing the number of indices provided from the front dimensions of the base array type gives the dimensions/shape of that value.
Definition at line 128 of file OpInterfaces.h.inc.
ArrayAttr llzk::array::ArrayAccessOpInterface::indexOperandsToAttributeArray | ( | ) |
bool llzk::array::ArrayAccessOpInterface::isRead | ( | ) |
Return true
if the op is a read, false
if it's a write.
Definition at line 18 of file OpInterfaces.cpp.inc.
|
inline |
Definition at line 149 of file OpInterfaces.h.inc.
DeletionKind llzk::array::ArrayAccessOpInterface::rewire | ( | const ::mlir::DestructurableMemorySlot & | slot, |
::llvm::DenseMap<::mlir::Attribute, ::mlir::MemorySlot > & | subslots, | ||
::mlir::RewriterBase & | rewriter ) |