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

Classes

class  ApplyMapOpGenericAdaptorBase
class  ConstReadOpGenericAdaptorBase
class  EmptyLegalityCheckCallback
class  LegalityCheckCallback
class  TemplateExprOpGenericAdaptorBase
class  TemplateOpGenericAdaptorBase
class  TemplateParamOpGenericAdaptorBase
struct  TemplateSymbolBindingOpInterfaceInterfaceTraits
struct  TemplateSymbolBindingOpInterfaceTrait
struct  TypeVarTypeStorage
class  UnifiableCastOpGenericAdaptorBase
class  YieldOpGenericAdaptorBase

Functions

mlir::ConversionTarget newBaseTarget (mlir::MLIRContext *ctx)
 Return a new ConversionTarget allowing all LLZK-required dialects.
template<typename... AdditionalOpClasses, typename... AdditionalChecks>
mlir::ConversionTarget newConverterDefinedTarget (mlir::TypeConverter &tyConv, mlir::MLIRContext *ctx, AdditionalChecks &&...checks)
 Return a new ConversionTarget allowing all LLZK-required dialects and defining Op legality based on the given TypeConverter for Ops listed in both members of OpClassesWithStructTypes and in AdditionalOpClasses.
template<typename... AdditionalOpClasses, typename... AdditionalChecks>
mlir::ConversionTarget newConverterDefinedTargetWithCallback (mlir::TypeConverter &tyConv, mlir::MLIRContext *ctx, LegalityCheckCallback &cb, AdditionalChecks &&...checks)
 Return a new ConversionTarget allowing all LLZK-required dialects and defining Op legality based on the given TypeConverter for Ops listed in both members of OpClassesWithStructTypes and in AdditionalOpClasses.

Function Documentation

◆ newBaseTarget()

mlir::ConversionTarget llzk::polymorphic::detail::newBaseTarget ( mlir::MLIRContext * ctx)

Return a new ConversionTarget allowing all LLZK-required dialects.

Definition at line 25 of file SharedImpl.cpp.

◆ newConverterDefinedTarget()

template<typename... AdditionalOpClasses, typename... AdditionalChecks>
mlir::ConversionTarget llzk::polymorphic::detail::newConverterDefinedTarget ( mlir::TypeConverter & tyConv,
mlir::MLIRContext * ctx,
AdditionalChecks &&... checks )

Return a new ConversionTarget allowing all LLZK-required dialects and defining Op legality based on the given TypeConverter for Ops listed in both members of OpClassesWithStructTypes and in AdditionalOpClasses.

Additional legality checks can be included for certain ops that will run along with the default check. For an op to be considered legal all checks (default plus additional checks if any) must return true.

Definition at line 81 of file SharedImpl.h.

◆ newConverterDefinedTargetWithCallback()

template<typename... AdditionalOpClasses, typename... AdditionalChecks>
mlir::ConversionTarget llzk::polymorphic::detail::newConverterDefinedTargetWithCallback ( mlir::TypeConverter & tyConv,
mlir::MLIRContext * ctx,
LegalityCheckCallback & cb,
AdditionalChecks &&... checks )

Return a new ConversionTarget allowing all LLZK-required dialects and defining Op legality based on the given TypeConverter for Ops listed in both members of OpClassesWithStructTypes and in AdditionalOpClasses.

Additional legality checks can be included for certain ops that will run along with the default check. For an op to be considered legal all checks (default plus additional checks if any) must return true.

Definition at line 97 of file SharedImpl.h.