LLZK 2.1.1
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
llzk::impl::InlineStructsPassBase< DerivedT > Class Template Reference
Inheritance diagram for llzk::impl::InlineStructsPassBase< DerivedT >:
[legend]
Collaboration diagram for llzk::impl::InlineStructsPassBase< DerivedT >:
[legend]

Public Types

using Base = InlineStructsPassBase

Public Member Functions

 InlineStructsPassBase ()
 InlineStructsPassBase (const InlineStructsPassBase &other)
InlineStructsPassBaseoperator= (const InlineStructsPassBase &)=delete
 InlineStructsPassBase (InlineStructsPassBase &&)=delete
InlineStructsPassBaseoperator= (InlineStructsPassBase &&)=delete
 ~InlineStructsPassBase ()=default
::llvm::StringRef getArgument () const override
::llvm::StringRef getDescription () const override
::llvm::StringRef getName () const override
std::unique_ptr<::mlir::Pass > clonePass () const override
 A clone method to create a copy of this pass.
void getDependentDialects (::mlir::DialectRegistry &registry) const override
 Return the dialect that must be loaded in the context before this pass.
 InlineStructsPassBase (InlineStructsPassOptions options)
 Explicitly declare the TypeID for this class.

Static Public Member Functions

static constexpr ::llvm::StringLiteral getArgumentName ()
 Returns the command-line argument attached to this pass.
static constexpr ::llvm::StringLiteral getPassName ()
 Returns the derived pass name.
static bool classof (const ::mlir::Pass *pass)
 Support isa/dyn_cast functionality for the derived pass class.

Protected Attributes

::mlir::Pass::Option< uint64_t > maxComplexity {*this, "max-merge-complexity", ::llvm::cl::desc("Maximum allowed constraint+multiplications in merged @constrain functions"), ::llvm::cl::init(0)}

Friends

std::unique_ptr<::mlir::Pass > createInlineStructsPass ()
std::unique_ptr<::mlir::Pass > createInlineStructsPass (InlineStructsPassOptions options)

Detailed Description

template<typename DerivedT>
class llzk::impl::InlineStructsPassBase< DerivedT >

Definition at line 323 of file LLZKInlineStructsPass.cpp.

Member Typedef Documentation

◆ Base

template<typename DerivedT>
using llzk::impl::InlineStructsPassBase< DerivedT >::Base = InlineStructsPassBase

Definition at line 325 of file LLZKInlineStructsPass.cpp.

Constructor & Destructor Documentation

◆ InlineStructsPassBase() [1/4]

template<typename DerivedT>
llzk::impl::InlineStructsPassBase< DerivedT >::InlineStructsPassBase ( )
inline

Definition at line 327 of file LLZKInlineStructsPass.cpp.

◆ InlineStructsPassBase() [2/4]

template<typename DerivedT>
llzk::impl::InlineStructsPassBase< DerivedT >::InlineStructsPassBase ( const InlineStructsPassBase< DerivedT > & other)
inline

Definition at line 328 of file LLZKInlineStructsPass.cpp.

◆ InlineStructsPassBase() [3/4]

template<typename DerivedT>
llzk::impl::InlineStructsPassBase< DerivedT >::InlineStructsPassBase ( InlineStructsPassBase< DerivedT > && )
delete

◆ ~InlineStructsPassBase()

template<typename DerivedT>
llzk::impl::InlineStructsPassBase< DerivedT >::~InlineStructsPassBase ( )
default

◆ InlineStructsPassBase() [4/4]

template<typename DerivedT>
llzk::impl::InlineStructsPassBase< DerivedT >::InlineStructsPassBase ( InlineStructsPassOptions options)
inline

Explicitly declare the TypeID for this class.

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 380 of file LLZKInlineStructsPass.cpp.

Member Function Documentation

◆ classof()

template<typename DerivedT>
bool llzk::impl::InlineStructsPassBase< DerivedT >::classof ( const ::mlir::Pass * pass)
inlinestatic

Support isa/dyn_cast functionality for the derived pass class.

Definition at line 349 of file LLZKInlineStructsPass.cpp.

◆ clonePass()

template<typename DerivedT>
std::unique_ptr<::mlir::Pass > llzk::impl::InlineStructsPassBase< DerivedT >::clonePass ( ) const
inlineoverride

A clone method to create a copy of this pass.

Definition at line 354 of file LLZKInlineStructsPass.cpp.

◆ getArgument()

template<typename DerivedT>
::llvm::StringRef llzk::impl::InlineStructsPassBase< DerivedT >::getArgument ( ) const
inlineoverride

Definition at line 338 of file LLZKInlineStructsPass.cpp.

◆ getArgumentName()

template<typename DerivedT>
constexpr ::llvm::StringLiteral llzk::impl::InlineStructsPassBase< DerivedT >::getArgumentName ( )
inlinestatic

Returns the command-line argument attached to this pass.

Definition at line 335 of file LLZKInlineStructsPass.cpp.

◆ getDependentDialects()

template<typename DerivedT>
void llzk::impl::InlineStructsPassBase< DerivedT >::getDependentDialects ( ::mlir::DialectRegistry & registry) const
inlineoverride

Return the dialect that must be loaded in the context before this pass.

Definition at line 359 of file LLZKInlineStructsPass.cpp.

◆ getDescription()

template<typename DerivedT>
::llvm::StringRef llzk::impl::InlineStructsPassBase< DerivedT >::getDescription ( ) const
inlineoverride

Definition at line 340 of file LLZKInlineStructsPass.cpp.

◆ getName()

template<typename DerivedT>
::llvm::StringRef llzk::impl::InlineStructsPassBase< DerivedT >::getName ( ) const
inlineoverride

Definition at line 346 of file LLZKInlineStructsPass.cpp.

◆ getPassName()

template<typename DerivedT>
constexpr ::llvm::StringLiteral llzk::impl::InlineStructsPassBase< DerivedT >::getPassName ( )
inlinestatic

Returns the derived pass name.

Definition at line 343 of file LLZKInlineStructsPass.cpp.

◆ operator=() [1/2]

template<typename DerivedT>
InlineStructsPassBase & llzk::impl::InlineStructsPassBase< DerivedT >::operator= ( const InlineStructsPassBase< DerivedT > & )
delete

◆ operator=() [2/2]

template<typename DerivedT>
InlineStructsPassBase & llzk::impl::InlineStructsPassBase< DerivedT >::operator= ( InlineStructsPassBase< DerivedT > && )
delete

◆ createInlineStructsPass [1/2]

template<typename DerivedT>
std::unique_ptr<::mlir::Pass > createInlineStructsPass ( )
friend

Definition at line 387 of file LLZKInlineStructsPass.cpp.

◆ createInlineStructsPass [2/2]

template<typename DerivedT>
std::unique_ptr<::mlir::Pass > createInlineStructsPass ( InlineStructsPassOptions options)
friend

Definition at line 391 of file LLZKInlineStructsPass.cpp.

Member Data Documentation

◆ maxComplexity

template<typename DerivedT>
::mlir::Pass::Option<uint64_t> llzk::impl::InlineStructsPassBase< DerivedT >::maxComplexity {*this, "max-merge-complexity", ::llvm::cl::desc("Maximum allowed constraint+multiplications in merged @constrain functions"), ::llvm::cl::init(0)}
protected

Definition at line 384 of file LLZKInlineStructsPass.cpp.


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