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

Public Types

using Base = SymbolUseGraphPrinterPassBase

Public Member Functions

 SymbolUseGraphPrinterPassBase ()
 SymbolUseGraphPrinterPassBase (const SymbolUseGraphPrinterPassBase &other)
SymbolUseGraphPrinterPassBaseoperator= (const SymbolUseGraphPrinterPassBase &)=delete
 SymbolUseGraphPrinterPassBase (SymbolUseGraphPrinterPassBase &&)=delete
SymbolUseGraphPrinterPassBaseoperator= (SymbolUseGraphPrinterPassBase &&)=delete
 ~SymbolUseGraphPrinterPassBase ()=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.
 SymbolUseGraphPrinterPassBase (SymbolUseGraphPrinterPassOptions 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<::llzk::OutputStreamoutputStream
::mlir::Pass::Option< bool > saveDotGraph {*this, "saveDot", ::llvm::cl::desc("Whether to dump the graph to DOT format."), ::llvm::cl::init(false)}

Detailed Description

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

Definition at line 439 of file SymbolUseGraphPass.cpp.

Member Typedef Documentation

◆ Base

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

Definition at line 441 of file SymbolUseGraphPass.cpp.

Constructor & Destructor Documentation

◆ SymbolUseGraphPrinterPassBase() [1/4]

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

Definition at line 443 of file SymbolUseGraphPass.cpp.

◆ SymbolUseGraphPrinterPassBase() [2/4]

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

Definition at line 444 of file SymbolUseGraphPass.cpp.

◆ SymbolUseGraphPrinterPassBase() [3/4]

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

◆ ~SymbolUseGraphPrinterPassBase()

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

◆ SymbolUseGraphPrinterPassBase() [4/4]

template<typename DerivedT>
llzk::impl::SymbolUseGraphPrinterPassBase< DerivedT >::SymbolUseGraphPrinterPassBase ( SymbolUseGraphPrinterPassOptions 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 496 of file SymbolUseGraphPass.cpp.

Member Function Documentation

◆ classof()

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

Support isa/dyn_cast functionality for the derived pass class.

Definition at line 465 of file SymbolUseGraphPass.cpp.

◆ clonePass()

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

A clone method to create a copy of this pass.

Definition at line 470 of file SymbolUseGraphPass.cpp.

◆ getArgument()

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

Definition at line 454 of file SymbolUseGraphPass.cpp.

◆ getArgumentName()

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

Returns the command-line argument attached to this pass.

Definition at line 451 of file SymbolUseGraphPass.cpp.

◆ getDependentDialects()

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

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

Definition at line 475 of file SymbolUseGraphPass.cpp.

◆ getDescription()

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

Definition at line 456 of file SymbolUseGraphPass.cpp.

◆ getName()

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

Definition at line 462 of file SymbolUseGraphPass.cpp.

◆ getPassName()

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

Returns the derived pass name.

Definition at line 459 of file SymbolUseGraphPass.cpp.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

Member Data Documentation

◆ outputStream

template<typename DerivedT>
::mlir::Pass::Option<::llzk::OutputStream> llzk::impl::SymbolUseGraphPrinterPassBase< DerivedT >::outputStream
protected
Initial value:
{*this, "stream", ::llvm::cl::desc("Specifies the stream to which the pass prints."), ::llvm::cl::init(::llzk::OutputStream::Errs), ::llvm::cl::values(
"Print pass output to 'llvm::outs()'"),
"Print pass output to 'llvm::errs()'"),
"Print pass output to 'llvm::dbgs()'")
)}
::llvm::StringRef stringifyOutputStream(OutputStream val)

Definition at line 501 of file SymbolUseGraphPass.cpp.

◆ saveDotGraph

template<typename DerivedT>
::mlir::Pass::Option<bool> llzk::impl::SymbolUseGraphPrinterPassBase< DerivedT >::saveDotGraph {*this, "saveDot", ::llvm::cl::desc("Whether to dump the graph to DOT format."), ::llvm::cl::init(false)}
protected

Definition at line 509 of file SymbolUseGraphPass.cpp.


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