LLZK 2.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
llzk::polymorphic Namespace Reference

Namespaces

namespace  detail
namespace  impl

Classes

class  ApplyMapOp
class  ApplyMapOpAdaptor
class  ApplyMapOpGenericAdaptor
class  ConstReadOp
class  ConstReadOpAdaptor
class  ConstReadOpGenericAdaptor
struct  FlatteningPassOptions
class  PolymorphicDialect
class  TemplateExprOp
class  TemplateExprOpAdaptor
class  TemplateExprOpGenericAdaptor
class  TemplateOp
class  TemplateOpAdaptor
class  TemplateOpGenericAdaptor
class  TemplateParamOp
class  TemplateParamOpAdaptor
class  TemplateParamOpGenericAdaptor
class  TemplateSymbolBindingOpInterface
class  TypeVarType
class  UnifiableCastOp
class  UnifiableCastOpAdaptor
class  UnifiableCastOpGenericAdaptor
class  YieldOp
class  YieldOpAdaptor
class  YieldOpGenericAdaptor

Concepts

concept  TemplateSymbolBindingOp

Enumerations

enum class  StructCleanupMode : uint32_t { Disabled = 0 , Preimage = 1 , ConcreteAsRoot = 2 , MainAsRoot = 3 }

Functions

bool isInTemplate (Operation *op)
FailureOr< TemplateOpverifyInTemplate (Operation *op)
::llvm::StringRef stringifyStructCleanupMode (StructCleanupMode val)
::std::optional< StructCleanupModesymbolizeStructCleanupMode (::llvm::StringRef str)
::std::optional< StructCleanupModesymbolizeStructCleanupMode (uint32_t value)
constexpr unsigned getMaxEnumValForStructCleanupMode ()
inline ::llvm::StringRef stringifyEnum (StructCleanupMode enumValue)
template<typename EnumType>
::std::optional< EnumType > symbolizeEnum (::llvm::StringRef)
template<>
inline ::std::optional< StructCleanupModesymbolizeEnum< StructCleanupMode > (::llvm::StringRef str)
bool isInTemplate (mlir::Operation *op)
 Return true iff the given Operation is nested somewhere within a TemplateOp.
mlir::FailureOr< TemplateOpverifyInTemplate (mlir::Operation *op)
 If the given Operation is nested somewhere within a TemplateOp, return a success result containing that TemplateOp.
std::unique_ptr< mlir::Pass > createEmptyTemplateRemoval ()
std::unique_ptr< mlir::Pass > createFlatteningPass ()
void registerEmptyTemplateRemovalPass ()
void registerEmptyTemplateRemovalPassPass ()
void registerFlatteningPass ()
void registerFlatteningPassPass ()
void registerTransformationPasses ()

Enumeration Type Documentation

◆ StructCleanupMode

enum class llzk::polymorphic::StructCleanupMode : uint32_t
strong
Enumerator
Disabled 
Preimage 
ConcreteAsRoot 
MainAsRoot 

Definition at line 13 of file TransformationPassEnums.h.inc.

Function Documentation

◆ createEmptyTemplateRemoval()

std::unique_ptr< Pass > llzk::polymorphic::createEmptyTemplateRemoval ( )

Definition at line 155 of file EmptyTemplateRemovalPass.cpp.

◆ createFlatteningPass()

std::unique_ptr< Pass > llzk::polymorphic::createFlatteningPass ( )

Definition at line 2532 of file FlatteningPass.cpp.

◆ getMaxEnumValForStructCleanupMode()

unsigned llzk::polymorphic::getMaxEnumValForStructCleanupMode ( )
inlineconstexpr

Definition at line 23 of file TransformationPassEnums.h.inc.

◆ isInTemplate() [1/2]

bool llzk::polymorphic::isInTemplate ( mlir::Operation * op)

Return true iff the given Operation is nested somewhere within a TemplateOp.

◆ isInTemplate() [2/2]

bool llzk::polymorphic::isInTemplate ( Operation * op)

Definition at line 32 of file Ops.cpp.

◆ registerEmptyTemplateRemovalPass()

void llzk::polymorphic::registerEmptyTemplateRemovalPass ( )
inline

Definition at line 186 of file TransformationPasses.h.

◆ registerEmptyTemplateRemovalPassPass()

void llzk::polymorphic::registerEmptyTemplateRemovalPassPass ( )
inline

Definition at line 193 of file TransformationPasses.h.

◆ registerFlatteningPass()

void llzk::polymorphic::registerFlatteningPass ( )
inline

Definition at line 203 of file TransformationPasses.h.

◆ registerFlatteningPassPass()

void llzk::polymorphic::registerFlatteningPassPass ( )
inline

Definition at line 210 of file TransformationPasses.h.

◆ registerTransformationPasses()

void llzk::polymorphic::registerTransformationPasses ( )
inline

Definition at line 220 of file TransformationPasses.h.

◆ stringifyEnum()

inline ::llvm::StringRef llzk::polymorphic::stringifyEnum ( StructCleanupMode enumValue)

Definition at line 28 of file TransformationPassEnums.h.inc.

◆ stringifyStructCleanupMode()

llvm::StringRef llzk::polymorphic::stringifyStructCleanupMode ( StructCleanupMode val)

Definition at line 12 of file TransformationPassEnums.cpp.inc.

◆ symbolizeEnum()

template<typename EnumType>
::std::optional< EnumType > llzk::polymorphic::symbolizeEnum ( ::llvm::StringRef )

◆ symbolizeEnum< StructCleanupMode >()

template<>
inline ::std::optional< StructCleanupMode > llzk::polymorphic::symbolizeEnum< StructCleanupMode > ( ::llvm::StringRef str)

Definition at line 33 of file TransformationPassEnums.h.inc.

◆ symbolizeStructCleanupMode() [1/2]

std::optional< StructCleanupMode > llzk::polymorphic::symbolizeStructCleanupMode ( ::llvm::StringRef str)

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

◆ symbolizeStructCleanupMode() [2/2]

std::optional< StructCleanupMode > llzk::polymorphic::symbolizeStructCleanupMode ( uint32_t value)

Definition at line 30 of file TransformationPassEnums.cpp.inc.

◆ verifyInTemplate() [1/2]

mlir::FailureOr< TemplateOp > llzk::polymorphic::verifyInTemplate ( mlir::Operation * op)

If the given Operation is nested somewhere within a TemplateOp, return a success result containing that TemplateOp.

Otherwise emit an error and return a failure result.

◆ verifyInTemplate() [2/2]

FailureOr< TemplateOp > llzk::polymorphic::verifyInTemplate ( Operation * op)

Definition at line 34 of file Ops.cpp.