LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
llzk::StructInliningFlatteningOptions Struct Reference

Typed nested options for the flattening pass when used inside the full struct-inlining and full poly-lowering pipelines. More...

#include <LLZKTransformationPassPipelines.h>

Inheritance diagram for llzk::StructInliningFlatteningOptions:
[legend]
Collaboration diagram for llzk::StructInliningFlatteningOptions:
[legend]

Public Member Functions

polymorphic::FlatteningPassOptions createPassOptions () const

Public Attributes

Option< unsigned > iterationLimit
Option< polymorphic::FlatteningCleanupModecleanupMode

Detailed Description

Typed nested options for the flattening pass when used inside the full struct-inlining and full poly-lowering pipelines.

Definition at line 24 of file LLZKTransformationPassPipelines.h.

Member Function Documentation

◆ createPassOptions()

polymorphic::FlatteningPassOptions llzk::StructInliningFlatteningOptions::createPassOptions ( ) const
inline

Definition at line 43 of file LLZKTransformationPassPipelines.h.

Member Data Documentation

◆ cleanupMode

Option<polymorphic::FlatteningCleanupMode> llzk::StructInliningFlatteningOptions::cleanupMode
Initial value:
{
*this, "cleanup",
llvm::cl::desc(
"cleanup mode for flattening in this pipeline. When left as `unspecified`, these "
"pipelines use `main-as-root`. Overriding this is not recommended because the later "
"`llzk-inline-structs` pass may crash if parameterized templates survive flattening."
),
}

Definition at line 33 of file LLZKTransformationPassPipelines.h.

◆ iterationLimit

Option<unsigned> llzk::StructInliningFlatteningOptions::iterationLimit
Initial value:
{
*this, "max-iter", llvm::cl::desc("maximum number of flattening iterations before giving up"),
llvm::cl::init(1000)
}

Definition at line 28 of file LLZKTransformationPassPipelines.h.


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