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

Public Types

using Base = UnusedDeclarationEliminationPassBase

Public Member Functions

 UnusedDeclarationEliminationPassBase ()
 UnusedDeclarationEliminationPassBase (const UnusedDeclarationEliminationPassBase &other)
UnusedDeclarationEliminationPassBaseoperator= (const UnusedDeclarationEliminationPassBase &)=delete
 UnusedDeclarationEliminationPassBase (UnusedDeclarationEliminationPassBase &&)=delete
UnusedDeclarationEliminationPassBaseoperator= (UnusedDeclarationEliminationPassBase &&)=delete
 ~UnusedDeclarationEliminationPassBase ()=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.
 UnusedDeclarationEliminationPassBase (UnusedDeclarationEliminationPassOptions 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< bool > removeStructs {*this, "remove-structs", ::llvm::cl::desc("Whether to remove unused struct definitions as well. Requires module to declare a Main component, otherwise all components will appear unused."), ::llvm::cl::init(false)}

Friends

std::unique_ptr<::mlir::Pass > createUnusedDeclarationEliminationPass ()
std::unique_ptr<::mlir::Pass > createUnusedDeclarationEliminationPass (UnusedDeclarationEliminationPassOptions options)

Detailed Description

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

Definition at line 798 of file LLZKUnusedDeclarationEliminationPass.cpp.

Member Typedef Documentation

◆ Base

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

Definition at line 800 of file LLZKUnusedDeclarationEliminationPass.cpp.

Constructor & Destructor Documentation

◆ UnusedDeclarationEliminationPassBase() [1/4]

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

Definition at line 802 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ UnusedDeclarationEliminationPassBase() [2/4]

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

Definition at line 803 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ UnusedDeclarationEliminationPassBase() [3/4]

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

◆ ~UnusedDeclarationEliminationPassBase()

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

◆ UnusedDeclarationEliminationPassBase() [4/4]

template<typename DerivedT>
llzk::impl::UnusedDeclarationEliminationPassBase< DerivedT >::UnusedDeclarationEliminationPassBase ( UnusedDeclarationEliminationPassOptions 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 855 of file LLZKUnusedDeclarationEliminationPass.cpp.

Member Function Documentation

◆ classof()

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

Support isa/dyn_cast functionality for the derived pass class.

Definition at line 824 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ clonePass()

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

A clone method to create a copy of this pass.

Definition at line 829 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getArgument()

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

Definition at line 813 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getArgumentName()

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

Returns the command-line argument attached to this pass.

Definition at line 810 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getDependentDialects()

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

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

Definition at line 834 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getDescription()

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

Definition at line 815 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getName()

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

Definition at line 821 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ getPassName()

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

Returns the derived pass name.

Definition at line 818 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ createUnusedDeclarationEliminationPass [1/2]

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

Definition at line 862 of file LLZKUnusedDeclarationEliminationPass.cpp.

◆ createUnusedDeclarationEliminationPass [2/2]

template<typename DerivedT>
std::unique_ptr<::mlir::Pass > createUnusedDeclarationEliminationPass ( UnusedDeclarationEliminationPassOptions options)
friend

Definition at line 866 of file LLZKUnusedDeclarationEliminationPass.cpp.

Member Data Documentation

◆ removeStructs

template<typename DerivedT>
::mlir::Pass::Option<bool> llzk::impl::UnusedDeclarationEliminationPassBase< DerivedT >::removeStructs {*this, "remove-structs", ::llvm::cl::desc("Whether to remove unused struct definitions as well. Requires module to declare a Main component, otherwise all components will appear unused."), ::llvm::cl::init(false)}
protected

Definition at line 859 of file LLZKUnusedDeclarationEliminationPass.cpp.


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