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

Classes

struct  Trait

Public Member Functions

::mlir::FlatSymbolRefAttr getRecordNameAttr ()
 Gets the record name attribute from the pod access op.
bool isRead ()
 Return true if the op is a read, false if it's a write.
inline ::mlir::StringAttr getRecordNameAsStringAttr ()
 Gets the record name as an attribute suitable for destructuring indices.
bool canRewire (const ::mlir::DestructurableMemorySlot &slot, ::llvm::SmallPtrSetImpl<::mlir::Attribute > &usedIndices, ::mlir::SmallVectorImpl<::mlir::MemorySlot > &mustBeSafelyUsed, const ::mlir::DataLayout &dataLayout)
 Required by companion interface DestructurableAccessorOpInterface / SROA pass.
::mlir::DeletionKind rewire (const ::mlir::DestructurableMemorySlot &slot, ::llvm::DenseMap<::mlir::Attribute, ::mlir::MemorySlot > &subslots, ::mlir::OpBuilder &builder, const ::mlir::DataLayout &dataLayout)
 Required by companion interface DestructurableAccessorOpInterface / SROA pass.
 operator::llzk::pod::PodRefOpInterface () const
::mlir::TypedValue<::llzk::pod::PodTypegetPodRef ()
 Gets the SSA Value for the referenced pod.
::mlir::OpOperand & getPodRefMutable ()
 Gets the mutable operand slot holding the SSA Value for the referenced pod.
inline ::llzk::pod::PodType getPodRefType ()
 Gets the type of the referenced pod.

Detailed Description

Definition at line 112 of file OpInterfaces.h.inc.

Member Function Documentation

◆ canRewire()

bool llzk::pod::PodAccessOpInterface::canRewire ( const ::mlir::DestructurableMemorySlot & slot,
::llvm::SmallPtrSetImpl<::mlir::Attribute > & usedIndices,
::mlir::SmallVectorImpl<::mlir::MemorySlot > & mustBeSafelyUsed,
const ::mlir::DataLayout & dataLayout )

Required by companion interface DestructurableAccessorOpInterface / SROA pass.

Required by DestructurableAllocationOpInterface / SROA pass.

Definition at line 465 of file Ops.cpp.

◆ getPodRef()

mlir::TypedValue<::llzk::pod::PodType > llzk::pod::PodAccessOpInterface::getPodRef ( )

Gets the SSA Value for the referenced pod.

Definition at line 18 of file OpInterfaces.cpp.inc.

◆ getPodRefMutable()

mlir::OpOperand & llzk::pod::PodAccessOpInterface::getPodRefMutable ( )

Gets the mutable operand slot holding the SSA Value for the referenced pod.

Definition at line 22 of file OpInterfaces.cpp.inc.

◆ getPodRefType()

inline ::llzk::pod::PodType llzk::pod::PodAccessOpInterface::getPodRefType ( )
inline

Gets the type of the referenced pod.

Definition at line 152 of file OpInterfaces.h.inc.

◆ getRecordNameAsStringAttr()

inline ::mlir::StringAttr llzk::pod::PodAccessOpInterface::getRecordNameAsStringAttr ( )
inline

Gets the record name as an attribute suitable for destructuring indices.

Definition at line 123 of file OpInterfaces.h.inc.

◆ getRecordNameAttr()

mlir::FlatSymbolRefAttr llzk::pod::PodAccessOpInterface::getRecordNameAttr ( )

Gets the record name attribute from the pod access op.

Definition at line 10 of file OpInterfaces.cpp.inc.

◆ isRead()

bool llzk::pod::PodAccessOpInterface::isRead ( )

Return true if the op is a read, false if it's a write.

Definition at line 14 of file OpInterfaces.cpp.inc.

◆ operator::llzk::pod::PodRefOpInterface()

llzk::pod::PodAccessOpInterface::operator::llzk::pod::PodRefOpInterface ( ) const
inline

Definition at line 141 of file OpInterfaces.h.inc.

◆ rewire()

DeletionKind llzk::pod::PodAccessOpInterface::rewire ( const ::mlir::DestructurableMemorySlot & slot,
::llvm::DenseMap<::mlir::Attribute, ::mlir::MemorySlot > & subslots,
::mlir::OpBuilder & builder,
const ::mlir::DataLayout & dataLayout )

Required by companion interface DestructurableAccessorOpInterface / SROA pass.

Required by DestructurableAllocationOpInterface / SROA pass.

Definition at line 483 of file Ops.cpp.


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